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);
            }
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
 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()
     });
 }
Exemplo n.º 4
0
 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
        }
Exemplo n.º 6
0
 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);
 }