static void SkipLine2Style(SwfStreamReader reader) { reader.ReadUInt16(); // Width reader.ReadUnsignedBits(2); // StartCapStyle var join_style = reader.ReadUnsignedBits(2); var has_fill_flag = reader.ReadBit(); reader.ReadBit(); // NoHScaleFlag reader.ReadBit(); // NoVScaleFlag reader.ReadBit(); // PixelHintingFlag reader.ReadUnsignedBits(5); // Reserved reader.ReadBit(); // NoClose reader.ReadUnsignedBits(2); // EndCapStyle if (join_style == 2) { reader.ReadFixedPoint_8_8(); // MiterLimitFactor } if (has_fill_flag) { ReadFillStyle(reader, true); // FillStyle } else { SwfColor.Read(reader, true); } }
static Filter ReadConcreteFilter(GradientBevelFilter filter, SwfStreamReader reader) { var num_colors = reader.ReadByte(); filter.GradientColors = new SwfColor[num_colors]; for (var i = 0; i < num_colors; ++i) { filter.GradientColors[i] = SwfColor.Read(reader, true); } filter.GradientRatio = new byte[num_colors]; for (var i = 0; i < num_colors; ++i) { filter.GradientRatio[i] = reader.ReadByte(); } filter.BlurX = reader.ReadFixedPoint_16_16(); filter.BlurY = reader.ReadFixedPoint_16_16(); filter.Angle = reader.ReadFixedPoint_16_16(); filter.Distance = reader.ReadFixedPoint_16_16(); filter.Strength = reader.ReadFixedPoint_8_8(); filter.InnerShadow = reader.ReadBit(); filter.Knockout = reader.ReadBit(); filter.CompositeSource = reader.ReadBit(); filter.OnTop = reader.ReadBit(); filter.Passes = reader.ReadUnsignedBits(4); return(filter); }
public static SwfLongHeader Read(SwfStreamReader reader) { return(new SwfLongHeader { ShortHeader = SwfShortHeader.Read(reader), FrameSize = SwfRect.Read(reader), FrameRate = reader.ReadFixedPoint_8_8(), FrameCount = reader.ReadUInt16() }); }
static Filter ReadConcreteFilter(GlowFilter filter, SwfStreamReader reader) { filter.GlowColor = SwfColor.Read(reader, true); filter.BlurX = reader.ReadFixedPoint_16_16(); filter.BlurY = reader.ReadFixedPoint_16_16(); filter.Strength = reader.ReadFixedPoint_8_8(); filter.InnerGlow = reader.ReadBit(); filter.Knockout = reader.ReadBit(); filter.CompositeSource = reader.ReadBit(); filter.Passes = reader.ReadUnsignedBits(5); return(filter); }
// ----------------------------- // FocalGradient // ----------------------------- static void SkipFocalGradient(SwfStreamReader reader, bool with_alpha) { reader.ReadUnsignedBits(2); // SpreadMode reader.ReadUnsignedBits(2); // InterpolationMode var count = reader.ReadUnsignedBits(4); for (var i = 0; i < count; ++i) { reader.ReadByte(); // Ratio SwfColor.Read(reader, with_alpha); } reader.ReadFixedPoint_8_8(); // FocalPoint }
static Filter ReadConcreteFilter(BevelFilter filter, SwfStreamReader reader) { filter.ShadowColor = SwfColor.Read(reader, true); filter.HighlightColor = SwfColor.Read(reader, true); filter.BlurX = reader.ReadFixedPoint_16_16(); filter.BlurY = reader.ReadFixedPoint_16_16(); filter.Angle = reader.ReadFixedPoint_16_16(); filter.Distance = reader.ReadFixedPoint_16_16(); filter.Strength = reader.ReadFixedPoint_8_8(); filter.InnerShadow = reader.ReadBit(); filter.Knockout = reader.ReadBit(); filter.CompositeSource = reader.ReadBit(); filter.OnTop = reader.ReadBit(); filter.Passes = reader.ReadUnsignedBits(4); return(filter); }