geomerative 1.1.0-java → 2.0.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 (116) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/.mvn/extensions.xml +1 -1
  4. data/.mvn/wrapper/maven-wrapper.properties +1 -1
  5. data/CHANGELOG.md +3 -0
  6. data/COPYING.md +1 -1
  7. data/README.md +0 -1
  8. data/Rakefile +2 -15
  9. data/docs/_includes/header.html +6 -6
  10. data/docs/_includes/icon-github.svg +3 -1
  11. data/docs/_includes/icon-twitter.svg +3 -1
  12. data/docs/_includes/navigation.html +18 -18
  13. data/docs/_sass/_base.scss +79 -79
  14. data/docs/_sass/_layout.scss +137 -137
  15. data/docs/_sass/_syntax-highlighting.scss +64 -64
  16. data/docs/index.html +18 -18
  17. data/examples/data/bot1.svg +1 -1
  18. data/examples/data/lion.svg +156 -156
  19. data/examples/data/ruby.svg +1 -1
  20. data/geomerative.gemspec +1 -2
  21. data/lib/geomerative/version.rb +1 -1
  22. data/mvnw +234 -0
  23. data/mvnw.cmd +145 -0
  24. data/pom.rb +14 -13
  25. data/pom.xml +14 -13
  26. data/src/geomerative/FastRClip.java +2149 -2156
  27. data/src/geomerative/RClip.java +2237 -2539
  28. data/src/geomerative/RClosest.java +33 -31
  29. data/src/geomerative/RCommand.java +1750 -1758
  30. data/src/geomerative/RContour.java +290 -292
  31. data/src/geomerative/RFont.java +277 -246
  32. data/src/geomerative/RG.java +722 -727
  33. data/src/geomerative/RGeomElem.java +967 -960
  34. data/src/geomerative/RGroup.java +508 -467
  35. data/src/geomerative/RMatrix.java +304 -289
  36. data/src/geomerative/RMesh.java +241 -229
  37. data/src/geomerative/RPath.java +924 -925
  38. data/src/geomerative/RPoint.java +391 -391
  39. data/src/geomerative/RPolygon.java +998 -988
  40. data/src/geomerative/RRectangle.java +43 -52
  41. data/src/geomerative/RSVG.java +480 -516
  42. data/src/geomerative/RShape.java +1767 -1777
  43. data/src/geomerative/RStrip.java +173 -176
  44. data/src/geomerative/RStyle.java +197 -194
  45. data/src/org/apache/batik/svggen/font/Font.java +141 -142
  46. data/src/org/apache/batik/svggen/font/Glyph.java +102 -71
  47. data/src/org/apache/batik/svggen/font/Point.java +12 -12
  48. data/src/org/apache/batik/svggen/font/RandomAccessFileEmulator.java +14 -12
  49. data/src/org/apache/batik/svggen/font/table/ClassDef.java +12 -12
  50. data/src/org/apache/batik/svggen/font/table/ClassDefFormat1.java +27 -24
  51. data/src/org/apache/batik/svggen/font/table/ClassDefFormat2.java +20 -17
  52. data/src/org/apache/batik/svggen/font/table/CmapFormat.java +43 -43
  53. data/src/org/apache/batik/svggen/font/table/CmapFormat0.java +33 -26
  54. data/src/org/apache/batik/svggen/font/table/CmapFormat2.java +25 -20
  55. data/src/org/apache/batik/svggen/font/table/CmapFormat4.java +106 -96
  56. data/src/org/apache/batik/svggen/font/table/CmapFormat6.java +36 -32
  57. data/src/org/apache/batik/svggen/font/table/CmapIndexEntry.java +69 -49
  58. data/src/org/apache/batik/svggen/font/table/CmapTable.java +50 -50
  59. data/src/org/apache/batik/svggen/font/table/Coverage.java +19 -19
  60. data/src/org/apache/batik/svggen/font/table/CoverageFormat1.java +30 -27
  61. data/src/org/apache/batik/svggen/font/table/CoverageFormat2.java +26 -24
  62. data/src/org/apache/batik/svggen/font/table/CvtTable.java +16 -16
  63. data/src/org/apache/batik/svggen/font/table/Device.java +32 -32
  64. data/src/org/apache/batik/svggen/font/table/DirectoryEntry.java +39 -39
  65. data/src/org/apache/batik/svggen/font/table/Feature.java +26 -23
  66. data/src/org/apache/batik/svggen/font/table/FeatureList.java +37 -35
  67. data/src/org/apache/batik/svggen/font/table/FeatureRecord.java +22 -22
  68. data/src/org/apache/batik/svggen/font/table/FeatureTags.java +4 -3
  69. data/src/org/apache/batik/svggen/font/table/FpgmTable.java +9 -9
  70. data/src/org/apache/batik/svggen/font/table/GlyfCompositeComp.java +134 -132
  71. data/src/org/apache/batik/svggen/font/table/GlyfCompositeDescript.java +123 -122
  72. data/src/org/apache/batik/svggen/font/table/GlyfDescript.java +44 -44
  73. data/src/org/apache/batik/svggen/font/table/GlyfSimpleDescript.java +110 -109
  74. data/src/org/apache/batik/svggen/font/table/GlyfTable.java +46 -46
  75. data/src/org/apache/batik/svggen/font/table/GlyphDescription.java +25 -13
  76. data/src/org/apache/batik/svggen/font/table/GposTable.java +26 -23
  77. data/src/org/apache/batik/svggen/font/table/GsubTable.java +85 -82
  78. data/src/org/apache/batik/svggen/font/table/HeadTable.java +131 -131
  79. data/src/org/apache/batik/svggen/font/table/HheaTable.java +80 -80
  80. data/src/org/apache/batik/svggen/font/table/HmtxTable.java +50 -49
  81. data/src/org/apache/batik/svggen/font/table/KernSubtable.java +29 -27
  82. data/src/org/apache/batik/svggen/font/table/KernSubtableFormat0.java +35 -32
  83. data/src/org/apache/batik/svggen/font/table/KernSubtableFormat2.java +28 -26
  84. data/src/org/apache/batik/svggen/font/table/KernTable.java +36 -31
  85. data/src/org/apache/batik/svggen/font/table/KerningPair.java +27 -23
  86. data/src/org/apache/batik/svggen/font/table/LangSys.java +28 -26
  87. data/src/org/apache/batik/svggen/font/table/LangSysRecord.java +22 -22
  88. data/src/org/apache/batik/svggen/font/table/Ligature.java +24 -24
  89. data/src/org/apache/batik/svggen/font/table/LigatureSet.java +24 -24
  90. data/src/org/apache/batik/svggen/font/table/LigatureSubst.java +9 -9
  91. data/src/org/apache/batik/svggen/font/table/LigatureSubstFormat1.java +30 -30
  92. data/src/org/apache/batik/svggen/font/table/LocaTable.java +37 -37
  93. data/src/org/apache/batik/svggen/font/table/Lookup.java +41 -40
  94. data/src/org/apache/batik/svggen/font/table/LookupList.java +34 -34
  95. data/src/org/apache/batik/svggen/font/table/LookupSubtableFactory.java +7 -5
  96. data/src/org/apache/batik/svggen/font/table/MaxpTable.java +96 -96
  97. data/src/org/apache/batik/svggen/font/table/NameRecord.java +64 -65
  98. data/src/org/apache/batik/svggen/font/table/NameTable.java +33 -33
  99. data/src/org/apache/batik/svggen/font/table/Os2Table.java +196 -196
  100. data/src/org/apache/batik/svggen/font/table/Panose.java +14 -12
  101. data/src/org/apache/batik/svggen/font/table/PostTable.java +338 -338
  102. data/src/org/apache/batik/svggen/font/table/PrepTable.java +9 -9
  103. data/src/org/apache/batik/svggen/font/table/Program.java +15 -15
  104. data/src/org/apache/batik/svggen/font/table/RangeRecord.java +26 -25
  105. data/src/org/apache/batik/svggen/font/table/Script.java +38 -38
  106. data/src/org/apache/batik/svggen/font/table/ScriptList.java +42 -42
  107. data/src/org/apache/batik/svggen/font/table/ScriptRecord.java +22 -22
  108. data/src/org/apache/batik/svggen/font/table/ScriptTags.java +2 -1
  109. data/src/org/apache/batik/svggen/font/table/SingleSubst.java +15 -16
  110. data/src/org/apache/batik/svggen/font/table/SingleSubstFormat1.java +33 -33
  111. data/src/org/apache/batik/svggen/font/table/SingleSubstFormat2.java +32 -32
  112. data/src/org/apache/batik/svggen/font/table/Table.java +171 -170
  113. data/src/org/apache/batik/svggen/font/table/TableDirectory.java +55 -55
  114. data/src/org/apache/batik/svggen/font/table/TableFactory.java +92 -93
  115. metadata +10 -11
  116. data/.travis.yml +0 -9
