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,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
  }