예제 #1
0
        public override void Write(XlsStream stream)
        {
            MsoBseRec rec = new MsoBseRec();

            rec.tag = 0x00FF;
            if (!isDummy)
            {
                rec.winType  = Picture.PictureType;
                rec.macType  = rec.winType;
                rec.size     = Convert.ToUInt32(Picture.Size + 25);
                rec.refCount = Convert.ToUInt32(Picture.RefCount);
                rec.Dummy    = 0x02E2;
                fInstance    = Convert.ToUInt16(rec.winType);
            }
            WriteMsoHeader(XlsConsts.MsoBse, Convert.ToUInt32(Picture.Size + XlsConsts.BLIP_Extra + DataSize + MsoHeader.Size()), stream);
            stream.Write(new Byte[1] {
                Convert.ToByte(rec.winType)
            }, 0, 1);
            stream.Write(new Byte[1] {
                Convert.ToByte(rec.macType)
            }, 0, 1);
            stream.Write(rec.checksum, 0, 16);
            stream.Write(rec.tag);
            stream.Write(rec.size);
            stream.Write(rec.refCount);
            stream.Write(rec.delOffset);
            stream.Write(rec.isTexture);
            stream.Write(rec.nameLen);
            stream.Write(rec.Dummy);
        }
예제 #2
0
 protected override int GetSize()
 {
     return(MsoBseRec.Size() + MsoHeader.Size());
 }