@@ -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
  }
@@ -19,7 +19,7 @@ package org.apache.batik.svggen.font.table;
19
19
 
20
20
  import java.io.ByteArrayInputStream;
21
21
  import java.io.IOException;
22
- import org.apache.batik.svggen.font.*;
22
+ import org.apache.batik.svggen.font.RandomAccessFileEmulator;
23
23
 
24
24
  /**
25
25
  * @version $Id: LocaTable.java,v 1.4 2004/08/18 07:15:21 vhardy Exp $
@@ -27,46 +27,46 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class LocaTable implements Table {
29
29
 
30
- private byte[] buf = null;
31
- private int[] offsets = null;
32
- private short factor = 0;
30
+ private byte[] buf = null;
31
+ private int[] offsets = null;
32
+ private short factor = 0;
33
33
 
34
- protected LocaTable(DirectoryEntry de, RandomAccessFileEmulator raf) throws IOException {
35
- raf.seek(de.getOffset());
36
- buf = new byte[de.getLength()];
37
- raf.read(buf);
38
- }
34
+ protected LocaTable(DirectoryEntry de, RandomAccessFileEmulator raf) throws IOException {
35
+ raf.seek(de.getOffset());
36
+ buf = new byte[de.getLength()];
37
+ raf.read(buf);
38
+ }
39
39
 
40
- public void init(int numGlyphs, boolean shortEntries) {
41
- if (buf == null) {
42
- return;
43
- }
44
- offsets = new int[numGlyphs + 1];
45
- ByteArrayInputStream bais = new ByteArrayInputStream(buf);
46
- if (shortEntries) {
47
- factor = 2;
48
- for (int i = 0; i <= numGlyphs; i++) {
49
- offsets[i] = (bais.read()<<8 | bais.read());
50
- }
51
- } else {
52
- factor = 1;
53
- for (int i = 0; i <= numGlyphs; i++) {
54
- offsets[i] = (bais.read()<<24 | bais.read()<<16 |
55
- bais.read()<< 8 | bais.read());
56
- }
57
- }
58
- buf = null;
40
+ public void init(int numGlyphs, boolean shortEntries) {
41
+ if (buf == null) {
42
+ return;
59
43
  }
60
-
61
- public int getOffset(int i) {
62
- if (offsets == null) {
63
- return 0;
64
- }
65
- return offsets[i] * factor;
44
+ offsets = new int[numGlyphs + 1];
45
+ ByteArrayInputStream bais = new ByteArrayInputStream(buf);
46
+ if (shortEntries) {
47
+ factor = 2;
48
+ for (int i = 0; i <= numGlyphs; i++) {
49
+ offsets[i] = (bais.read() << 8 | bais.read());
50
+ }
51
+ } else {
52
+ factor = 1;
53
+ for (int i = 0; i <= numGlyphs; i++) {
54
+ offsets[i] = (bais.read() << 24 | bais.read() << 16
55
+ | bais.read() << 8 | bais.read());
56
+ }
66
57
  }
58
+ buf = null;
59
+ }
67
60
 
68
- @Override
69
- public int getType() {
70
- return loca;
61
+ public int getOffset(int i) {
62
+ if (offsets == null) {
63
+ return 0;
71
64
  }
65
+ return offsets[i] * factor;
66
+ }
67
+
68
+ @Override
69
+ public int getType() {
70
+ return LOCA;
71
+ }
72
72
  }
@@ -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,51 +27,52 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class Lookup {
29
29
 
30
- // LookupFlag bit enumeration
31
- public static final int IGNORE_BASE_GLYPHS = 0x0002;
32
- public static final int IGNORE_BASE_LIGATURES = 0x0004;
33
- public static final int IGNORE_BASE_MARKS = 0x0008;
34
- public static final int MARK_ATTACHMENT_TYPE = 0xFF00;
30
+ // LookupFlag bit enumeration
31
+ public static final int IGNORE_BASE_GLYPHS = 0x0002;
32
+ public static final int IGNORE_BASE_LIGATURES = 0x0004;
33
+ public static final int IGNORE_BASE_MARKS = 0x0008;
34
+ public static final int MARK_ATTACHMENT_TYPE = 0xFF00;
35
35
 
36
- private final int type;
37
- private final int flag;
38
- private final int subTableCount;
39
- private final int[] subTableOffsets;
40
- private final LookupSubtable[] subTables;
36
+ private final int type;
37
+ private final int flag;
38
+ private final int subTableCount;
39
+ private final int[] subTableOffsets;
40
+ private final LookupSubtable[] subTables;
41
41
 
42
- /** Creates new Lookup
43
- * @param factory
44
- * @param raf
45
- * @param offset
46
- * @throws java.io.IOException
47
- */
48
- public Lookup(LookupSubtableFactory factory, RandomAccessFileEmulator raf, int offset)
42
+ /**
43
+ * Creates new Lookup
44
+ *
45
+ * @param factory
46
+ * @param raf
47
+ * @param offset
48
+ * @throws java.io.IOException
49
+ */
50
+ public Lookup(LookupSubtableFactory factory, RandomAccessFileEmulator raf, int offset)
49
51
  throws IOException {
50
- raf.seek(offset);
51
- type = raf.readUnsignedShort();
52
- flag = raf.readUnsignedShort();
53
- subTableCount = raf.readUnsignedShort();
54
- subTableOffsets = new int[subTableCount];
55
- subTables = new LookupSubtable[subTableCount];
56
- for (int i = 0; i < subTableCount; i++) {
57
- subTableOffsets[i] = raf.readUnsignedShort();
58
- }
59
- for (int i = 0; i < subTableCount; i++) {
60
- subTables[i] = factory.read(type, raf, offset + subTableOffsets[i]);
61
- }
52
+ raf.seek(offset);
53
+ type = raf.readUnsignedShort();
54
+ flag = raf.readUnsignedShort();
55
+ subTableCount = raf.readUnsignedShort();
56
+ subTableOffsets = new int[subTableCount];
57
+ subTables = new LookupSubtable[subTableCount];
58
+ for (int i = 0; i < subTableCount; i++) {
59
+ subTableOffsets[i] = raf.readUnsignedShort();
62
60
  }
63
-
64
- public int getType() {
65
- return type;
61
+ for (int i = 0; i < subTableCount; i++) {
62
+ subTables[i] = factory.read(type, raf, offset + subTableOffsets[i]);
66
63
  }
64
+ }
67
65
 
68
- public int getSubtableCount() {
69
- return subTableCount;
70
- }
66
+ public int getType() {
67
+ return type;
68
+ }
71
69
 
72
- public LookupSubtable getSubtable(int i) {
73
- return subTables[i];
74
- }
70
+ public int getSubtableCount() {
71
+ return subTableCount;
72
+ }
75
73
 
76
- }
74
+ public LookupSubtable getSubtable(int i) {
75
+ return subTables[i];
76
+ }
77
77
 
