internal ImageResource(PsdDocument document, ImageResourceId id, string name, byte[] data) { this.document = document; this.data = data; Id = id; Name = name; }
internal static ImageResource Load(BinaryReader reader) { // Read an image resource string signature = new string(reader.ReadChars(4)); if (!signature.Equals(Constants.ImageResourceSignature)) { throw new IOException("Invalid image resource."); } ImageResourceId id = (ImageResourceId)reader.ReadInt16(); string name = reader.ReadPaddedPascalString(); int dataLength = reader.ReadInt32(); // If odd, pad to make it even dataLength += dataLength % 2; byte[] data = reader.ReadBytes(dataLength); ImageResource imageResource = new ImageResource(id, name, data); return(imageResource); }
private ImageResource(ImageResourceId id, string name, byte[] data) : this(null, id, name, data) { }