コード例 #1
0
        public TypeToolTyShPH6(BinaryReverseReader r)
        {
            ushort Version = r.ReadUInt16(); //1= Photoshop 5.0

            this.Transform = new Matrix2D(r);

            ushort TextDescriptorVersion = r.ReadUInt16(); //=50. For Photoshop 6.0.

            if (TextDescriptorVersion == 50)
            {
                uint XTextDescriptorVersion = r.ReadUInt32(); //=16. For Photoshop 6.0.

                this.TxtDescriptor = new PsdDescriptor(r);

                ushort WarpVersion           = r.ReadUInt16(); //2 bytes, =1. For Photoshop 6.0.
                uint   WarpDescriptorVersion = r.ReadUInt32(); //4 bytes, =16. For Photoshop 6.0.
                var    a = (PsdTextData)TxtDescriptor.getObjects()["EngineData"];
                engine           = (object)a.getProperties();
                engineData       = (Dictionary <string, object>)engine;
                StylesheetReader = new TdTaStylesheetReader(engineData);

                //string desc = this.TxtDescriptor.getString();

                this.WarpDescriptor = new PsdDescriptor(r);           //Warp descriptor
                this.Data           = r.ReadBytes((int)r.BytesToEnd); //17 bytes???? All zeroes?
                if (Data.Length != 17 || !(Array.TrueForAll(Data, b => b == 0)))
                {
                    string s = ReadableBinary.CreateHexEditorString(Data);
                }
            }
        }
コード例 #2
0
        static private string GetPSDColor(PsdDescriptor descr)
        {
            PsdDescriptor clr = (PsdDescriptor)descr.getObjects()["Clr "];
            Dictionary <string, PsdObject> values = clr.getObjects();
            var valR = (PsdDouble)values["Rd  "];
            var valG = (PsdDouble)values["Grn "];
            var valB = (PsdDouble)values["Bl  "];

            return(Color.FromArgb((int)(ReadPSDDouble(GetByteStreamFromDouble(valR.getValue()))), (int)(ReadPSDDouble(GetByteStreamFromDouble(valG.getValue()))), (int)(ReadPSDDouble(GetByteStreamFromDouble(valB.getValue())))).Name);
        }
コード例 #3
0
        static private void GetPSDColorOffset(PsdDescriptor descr, ref long redOffset, ref long greenOffset, ref long blueOffset)
        {
            PsdDescriptor clr = (PsdDescriptor)descr.getObjects()["Clr "];
            Dictionary <string, PsdObject> values = clr.getObjects();
            var valR = (PsdDouble)values["Rd  "];
            var valG = (PsdDouble)values["Grn "];
            var valB = (PsdDouble)values["Bl  "];

            redOffset   = valR.offset;
            greenOffset = valG.offset;
            blueOffset  = valB.offset;
        }