本文整理汇总了C#中DDW.Swf.SwfWriter.AppendUI32方法的典型用法代码示例。如果您正苦于以下问题:C# SwfWriter.AppendUI32方法的具体用法?C# SwfWriter.AppendUI32怎么用?C# SwfWriter.AppendUI32使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DDW.Swf.SwfWriter
的用法示例。
在下文中一共展示了SwfWriter.AppendUI32方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ToSwf
public void ToSwf(SwfWriter w)
{
// write header
this.Header.ToSwf(w);
for (int i = 0; i < Tags.Count; i++)
{
//if (i == 0x2de)//w.Position >= 0x3cd20)//
//{
// i = i;
//}
if (Tags[i] is PlaceObject2Tag)
{
bool is6Plus = this.Header.Version > 5;
((PlaceObject2Tag)Tags[i]).ToSwf(w, is6Plus);
}
else
{
Tags[i].ToSwf(w);
}
}
if (Header.IsCompressed)
{
w.Zip();
}
uint len = (uint)w.Position;
w.Position = 4;
w.AppendUI32(len);
w.Position = len;
}
示例2: ToSwf
public void ToSwf(SwfWriter w)
{
w.AppendBits(0, 2); // reserved
w.AppendBit(IsSyncStop);
w.AppendBit(IsSyncNoMultiple);
w.AppendBit(HasEnvelope);
w.AppendBit(HasLoops);
w.AppendBit(HasOutPoint);
w.Align();
if (HasInPoint)
{
w.AppendUI32(InPoint);
}
if (HasOutPoint)
{
w.AppendUI32(OutPoint);
}
if (HasLoops)
{
w.AppendUI16(LoopCount);
}
if (HasEnvelope)
{
w.AppendByte((byte)LoopCount);
uint count = (uint)EnvelopeRecords.Length;
for (int i = 0; i < EnvelopeRecords.Length; i++)
{
w.AppendUI32(EnvelopeRecords[i].Pos44);
w.AppendUI16(EnvelopeRecords[i].LeftLevel);
w.AppendUI16(EnvelopeRecords[i].RightLevel);
}
}
}
示例3: ToSwf
public void ToSwf(SwfWriter w)
{
uint len = 4;
w.AppendTagIDAndLength(this.TagType, len, false);
w.AppendUI32(this.flags);
}
示例4: ToSwf
public void ToSwf(SwfWriter w, bool isSwf6Plus)
{
if ((uint)ClipEvents == 0)
{
if (isSwf6Plus)
{
w.AppendUI32(0);
}
else
{
w.AppendUI16(0);
}
}
else
{
w.AppendBits((uint)ClipEvents, 32);
uint start = (uint)w.Position;
w.AppendUI32(0); // write len after tag written
if ((ClipEvents & ClipEvents.KeyPress) > 0)
{
w.AppendByte(KeyCode);
}
ActionRecords.ToSwf(w);
uint end = (uint)w.Position;
w.Position = start;
w.AppendUI32(end - start - 4);
w.Position = end;
}
}
示例5: ToSwf
public void ToSwf(SwfWriter w)
{
uint start = (uint)w.Position;
w.AppendTagIDAndLength(this.TagType, 0, true);
w.AppendUI16(SoundId);
w.AppendBits((uint)SoundFormat, 4);
switch (SoundRate)
{
case 5512:
w.AppendBits(0, 2);
break;
case 11025:
w.AppendBits(1, 2);
break;
case 22050:
w.AppendBits(2, 2);
break;
case 44100:
w.AppendBits(3, 2);
break;
}
w.AppendBit(SoundSize == 16U);
w.AppendBit(IsStereo);
w.Align();
w.AppendUI32(SoundSampleCount);
w.AppendBytes(SoundData);
w.ResetLongTagLength(this.TagType, start);
}
示例6: ToSwf
public void ToSwf(SwfWriter w)
{
uint start = (uint)w.Position;
w.AppendTagIDAndLength(this.TagType, 0, true);
w.AppendUI16(FontId);
w.AppendBit(FontFlagsHasLayout);
w.AppendBit(FontFlagsShiftJIS);
w.AppendBit(FontFlagsSmallText);
w.AppendBit(FontFlagsANSI);
w.AppendBit(FontFlagsWideOffsets);
w.AppendBit(FontFlagsWideCodes);
w.AppendBit(FontFlagsItalic);
w.AppendBit(FontFlagsBold);
w.Align();
w.AppendByte((byte)LanguageCode);
w.AppendByte((byte)(FontName.Length + 1)); // add trailing /0
w.AppendString(FontName, (uint)FontName.Length);
w.AppendUI16(NumGlyphs);
for (int i = 0; i < this.NumGlyphs; i++)
{
if (this.FontFlagsWideOffsets)
{
w.AppendUI32(this.OffsetTable[i]);
}
else
{
w.AppendUI16(this.OffsetTable[i]);
}
}
if (this.FontFlagsWideOffsets)
{
w.AppendUI32(this.CodeTableOffset);
}
else
{
w.AppendUI16(this.CodeTableOffset);
}
for (int i = 0; i < this.NumGlyphs; i++)
{
GlyphShapeTable[i].ToSwf(w);
}
for (int i = 0; i < this.NumGlyphs; i++)
{
w.AppendUI16(this.CodeTable[i]);
}
if (this.FontFlagsHasLayout)
{
w.AppendInt16(FontAscent);
w.AppendInt16(FontDescent);
w.AppendInt16(FontLeading);
for (int i = 0; i < this.NumGlyphs; i++)
{
w.AppendInt16(this.FontAdvanceTable[i]);
}
for (int i = 0; i < this.NumGlyphs; i++)
{
this.FontBoundsTable[i].ToSwf(w);
}
w.AppendUI16(this.KerningCount);
if(this.FontFlagsWideCodes)
{
for (int i = 0; i < this.KerningCount; i++)
{
w.AppendUI16(this.FontKerningTable[i].FontKerningCode1);
w.AppendUI16(this.FontKerningTable[i].FontKerningCode2);
w.AppendInt16(this.FontKerningTable[i].FontKerningAdjustment);
}
}
else
{
for (int i = 0; i < this.KerningCount; i++)
{
w.AppendByte((byte)this.FontKerningTable[i].FontKerningCode1);
w.AppendByte((byte)this.FontKerningTable[i].FontKerningCode2);
w.AppendInt16(this.FontKerningTable[i].FontKerningAdjustment);
}
}
}
w.ResetLongTagLength(this.TagType, start, true);
}
示例7: ToSwf
public void ToSwf(SwfWriter w)
{
if (IsCompressed)
{
w.AppendByte((byte)'C');
}
else
{
w.AppendByte((byte)'F');
}
w.AppendByte((byte)'W');
w.AppendByte((byte)'S');
w.AppendByte(this.Version);
w.AppendUI32(this.FileLength);
this.FrameSize.ToSwf(w);
ushort frateWhole = (ushort)this.FrameRate;
uint frateDec = (((uint)this.FrameRate * 0x100) & 0xFF);
w.AppendUI16((uint)((frateWhole << 8) + frateDec));
w.AppendUI16(this.FrameCount);
}
示例8: ToSwf
public void ToSwf(SwfWriter w)
{
uint start = (uint)w.Position;
w.AppendTagIDAndLength(this.TagType, 0, true);
w.AppendUI16(CharacterId);
if (!HasAlphaData)
{
if (!HasOwnTable)
{
w.AppendByte(0xFF);
w.AppendByte(0xD8);
w.AppendBytes(JpegData);
w.AppendByte(0xFF);
w.AppendByte(0xD9);
}
else
{
w.AppendBytes(JpegData);
}
}
else
{
w.AppendUI32((uint)JpegData.Length);
w.AppendBytes(JpegData);
w.AppendBytes(CompressedAlphaData);
}
w.ResetLongTagLength(this.TagType, start, true);
}