78
+ }
@@ -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,42 +27,42 @@ import org.apache.batik.svggen.font.*;
27
27
  */
28
28
  public class LookupList {
29
29
 
30
- private final int lookupCount;
31
- private final int[] lookupOffsets;
32
- private final Lookup[] lookups;
30
+ private final int lookupCount;
31
+ private final int[] lookupOffsets;
32
+ private final Lookup[] lookups;
33
33
 
34
- /**
35
- * Creates new LookupList
36
- *
37
- * @param raf
38
- * @param offset
39
- * @param factory
40
- * @throws java.io.IOException
41
- */
42
- public LookupList(RandomAccessFileEmulator raf, int offset, LookupSubtableFactory factory)
43
- throws IOException {
44
- raf.seek(offset);
45
- lookupCount = raf.readUnsignedShort();
46
- lookupOffsets = new int[lookupCount];
47
- lookups = new Lookup[lookupCount];
48
- for (int i = 0; i < lookupCount; i++) {
49
- lookupOffsets[i] = raf.readUnsignedShort();
50
- }
51
- for (int i = 0; i < lookupCount; i++) {
52
- lookups[i] = new Lookup(factory, raf, offset + lookupOffsets[i]);
53
- }
34
+ /**
35
+ * Creates new LookupList
36
+ *
37
+ * @param raf
38
+ * @param offset
39
+ * @param factory
40
+ * @throws java.io.IOException
41
+ */
42
+ public LookupList(RandomAccessFileEmulator raf, int offset, LookupSubtableFactory factory)
43
+ throws IOException {
44
+ raf.seek(offset);
45
+ lookupCount = raf.readUnsignedShort();
46
+ lookupOffsets = new int[lookupCount];
47
+ lookups = new Lookup[lookupCount];
48
+ for (int i = 0; i < lookupCount; i++) {
49
+ lookupOffsets[i] = raf.readUnsignedShort();
54
50
  }
51
+ for (int i = 0; i < lookupCount; i++) {
52
+ lookups[i] = new Lookup(factory, raf, offset + lookupOffsets[i]);
53
+ }
54
+ }
55
55
 
56
- public Lookup getLookup(Feature feature, int index) {
57
- if (feature == null) {
58
- System.out.println("Feature is null!! Index is " + index + "!!");
59
- return null;
60
- }
61
- if (feature.getLookupCount() > index) {
62
- int i = feature.getLookupListIndex(index);
63
- return lookups[i];
64
- }
65
- return null;
56
+ public Lookup getLookup(Feature feature, int index) {
57
+ if (feature == null) {
58
+ System.out.println("Feature is null!! Index is " + index + "!!");
59
+ return null;
60
+ }
61
+ if (feature.getLookupCount() > index) {
62
+ int i = feature.getLookupListIndex(index);
63
+ return lookups[i];
66
64
  }
65
+ return null;
66
+ }
67
67
 
68
68
  }
@@ -14,18 +14,20 @@
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
 
17
- */
17
+ */
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
  *
25
25
  * @author <a href="mailto:david@steadystate.co.uk">David Schweinsberg</a>
26
- * @version $Id: LookupSubtableFactory.java,v 1.3 2004/08/18 07:15:21 vhardy Exp $
26
+ * @version $Id: LookupSubtableFactory.java,v 1.3 2004/08/18 07:15:21 vhardy Exp
27
+ * $
27
28
  */
28
29
  public interface LookupSubtableFactory {
29
- public LookupSubtable read(int type, RandomAccessFileEmulator raf, int offset)
30
+
31
+ public LookupSubtable read(int type, RandomAccessFileEmulator raf, int offset)
30
32
  throws IOException;
31
33
  }
@@ -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
  * @version $Id: MaxpTable.java,v 1.3 2004/08/18 07:15:21 vhardy Exp $
@@ -26,99 +26,99 @@ import org.apache.batik.svggen.font.*;
26
26
  */
27
27
  public class MaxpTable implements Table {
28
28
 
29
- private final int versionNumber;
30
- private final int numGlyphs;
31
- private final int maxPoints;
32
- private final int maxContours;
33
- private final int maxCompositePoints;
34
- private final int maxCompositeContours;
35
- private final int maxZones;
36
- private final int maxTwilightPoints;
37
- private final int maxStorage;
38
- private final int maxFunctionDefs;
39
- private final int maxInstructionDefs;
40
- private final int maxStackElements;
41
- private final int maxSizeOfInstructions;
42
- private final int maxComponentElements;
43
- private final int maxComponentDepth;
44
-
45
- protected MaxpTable(DirectoryEntry de,RandomAccessFileEmulator raf) throws IOException {
46
- raf.seek(de.getOffset());
47
- versionNumber = raf.readInt();
48
- numGlyphs = raf.readUnsignedShort();
49
- maxPoints = raf.readUnsignedShort();
50
- maxContours = raf.readUnsignedShort();
51
- maxCompositePoints = raf.readUnsignedShort();
52
- maxCompositeContours = raf.readUnsignedShort();
53
- maxZones = raf.readUnsignedShort();
54
- maxTwilightPoints = raf.readUnsignedShort();
55
- maxStorage = raf.readUnsignedShort();
56
- maxFunctionDefs = raf.readUnsignedShort();
57
- maxInstructionDefs = raf.readUnsignedShort();
58
- maxStackElements = raf.readUnsignedShort();
59
- maxSizeOfInstructions = raf.readUnsignedShort();
60
- maxComponentElements = raf.readUnsignedShort();
61
- maxComponentDepth = raf.readUnsignedShort();
62
- }
63
-
64
- public int getMaxComponentDepth() {
65
- return maxComponentDepth;
66
- }
67
-
68
- public int getMaxComponentElements() {
69
- return maxComponentElements;
70
- }
71
-
72
- public int getMaxCompositeContours() {
73
- return maxCompositeContours;
74
- }
75
-
76
- public int getMaxCompositePoints() {
77
- return maxCompositePoints;
78
- }
79
-
80
- public int getMaxContours() {
81
- return maxContours;
82
- }
83
-
84
- public int getMaxFunctionDefs() {
85
- return maxFunctionDefs;
86
- }
87
-
88
- public int getMaxInstructionDefs() {
89
- return maxInstructionDefs;
90
- }
91
-
92
- public int getMaxPoints() {
93
- return maxPoints;
94
- }
95
-
96
- public int getMaxSizeOfInstructions() {
97
- return maxSizeOfInstructions;
98
- }
99
-
100
- public int getMaxStackElements() {
101
- return maxStackElements;
102
- }
103
-
104
- public int getMaxStorage() {
105
- return maxStorage;
106
- }
107
-
108
- public int getMaxTwilightPoints() {
109
- return maxTwilightPoints;
110
- }
111
-
112
- public int getMaxZones() {
113
- return maxZones;
114
- }
115
-
116
- public int getNumGlyphs() {
117
- return numGlyphs;
118
- }
119
-
120
- @Override
121
- public int getType() {
122
- return maxp;
123
- }
29
+ private final int versionNumber;
30
+ private final int numGlyphs;
31
+ private final int maxPoints;
32
+ private final int maxContours;
33
+ private final int maxCompositePoints;
34
+ private final int maxCompositeContours;
35
+ private final int maxZones;
36
+ private final int maxTwilightPoints;
37
+ private final int maxStorage;
38
+ private final int maxFunctionDefs;
39
+ private final int maxInstructionDefs;
40
+ private final int maxStackElements;
41
+ private final int maxSizeOfInstructions;
42
+ private final int maxComponentElements;
43
+ private final int maxComponentDepth;
44
+
45
+ protected MaxpTable(DirectoryEntry de, RandomAccessFileEmulator raf) throws IOException {
46
+ raf.seek(de.getOffset());
47
+ versionNumber = raf.readInt();
48
+ numGlyphs = raf.readUnsignedShort();
49
+ maxPoints = raf.readUnsignedShort();
50
+ maxContours = raf.readUnsignedShort();
51
+ maxCompositePoints = raf.readUnsignedShort();
52
+ maxCompositeContours = raf.readUnsignedShort();
53
+ maxZones = raf.readUnsignedShort();
54
+ maxTwilightPoints = raf.readUnsignedShort();
55
+ maxStorage = raf.readUnsignedShort();
56
+ maxFunctionDefs = raf.readUnsignedShort();
57
+ maxInstructionDefs = raf.readUnsignedShort();
58
+ maxStackElements = raf.readUnsignedShort();
59
+ maxSizeOfInstructions = raf.readUnsignedShort();
60
+ maxComponentElements = raf.readUnsignedShort();
61
+ maxComponentDepth = raf.readUnsignedShort();
62
+ }
63
+
64
+ public int getMaxComponentDepth() {
65
+ return maxComponentDepth;
66
+ }
67
+
68
+ public int getMaxComponentElements() {
69
+ return maxComponentElements;
70
+ }
71
+
72
+ public int getMaxCompositeContours() {
73
+ return maxCompositeContours;
74
+ }
75
+
76
+ public int getMaxCompositePoints() {
77
+ return maxCompositePoints;
78
+ }
79
+
80
+ public int getMaxContours() {
81
+ return maxContours;
82
+ }
83
+
84
+ public int getMaxFunctionDefs() {
85
+ return maxFunctionDefs;
86
+ }
87
+
88
+ public int getMaxInstructionDefs() {
89
+ return maxInstructionDefs;
90
+ }
91
+
92
+ public int getMaxPoints() {
93
+ return maxPoints;
94
+ }
95
+
96
+ public int getMaxSizeOfInstructions() {
97
+ return maxSizeOfInstructions;
98
+ }
99
+
100
+ public int getMaxStackElements() {
101
+ return maxStackElements;
102
+ }
103
+
104
+ public int getMaxStorage() {
105
+ return maxStorage;
106
+ }
107
+
108
+ public int getMaxTwilightPoints() {
109
+ return maxTwilightPoints;
110
+ }
111
+
112
+ public int getMaxZones() {
113
+ return maxZones;
114
+ }
115
+
116
+ public int getNumGlyphs() {
117
+ return numGlyphs;
118
+ }
119
+
120
+ @Override
121
+ public int getType() {
122
+ return MAXP;
123
+ }
124
124
  }