geomerative 0.4.3-java → 2.1.0-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +2 -0
  3. data/.mvn/extensions.xml +1 -1
  4. data/.mvn/wrapper/maven-wrapper.properties +1 -1
  5. data/CHANGELOG.md +19 -1
  6. data/COPYING.md +1 -1
  7. data/README.md +2 -2
  8. data/Rakefile +2 -15
  9. data/docs/_config.yml +8 -0
  10. data/docs/_includes/head.html +7 -6
  11. data/docs/_includes/header.html +6 -6
  12. data/docs/_includes/icon-github.svg +3 -1
  13. data/docs/_includes/icon-twitter.svg +3 -1
  14. data/docs/_includes/navigation.html +24 -0
  15. data/docs/_sass/_base.scss +79 -79
  16. data/docs/_sass/_layout.scss +137 -137
  17. data/docs/_sass/_syntax-highlighting.scss +64 -64
  18. data/docs/index.html +18 -18
  19. data/examples/README.md +1 -1
  20. data/examples/data/bot1.svg +1 -1
  21. data/examples/data/lion.svg +156 -156
  22. data/examples/data/ruby.svg +1 -1
  23. data/examples/jruby_merge.rb +1 -1
  24. data/examples/{f_agent.rb → library/f_agent/f_agent.rb} +0 -0
  25. data/examples/{font_agent.rb → library/font_agent/font_agent.rb} +2 -1
  26. data/examples/text_on_geomerative_path.rb +3 -2
  27. data/examples/typo_deform.rb +2 -2
  28. data/examples/typo_extra_bright.rb +1 -1
  29. data/geomerative.gemspec +3 -6
  30. data/lib/geomerative/version.rb +1 -1
  31. data/lib/geomerative.jar +0 -0
  32. data/lib/geomerative.rb +10 -10
  33. data/mvnw +234 -0
  34. data/mvnw.cmd +145 -0
  35. data/pom.rb +14 -16
  36. data/pom.xml +13 -19
  37. data/src/geomerative/FastRClip.java +2050 -2334
  38. data/src/geomerative/RClip.java +2237 -2539
  39. data/src/geomerative/RClosest.java +33 -31
  40. data/src/geomerative/RCommand.java +1750 -1758
  41. data/src/geomerative/RContour.java +290 -292
  42. data/src/geomerative/RFont.java +277 -246
  43. data/src/geomerative/RG.java +722 -727
  44. data/src/geomerative/RGeomElem.java +967 -962
  45. data/src/geomerative/RGroup.java +508 -467
  46. data/src/geomerative/RMatrix.java +304 -289
  47. data/src/geomerative/RMesh.java +241 -229
  48. data/src/geomerative/RPath.java +924 -926
  49. data/src/geomerative/RPoint.java +391 -391
  50. data/src/geomerative/RPolygon.java +1017 -1013
  51. data/src/geomerative/RRectangle.java +43 -52
  52. data/src/geomerative/RSVG.java +480 -516
  53. data/src/geomerative/RShape.java +1767 -1777
  54. data/src/geomerative/RStrip.java +173 -176
  55. data/src/geomerative/RStyle.java +197 -194
  56. data/src/module-info.java +4 -0
  57. data/src/org/apache/batik/svggen/font/Font.java +141 -142
  58. data/src/org/apache/batik/svggen/font/Glyph.java +102 -71
  59. data/src/org/apache/batik/svggen/font/Point.java +12 -12
  60. data/src/org/apache/batik/svggen/font/RandomAccessFileEmulator.java +14 -12
  61. data/src/org/apache/batik/svggen/font/table/ClassDef.java +12 -12
  62. data/src/org/apache/batik/svggen/font/table/ClassDefFormat1.java +27 -24
  63. data/src/org/apache/batik/svggen/font/table/ClassDefFormat2.java +20 -17
  64. data/src/org/apache/batik/svggen/font/table/CmapFormat.java +43 -43
  65. data/src/org/apache/batik/svggen/font/table/CmapFormat0.java +33 -26
  66. data/src/org/apache/batik/svggen/font/table/CmapFormat2.java +25 -20
  67. data/src/org/apache/batik/svggen/font/table/CmapFormat4.java +106 -96
  68. data/src/org/apache/batik/svggen/font/table/CmapFormat6.java +36 -32
  69. data/src/org/apache/batik/svggen/font/table/CmapIndexEntry.java +69 -49
  70. data/src/org/apache/batik/svggen/font/table/CmapTable.java +50 -50
  71. data/src/org/apache/batik/svggen/font/table/Coverage.java +19 -19
  72. data/src/org/apache/batik/svggen/font/table/CoverageFormat1.java +30 -27
  73. data/src/org/apache/batik/svggen/font/table/CoverageFormat2.java +26 -24
  74. data/src/org/apache/batik/svggen/font/table/CvtTable.java +16 -16
  75. data/src/org/apache/batik/svggen/font/table/Device.java +32 -32
  76. data/src/org/apache/batik/svggen/font/table/DirectoryEntry.java +39 -39
  77. data/src/org/apache/batik/svggen/font/table/Feature.java +26 -23
  78. data/src/org/apache/batik/svggen/font/table/FeatureList.java +37 -35
  79. data/src/org/apache/batik/svggen/font/table/FeatureRecord.java +22 -22
  80. data/src/org/apache/batik/svggen/font/table/FeatureTags.java +4 -3
  81. data/src/org/apache/batik/svggen/font/table/FpgmTable.java +9 -9
  82. data/src/org/apache/batik/svggen/font/table/GlyfCompositeComp.java +134 -132
  83. data/src/org/apache/batik/svggen/font/table/GlyfCompositeDescript.java +123 -122
  84. data/src/org/apache/batik/svggen/font/table/GlyfDescript.java +44 -44
  85. data/src/org/apache/batik/svggen/font/table/GlyfSimpleDescript.java +110 -109
  86. data/src/org/apache/batik/svggen/font/table/GlyfTable.java +46 -46
  87. data/src/org/apache/batik/svggen/font/table/GlyphDescription.java +25 -13
  88. data/src/org/apache/batik/svggen/font/table/GposTable.java +26 -23
  89. data/src/org/apache/batik/svggen/font/table/GsubTable.java +85 -82
  90. data/src/org/apache/batik/svggen/font/table/HeadTable.java +131 -131
  91. data/src/org/apache/batik/svggen/font/table/HheaTable.java +80 -80
  92. data/src/org/apache/batik/svggen/font/table/HmtxTable.java +50 -49
  93. data/src/org/apache/batik/svggen/font/table/KernSubtable.java +29 -27
  94. data/src/org/apache/batik/svggen/font/table/KernSubtableFormat0.java +35 -32
  95. data/src/org/apache/batik/svggen/font/table/KernSubtableFormat2.java +28 -26
  96. data/src/org/apache/batik/svggen/font/table/KernTable.java +36 -31
  97. data/src/org/apache/batik/svggen/font/table/KerningPair.java +27 -23
  98. data/src/org/apache/batik/svggen/font/table/LangSys.java +28 -26
  99. data/src/org/apache/batik/svggen/font/table/LangSysRecord.java +22 -22
  100. data/src/org/apache/batik/svggen/font/table/Ligature.java +24 -24
  101. data/src/org/apache/batik/svggen/font/table/LigatureSet.java +24 -24
  102. data/src/org/apache/batik/svggen/font/table/LigatureSubst.java +9 -9
  103. data/src/org/apache/batik/svggen/font/table/LigatureSubstFormat1.java +30 -30
  104. data/src/org/apache/batik/svggen/font/table/LocaTable.java +37 -37
  105. data/src/org/apache/batik/svggen/font/table/Lookup.java +41 -40
  106. data/src/org/apache/batik/svggen/font/table/LookupList.java +34 -34
  107. data/src/org/apache/batik/svggen/font/table/LookupSubtableFactory.java +7 -5
  108. data/src/org/apache/batik/svggen/font/table/MaxpTable.java +96 -96
  109. data/src/org/apache/batik/svggen/font/table/NameRecord.java +64 -65
  110. data/src/org/apache/batik/svggen/font/table/NameTable.java +33 -33
  111. data/src/org/apache/batik/svggen/font/table/Os2Table.java +196 -196
  112. data/src/org/apache/batik/svggen/font/table/Panose.java +14 -12
  113. data/src/org/apache/batik/svggen/font/table/PostTable.java +338 -338
  114. data/src/org/apache/batik/svggen/font/table/PrepTable.java +9 -9
  115. data/src/org/apache/batik/svggen/font/table/Program.java +15 -15
  116. data/src/org/apache/batik/svggen/font/table/RangeRecord.java +26 -25
  117. data/src/org/apache/batik/svggen/font/table/Script.java +38 -38
  118. data/src/org/apache/batik/svggen/font/table/ScriptList.java +42 -42
  119. data/src/org/apache/batik/svggen/font/table/ScriptRecord.java +22 -22
  120. data/src/org/apache/batik/svggen/font/table/ScriptTags.java +2 -1
  121. data/src/org/apache/batik/svggen/font/table/SingleSubst.java +15 -16
  122. data/src/org/apache/batik/svggen/font/table/SingleSubstFormat1.java +33 -33
  123. data/src/org/apache/batik/svggen/font/table/SingleSubstFormat2.java +32 -32
  124. data/src/org/apache/batik/svggen/font/table/Table.java +171 -170
  125. data/src/org/apache/batik/svggen/font/table/TableDirectory.java +55 -55
  126. data/src/org/apache/batik/svggen/font/table/TableFactory.java +92 -93
  127. metadata +18 -19
  128. data/.travis.yml +0 -10
  129. data/calculate_torsional_angle.rb +0 -17
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -26,40 +26,43 @@ import org.apache.batik.svggen.font.*;
26
26
  * @version $Id: KernSubtableFormat0.java,v 1.3 2004/08/18 07:15:21 vhardy Exp $
