public void AddGlyph(WoutWareGlyph glyph) { if (glyph == null) { return; } this.idictionary_1.Add(glyph.Letter, glyph); }
private void method_2( WoutWareGlyph glyph, IList <Pair <WoutWareGlyph, IList <Pair <Matrix3D, int> > > > pendingGlyphs) { IShape2D path = glyph.Path; if (path.HasSegments) { List <Pair <Matrix3D, int> > pairList = new List <Pair <Matrix3D, int> >(); foreach (IShape2D shape2D in ShapeTool.SplitIntoUnbroken(path)) { bool flag = false; IList <int> intList = this.method_3(shape2D); foreach (int second in (IEnumerable <int>)intList) { Matrix3D?transformation = ShapeTool.GetTransformation(this.ilist_0[second], shape2D, 0.01); if (transformation.HasValue) { flag = true; pairList.Add(new Pair <Matrix3D, int>(transformation.Value, second)); break; } } if (!flag) { pairList.Add(new Pair <Matrix3D, int>(Matrix3D.Identity, this.ilist_0.Count)); intList.Add(this.ilist_0.Count); this.ilist_0.Add(shape2D); } } pendingGlyphs.Add(new Pair <WoutWareGlyph, IList <Pair <Matrix3D, int> > >(glyph, (IList <Pair <Matrix3D, int> >)pairList)); } else { pendingGlyphs.Add(new Pair <WoutWareGlyph, IList <Pair <Matrix3D, int> > >(glyph, (IList <Pair <Matrix3D, int> >)null)); } }
private static void smethod_13( Stream stream, WoutWareGlyph glyph, IEnumerable <Pair <Matrix3D, int> > shapeRefs) { WoutWareFont.smethod_4(stream, glyph.Letter); WoutWareFont.smethod_6(stream, glyph.Advance); if (shapeRefs != null) { foreach (Pair <Matrix3D, int> shapeRef in shapeRefs) { Matrix3D first = shapeRef.First; WoutWareFont.Enum12 enum12_1; if (WoutWareFont.smethod_12(first.M01)) { if (WoutWareFont.smethod_12(first.M10)) { WoutWareFont.Enum12 enum12_2; if (WoutWareFont.smethod_12(first.M02) && WoutWareFont.smethod_12(first.M12)) { if (WoutWareFont.smethod_12(first.M00) && WoutWareFont.smethod_12(first.M11)) { stream.WriteByte((byte)100); enum12_1 = WoutWareFont.Enum12.const_0; goto label_19; } else { stream.WriteByte((byte)115); enum12_2 = WoutWareFont.Enum12.const_2; } } else if (WoutWareFont.smethod_12(first.M00 - 1.0) && WoutWareFont.smethod_12(first.M11 - 1.0)) { stream.WriteByte((byte)116); enum12_2 = WoutWareFont.Enum12.const_1; } else { stream.WriteByte((byte)109); enum12_2 = WoutWareFont.Enum12.const_3; } switch (enum12_2) { case WoutWareFont.Enum12.const_3: WoutWareFont.smethod_2(stream, (float)first.M00); WoutWareFont.smethod_2(stream, (float)first.M02); WoutWareFont.smethod_2(stream, (float)first.M11); WoutWareFont.smethod_2(stream, (float)first.M12); goto label_19; case WoutWareFont.Enum12.const_2: WoutWareFont.smethod_2(stream, (float)first.M00); WoutWareFont.smethod_2(stream, (float)first.M11); goto label_19; case WoutWareFont.Enum12.const_1: WoutWareFont.smethod_2(stream, (float)first.M02); WoutWareFont.smethod_2(stream, (float)first.M12); goto label_19; default: goto label_19; } } else { stream.WriteByte((byte)99); enum12_1 = WoutWareFont.Enum12.const_4; } } else { stream.WriteByte((byte)99); enum12_1 = WoutWareFont.Enum12.const_4; } WoutWareFont.smethod_2(stream, (float)first.M00); WoutWareFont.smethod_2(stream, (float)first.M01); WoutWareFont.smethod_2(stream, (float)first.M02); WoutWareFont.smethod_2(stream, (float)first.M10); WoutWareFont.smethod_2(stream, (float)first.M11); WoutWareFont.smethod_2(stream, (float)first.M12); label_19: WoutWareFont.smethod_0(stream, shapeRef.Second); } } stream.WriteByte((byte)33); }