27
27
  */
28
28
  public class KernSubtableFormat0 extends KernSubtable {
29
-
30
- private final int nPairs;
31
- private final int searchRange;
32
- private final int entrySelector;
33
- private final int rangeShift;
34
- private final KerningPair[] kerningPairs;
35
29
 
36
- /** Creates new KernSubtableFormat0
37
- * @param raf
38
- * @throws java.io.IOException */
39
- protected KernSubtableFormat0(RandomAccessFileEmulator raf) throws IOException {
40
- nPairs = raf.readUnsignedShort();
41
- searchRange = raf.readUnsignedShort();
42
- entrySelector = raf.readUnsignedShort();
43
- rangeShift = raf.readUnsignedShort();
44
- kerningPairs = new KerningPair[nPairs];
45
- for (int i = 0; i < nPairs; i++) {
46
- kerningPairs[i] = new KerningPair(raf);
47
- }
48
- }
30
+ private final int nPairs;
31
+ private final int searchRange;
32
+ private final int entrySelector;
33
+ private final int rangeShift;
34
+ private final KerningPair[] kerningPairs;
49
35
 
50
- @Override
51
- public int getKerningPairCount() {
52
- return nPairs;
36
+ /**
37
+ * Creates new KernSubtableFormat0
38
+ *
39
+ * @param raf
40
+ * @throws java.io.IOException
41
+ */
42
+ protected KernSubtableFormat0(RandomAccessFileEmulator raf) throws IOException {
43
+ nPairs = raf.readUnsignedShort();
44
+ searchRange = raf.readUnsignedShort();
45
+ entrySelector = raf.readUnsignedShort();
46
+ rangeShift = raf.readUnsignedShort();
47
+ kerningPairs = new KerningPair[nPairs];
48
+ for (int i = 0; i < nPairs; i++) {
49
+ kerningPairs[i] = new KerningPair(raf);
53
50
  }
51
+ }
54
52
 
55
- /**
56
- *
57
- * @param i
58
- * @return
59
- */
60
- @Override
61
- public KerningPair getKerningPair(int i) {
62
- return kerningPairs[i];
63
- }
53
+ @Override
54
+ public int getKerningPairCount() {
55
+ return nPairs;
56
+ }
57
+
58
+ /**
59
+ *
60
+ * @param i
61
+ * @return
62
+ */
63
+ @Override
64
+ public KerningPair getKerningPair(int i) {
65
+ return kerningPairs[i];
66
+ }
64
67
 
65
68
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,30 +27,32 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class KernSubtableFormat2 extends KernSubtable {
29
29
 
30
- private final int rowWidth;
31
- private final int leftClassTable;
32
- private final int rightClassTable;
33
- private final int array;
34
-
35
- /** Creates new KernSubtableFormat2
36
- * @param raf
37
- * @throws java.io.IOException
38
- */
39
- protected KernSubtableFormat2(RandomAccessFileEmulator raf) throws IOException {
40
- rowWidth = raf.readUnsignedShort();
41
- leftClassTable = raf.readUnsignedShort();
42
- rightClassTable = raf.readUnsignedShort();
43
- array = raf.readUnsignedShort();
44
- }
45
-
46
- @Override
47
- public int getKerningPairCount() {
48
- return 0;
49
- }
50
-
51
- @Override
52
- public KerningPair getKerningPair(int i) {
53
- return null;
54
- }
30
+ private final int rowWidth;
31
+ private final int leftClassTable;
32
+ private final int rightClassTable;
33
+ private final int array;
34
+
35
+ /**
36
+ * Creates new KernSubtableFormat2
37
+ *
38
+ * @param raf
39
+ * @throws java.io.IOException
40
+ */
41
+ protected KernSubtableFormat2(RandomAccessFileEmulator raf) throws IOException {
42
+ rowWidth = raf.readUnsignedShort();
43
+ leftClassTable = raf.readUnsignedShort();
44
+ rightClassTable = raf.readUnsignedShort();
45
+ array = raf.readUnsignedShort();
46
+ }
47
+
48
+ @Override
49
+ public int getKerningPairCount() {
50
+ return 0;
51
+ }
52
+
53
+ @Override
54
+ public KerningPair getKerningPair(int i) {
55
+ return null;
56
+ }
55
57
 
56
58
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -26,39 +26,44 @@ import org.apache.batik.svggen.font.*;
26
26
  * @version $Id: KernTable.java,v 1.3 2004/08/18 07:15:21 vhardy Exp $
27
27
  */
28
28
  public class KernTable implements Table {
29
-
30
- private final int version;
31
- private final int nTables;
32
- private final KernSubtable[] tables;
33
29
 
34
- /** Creates new KernTable
35
- * @param de
36
- * @param raf
37
- * @throws java.io.IOException */
38
- protected KernTable(DirectoryEntry de, RandomAccessFileEmulator raf) throws IOException {
39
- raf.seek(de.getOffset());
40
- version = raf.readUnsignedShort();
41
- nTables = raf.readUnsignedShort();
42
- tables = new KernSubtable[nTables];
43
- for (int i = 0; i < nTables; i++) {
44
- tables[i] = KernSubtable.read(raf);
45
- }
46
- }
30
+ private final int version;
31
+ private final int nTables;
32
+ private final KernSubtable[] tables;
47
33
 
48
- public int getSubtableCount() {
49
- return nTables;
50
- }
51
-
52
- public KernSubtable getSubtable(int i) {
53
- return tables[i];
34
+ /**
35
+ * Creates new KernTable
36
+ *
37
+ * @param de
38
+ * @param raf
39
+ * @throws java.io.IOException
40
+ */
41
+ protected KernTable(DirectoryEntry de, RandomAccessFileEmulator raf) throws IOException {
42
+ raf.seek(de.getOffset());
43
+ version = raf.readUnsignedShort();
44
+ nTables = raf.readUnsignedShort();
45
+ tables = new KernSubtable[nTables];
46
+ for (int i = 0; i < nTables; i++) {
47
+ tables[i] = KernSubtable.read(raf);
54
48
  }
49
+ }
55
50
 
56
- /** Get the table type, as a table directory value.
57
- * @return The table type
58
- */
59
- @Override
60
- public int getType() {
61
- return kern;
62
- }
51
+ public int getSubtableCount() {
52
+ return nTables;
53
+ }
54
+
55
+ public KernSubtable getSubtable(int i) {
56
+ return tables[i];
57
+ }
58
+
59
+ /**
60
+ * Get the table type, as a table directory value.
61
+ *
62
+ * @return The table type
63
+ */
64
+ @Override
65
+ public int getType() {
66
+ return KERN;
67
+ }
63
68
 
64
69
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,27 +27,31 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class KerningPair {
29
29
 
30
- private int left;
31
- private int right;
32
- private short value;
33
-
34
- /** Creates new KerningPair */
35
- protected KerningPair(RandomAccessFileEmulator raf) throws IOException {
36
- left = raf.readUnsignedShort();
37
- right = raf.readUnsignedShort();
38
- value = raf.readShort();
39
- }
40
-
41
- public int getLeft() {
42
- return left;
43
- }
44
-
45
- public int getRight() {
46
- return right;
47
- }
48
-
49
- public short getValue() {
50
- return value;
51
- }
30
+ private final int left;
31
+ private final int right;
32
+ private final short value;
33
+
34
+ /**
35
+ * Creates new KerningPair
36
+ * @param raf
37
+ * @throws java.io.IOException
38
+ */
39
+ protected KerningPair(RandomAccessFileEmulator raf) throws IOException {
40
+ left = raf.readUnsignedShort();
41
+ right = raf.readUnsignedShort();
42
+ value = raf.readShort();
43
+ }
44
+
45
+ public int getLeft() {
46
+ return left;
47
+ }
48
+
49
+ public int getRight() {
50
+ return right;
51
+ }
52
+
53
+ public short getValue() {
54
+ return value;
55
+ }
52
56
 
53
57
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,32 +27,34 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class LangSys {
29
29
 
30
- private final int lookupOrder;
31
- private final int reqFeatureIndex;
32
- private final int featureCount;
33
- private final int[] featureIndex;
34
-
35
- /** Creates new LangSys
36
- * @param raf
37
- * @throws java.io.IOException */
38
- protected LangSys(RandomAccessFileEmulator raf) throws IOException {
39
- lookupOrder = raf.readUnsignedShort();
40
- reqFeatureIndex = raf.readUnsignedShort();
41
- featureCount = raf.readUnsignedShort();
42
- featureIndex = new int[featureCount];
43
- for (int i = 0; i < featureCount; i++) {
44
- featureIndex[i] = raf.readUnsignedShort();
45
- }
30
+ private final int lookupOrder;
31
+ private final int reqFeatureIndex;
32
+ private final int featureCount;
33
+ private final int[] featureIndex;
34
+
35
+ /**
36
+ * Creates new LangSys
37
+ *
38
+ * @param raf
39
+ * @throws java.io.IOException
40
+ */
41
+ protected LangSys(RandomAccessFileEmulator raf) throws IOException {
42
+ lookupOrder = raf.readUnsignedShort();
43
+ reqFeatureIndex = raf.readUnsignedShort();
44
+ featureCount = raf.readUnsignedShort();
45
+ featureIndex = new int[featureCount];
46
+ for (int i = 0; i < featureCount; i++) {
47
+ featureIndex[i] = raf.readUnsignedShort();
46
48
  }
47
-
48
- protected boolean isFeatureIndexed(int n) {
49
- for (int i = 0; i < featureCount; i++) {
50
- if (featureIndex[i] == n) {
51
- return true;
52
- }
53
- }
54
- return false;
49
+ }
50
+
51
+ protected boolean isFeatureIndexed(int n) {
52
+ for (int i = 0; i < featureCount; i++) {
53
+ if (featureIndex[i] == n) {
54
+ return true;
55
+ }
55
56
  }
57
+ return false;
58
+ }
56
59
 
57
60
  }
58
-
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,26 +27,26 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class LangSysRecord {
29
29
 
30
- private final int tag;
31
- private final int offset;
32
-
33
- /**
34
- * Creates new LangSysRecord
35
- *
36
- * @param raf
37
- * @throws java.io.IOException
38
- */
39
- public LangSysRecord(RandomAccessFileEmulator raf) throws IOException {
40
- tag = raf.readInt();
41
- offset = raf.readUnsignedShort();
42
- }
43
-
44
- public int getTag() {
45
- return tag;
46
- }
47
-
48
- public int getOffset() {
49
- return offset;
50
- }
30
+ private final int tag;
31
+ private final int offset;
32
+
33
+ /**
34
+ * Creates new LangSysRecord
35
+ *
36
+ * @param raf
37
+ * @throws java.io.IOException
38
+ */
39
+ public LangSysRecord(RandomAccessFileEmulator raf) throws IOException {
40
+ tag = raf.readInt();
41
+ offset = raf.readUnsignedShort();
42
+ }
43
+
44
+ public int getTag() {
45
+ return tag;
46
+ }
47
+
48
+ public int getOffset() {
49
+ return offset;
50
+ }
51
51
 
52
52
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,31 +27,31 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class Ligature {
29
29
 
30
- private final int ligGlyph;
31
- private final int compCount;
32
- private final int[] components;
33
-
34
- /**
35
- * Creates new Ligature
36
- *
37
- * @param raf
38
- * @throws java.io.IOException
39
- */
40
- public Ligature(RandomAccessFileEmulator raf) throws IOException {
41
- ligGlyph = raf.readUnsignedShort();
42
- compCount = raf.readUnsignedShort();
43
- components = new int[compCount - 1];
44
- for (int i = 0; i < compCount - 1; i++) {
45
- components[i] = raf.readUnsignedShort();
46
- }
30
+ private final int ligGlyph;
31
+ private final int compCount;
32
+ private final int[] components;
33
+
34
+ /**
35
+ * Creates new Ligature
36
+ *
37
+ * @param raf
38
+ * @throws java.io.IOException
39
+ */
40
+ public Ligature(RandomAccessFileEmulator raf) throws IOException {
41
+ ligGlyph = raf.readUnsignedShort();
42
+ compCount = raf.readUnsignedShort();
43
+ components = new int[compCount - 1];
44
+ for (int i = 0; i < compCount - 1; i++) {
45
+ components[i] = raf.readUnsignedShort();
47
46
  }
47
+ }
48
48
 
49
- public int getGlyphCount() {
50
- return compCount;
51
- }
49
+ public int getGlyphCount() {
50
+ return compCount;
51
+ }
52
52
 
53
- public int getGlyphId(int i) {
54
- return (i == 0) ? ligGlyph : components[i - 1];
55
- }
53
+ public int getGlyphId(int i) {
54
+ return (i == 0) ? ligGlyph : components[i - 1];
55
+ }
56
56
 
57
57
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,29 +27,29 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class LigatureSet {
29
29
 
30
- private final int ligatureCount;
31
- private final int[] ligatureOffsets;
32
- private final Ligature[] ligatures;
33
-
34
- /**
35
- * Creates new LigatureSet
36
- *
37
- * @param raf
38
- * @param offset
39
- * @throws java.io.IOException
40
- */
41
- public LigatureSet(RandomAccessFileEmulator raf, int offset) throws IOException {
42
- raf.seek(offset);
43
- ligatureCount = raf.readUnsignedShort();
44
- ligatureOffsets = new int[ligatureCount];
45
- ligatures = new Ligature[ligatureCount];
46
- for (int i = 0; i < ligatureCount; i++) {
47
- ligatureOffsets[i] = raf.readUnsignedShort();
48
- }
49
- for (int i = 0; i < ligatureCount; i++) {
50
- raf.seek(offset + ligatureOffsets[i]);
51
- ligatures[i] = new Ligature(raf);
52
- }
30
+ private final int ligatureCount;
31
+ private final int[] ligatureOffsets;
32
+ private final Ligature[] ligatures;
33
+
34
+ /**
35
+ * Creates new LigatureSet
36
+ *
37
+ * @param raf
38
+ * @param offset
39
+ * @throws java.io.IOException
40
+ */
41
+ public LigatureSet(RandomAccessFileEmulator raf, int offset) throws IOException {
42
+ raf.seek(offset);
43
+ ligatureCount = raf.readUnsignedShort();
44
+ ligatureOffsets = new int[ligatureCount];
45
+ ligatures = new Ligature[ligatureCount];
46
+ for (int i = 0; i < ligatureCount; i++) {
47
+ ligatureOffsets[i] = raf.readUnsignedShort();
53
48
  }
49
+ for (int i = 0; i < ligatureCount; i++) {
50
+ raf.seek(offset + ligatureOffsets[i]);
51
+ ligatures[i] = new Ligature(raf);
52
+ }
53
+ }
54
54
 
55
55
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -27,14 +27,14 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public abstract class LigatureSubst extends LookupSubtable {
29
29
 
30
- public static LigatureSubst read(RandomAccessFileEmulator raf, int offset) throws IOException {
31
- LigatureSubst ls = null;
32
- raf.seek(offset);
33
- int format = raf.readUnsignedShort();
34
- if (format == 1) {
35
- ls = new LigatureSubstFormat1(raf, offset);
36
- }
37
- return ls;
30
+ public static LigatureSubst read(RandomAccessFileEmulator raf, int offset) throws IOException {
31
+ LigatureSubst ls = null;
32
+ raf.seek(offset);
33
+ int format = raf.readUnsignedShort();
34
+ if (format == 1) {
35
+ ls = new LigatureSubstFormat1(raf, offset);
38
36
  }
37
+ return ls;
38
+ }
39
39
 
40
40
  }
@@ -18,7 +18,7 @@
18
18
  package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.IOException;
21
- import org.apache.batik.svggen.font.*;
21
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
22
22
 
23
23
  /**
24
24
  *
@@ -28,36 +28,36 @@ import org.apache.batik.svggen.font.*;
28
28
  */
29
29
  public class LigatureSubstFormat1 extends LigatureSubst {
30
30
 
31
- private final int coverageOffset;
32
- private final int ligSetCount;
33
- private final int[] ligatureSetOffsets;
34
- private final Coverage coverage;
35
- private final LigatureSet[] ligatureSets;
36
-
37
- /**
38
- * Creates new LigatureSubstFormat1
39
- *
40
- * @param raf
41
- * @param offset
42
- * @throws java.io.IOException
43
- */
44
- protected LigatureSubstFormat1(RandomAccessFileEmulator raf, int offset) throws IOException {
45
- coverageOffset = raf.readUnsignedShort();
46
- ligSetCount = raf.readUnsignedShort();
47
- ligatureSetOffsets = new int[ligSetCount];
48
- ligatureSets = new LigatureSet[ligSetCount];
49
- for (int i = 0; i < ligSetCount; i++) {
50
- ligatureSetOffsets[i] = raf.readUnsignedShort();
51
- }
52
- raf.seek(offset + coverageOffset);
53
- coverage = Coverage.read(raf);
54
- for (int i = 0; i < ligSetCount; i++) {
55
- ligatureSets[i] = new LigatureSet(raf, offset + ligatureSetOffsets[i]);
56
- }
31
+ private final int coverageOffset;
32
+ private final int ligSetCount;
33
+ private final int[] ligatureSetOffsets;
34
+ private final Coverage coverage;
35
+ private final LigatureSet[] ligatureSets;
36
+
37
+ /**
38
+ * Creates new LigatureSubstFormat1
39
+ *
40
+ * @param raf
41
+ * @param offset
42
+ * @throws java.io.IOException
43
+ */
44
+ protected LigatureSubstFormat1(RandomAccessFileEmulator raf, int offset) throws IOException {
45
+ coverageOffset = raf.readUnsignedShort();
46
+ ligSetCount = raf.readUnsignedShort();
47
+ ligatureSetOffsets = new int[ligSetCount];
48
+ ligatureSets = new LigatureSet[ligSetCount];
49
+ for (int i = 0; i < ligSetCount; i++) {
50
+ ligatureSetOffsets[i] = raf.readUnsignedShort();
57
51
  }
58
-
59
- public int getFormat() {
60
- return 1;
52
+ raf.seek(offset + coverageOffset);
53
+ coverage = Coverage.read(raf);
54
+ for (int i = 0; i < ligSetCount; i++) {
55
+ ligatureSets[i] = new LigatureSet(raf, offset + ligatureSetOffsets[i]);
61
56
  }
57
+ }
58
+
59
+ public int getFormat() {
60
+ return 1;
61
+ }
62
62
 
63
63
  }