You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by vh...@apache.org on 2014/07/18 16:21:14 UTC
svn commit: r1611658 [3/6] - in
/xmlgraphics/fop/branches/FOP-2393_gradient-rendering: ./ lib/
src/java/org/apache/fop/afp/ src/java/org/apache/fop/afp/fonts/
src/java/org/apache/fop/afp/goca/ src/java/org/apache/fop/afp/ioca/
src/java/org/apache/fop/a...
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/pagination/SimplePageMaster.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/pagination/SimplePageMaster.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/pagination/SimplePageMaster.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/pagination/SimplePageMaster.java Fri Jul 18 14:21:06 2014
@@ -59,11 +59,11 @@ public class SimplePageMaster extends FO
private Map<String, Region> regions;
// used for node validation
- private boolean hasRegionBody = false;
- private boolean hasRegionBefore = false;
- private boolean hasRegionAfter = false;
- private boolean hasRegionStart = false;
- private boolean hasRegionEnd = false;
+ private boolean hasRegionBody;
+ private boolean hasRegionBefore;
+ private boolean hasRegionAfter;
+ private boolean hasRegionStart;
+ private boolean hasRegionEnd;
/**
* Base constructor
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/BorderWidthPropertyMaker.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/BorderWidthPropertyMaker.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/BorderWidthPropertyMaker.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/BorderWidthPropertyMaker.java Fri Jul 18 14:21:06 2014
@@ -29,7 +29,7 @@ import org.apache.fop.fo.expr.PropertyEx
*/
public class BorderWidthPropertyMaker extends LengthProperty.Maker {
- private int borderStyleId = 0;
+ private int borderStyleId;
/**
* Create a length property which check the value of the border-*-style
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CommonHyphenation.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CommonHyphenation.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CommonHyphenation.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CommonHyphenation.java Fri Jul 18 14:21:06 2014
@@ -43,7 +43,7 @@ public final class CommonHyphenation {
private static final PropertyCache<CommonHyphenation> CACHE =
new PropertyCache<CommonHyphenation>();
- private int hash = 0;
+ private int hash;
/** The "language" property */
public final StringProperty language;
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CompoundPropertyMaker.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CompoundPropertyMaker.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CompoundPropertyMaker.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CompoundPropertyMaker.java Fri Jul 18 14:21:06 2014
@@ -38,7 +38,7 @@ public class CompoundPropertyMaker exten
/**
* The first subproperty maker which has a setByShorthand of true.
*/
- private PropertyMaker shorthandMaker = null;
+ private PropertyMaker shorthandMaker;
/**
* Construct an instance of a CompoundPropertyMaker for the given property.
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CondLengthProperty.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CondLengthProperty.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CondLengthProperty.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/CondLengthProperty.java Fri Jul 18 14:21:06 2014
@@ -41,7 +41,7 @@ public class CondLengthProperty extends
private Property length;
private EnumProperty conditionality;
- private boolean isCached = false;
+ private boolean isCached;
private int hash = -1;
/**
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/DimensionPropertyMaker.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/DimensionPropertyMaker.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/DimensionPropertyMaker.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/DimensionPropertyMaker.java Fri Jul 18 14:21:06 2014
@@ -28,7 +28,7 @@ import org.apache.fop.fo.expr.PropertyEx
*/
public class DimensionPropertyMaker extends CorrespondingPropertyMaker {
- private int[][] extraCorresponding = null;
+ private int[][] extraCorresponding;
/**
* Instantiate a dimension property maker.
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/FontStretchPropertyMaker.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/FontStretchPropertyMaker.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/FontStretchPropertyMaker.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/FontStretchPropertyMaker.java Fri Jul 18 14:21:06 2014
@@ -32,7 +32,7 @@ public class FontStretchPropertyMaker
/* Ordered list of absolute font stretch properties so we can easily find the next /
* previous one */
- private Property[] orderedFontStretchValues = null;
+ private Property[] orderedFontStretchValues;
/**
* Create an enum property which can handle relative font stretches
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/IndentPropertyMaker.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/IndentPropertyMaker.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/IndentPropertyMaker.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/IndentPropertyMaker.java Fri Jul 18 14:21:06 2014
@@ -35,12 +35,12 @@ public class IndentPropertyMaker extends
/**
* The corresponding padding-* propIds
*/
- private int[] paddingCorresponding = null;
+ private int[] paddingCorresponding;
/**
* The corresponding border-*-width propIds
*/
- private int[] borderWidthCorresponding = null;
+ private int[] borderWidthCorresponding;
/**
* Create a start-indent or end-indent property maker.
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/KeepProperty.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/KeepProperty.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/KeepProperty.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/KeepProperty.java Fri Jul 18 14:21:06 2014
@@ -33,7 +33,7 @@ public final class KeepProperty extends
private static final PropertyCache<KeepProperty> CACHE
= new PropertyCache<KeepProperty>();
- private boolean isCachedValue = false;
+ private boolean isCachedValue;
private Property withinLine;
private Property withinColumn;
private Property withinPage;
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/LengthRangeProperty.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/LengthRangeProperty.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/LengthRangeProperty.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/LengthRangeProperty.java Fri Jul 18 14:21:06 2014
@@ -38,8 +38,8 @@ public class LengthRangeProperty extends
private static final int MINSET = 1;
private static final int OPTSET = 2;
private static final int MAXSET = 4;
- private int bfSet = 0; // bit field
- private boolean consistent = false;
+ private int bfSet; // bit field
+ private boolean consistent;
/**
* Converts this <code>LengthRangeProperty</code> to a <code>MinOptMax</code>.
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/PropertyMaker.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/PropertyMaker.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/PropertyMaker.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fo/properties/PropertyMaker.java Fri Jul 18 14:21:06 2014
@@ -50,16 +50,16 @@ public class PropertyMaker implements Cl
/** the property ID */
protected int propId;
private boolean inherited = true;
- private Map enums = null;
- private Map keywords = null;
+ private Map enums;
+ private Map keywords;
/** the default value for the maker */
- protected String defaultValue = null;
+ protected String defaultValue;
/** Indicates whether the property is context-dependant and therefore can't be cached. */
- protected boolean contextDep = false;
+ protected boolean contextDep;
/** Indicates whether the property is set through a shorthand. */
- protected boolean setByShorthand = false;
+ protected boolean setByShorthand;
private int percentBase = -1;
- private PropertyMaker[] shorthands = null;
+ private PropertyMaker[] shorthands;
private ShorthandParser datatypeParser;
/** default property **/
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/CustomFont.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/CustomFont.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/CustomFont.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/CustomFont.java Fri Jul 18 14:21:06 2014
@@ -22,9 +22,11 @@ package org.apache.fop.fonts;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -74,6 +76,8 @@ public abstract class CustomFont extends
private Map<Integer, Map<Integer, Integer>> kerning;
private boolean useKerning = true;
+ /** the character map, mapping Unicode ranges to glyph indices. */
+ protected List<CMapSegment> cmap = new ArrayList<CMapSegment>();
private boolean useAdvanced = true;
/**
@@ -82,8 +86,7 @@ public abstract class CustomFont extends
public CustomFont(InternalResourceResolver resourceResolver) {
this.resourceResolver = resourceResolver;
}
- /** the character map, mapping Unicode ranges to glyph indices. */
- protected CMapSegment[] cmap;
+
/** {@inheritDoc} */
public String getFontName() {
@@ -503,8 +506,10 @@ public abstract class CustomFont extends
* @param cmap the character map
*/
public void setCMap(CMapSegment[] cmap) {
- this.cmap = new CMapSegment[cmap.length];
- System.arraycopy(cmap, 0, this.cmap, 0, cmap.length);
+ this.cmap.clear();
+ for (CMapSegment c : cmap) {
+ this.cmap.add(c);
+ }
}
/**
@@ -513,9 +518,7 @@ public abstract class CustomFont extends
* @return the character map
*/
public CMapSegment[] getCMap() {
- CMapSegment[] copy = new CMapSegment[cmap.length];
- System.arraycopy(this.cmap, 0, copy, 0, this.cmap.length);
- return copy;
+ return cmap.toArray(new CMapSegment[cmap.size()]);
}
public int getUnderlinePosition(int size) {
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Font.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Font.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Font.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Font.java Fri Jul 18 14:21:06 2014
@@ -28,8 +28,6 @@ import org.apache.commons.logging.LogFac
import org.apache.fop.complexscripts.fonts.Positionable;
import org.apache.fop.complexscripts.fonts.Substitutable;
-// CSOFF: LineLengthCheck
-
/**
* This class holds font state information and provides access to the font
* metrics.
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontCache.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontCache.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontCache.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontCache.java Fri Jul 18 14:21:06 2014
@@ -75,14 +75,14 @@ public final class FontCache implements
* TTC file may contain more than 1 font.
* @serial
*/
- private Map<String, CachedFontFile> fontfileMap = null;
+ private Map<String, CachedFontFile> fontfileMap;
/**
* mapping of font url -> file modified date (for all fonts that have failed
* to load)
* @serial
*/
- private Map<String, Long> failedFontMap = null;
+ private Map<String, Long> failedFontMap;
/**
* Default constructor
@@ -494,7 +494,7 @@ public final class FontCache implements
/** file modify date (if available) */
private long lastModified = -1;
- private Map<String, EmbedFontInfo> filefontsMap = null;
+ private Map<String, EmbedFontInfo> filefontsMap;
public CachedFontFile(long lastModified) {
setLastModified(lastModified);
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontInfo.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontInfo.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontInfo.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontInfo.java Fri Jul 18 14:21:06 2014
@@ -46,23 +46,23 @@ public class FontInfo {
protected static final Log log = LogFactory.getLog(FontInfo.class);
/** Map containing fonts that have been used */
- private Map<String, Typeface> usedFonts = null; //(String = font key)
+ private Map<String, Typeface> usedFonts; //(String = font key)
/** look up a font-triplet to find a font-name */
- private Map<FontTriplet, String> triplets = null; //(String = font key)
+ private Map<FontTriplet, String> triplets; //(String = font key)
/** look up a font-triplet to find its priority
* (only used inside addFontProperties()) */
- private Map<FontTriplet, Integer> tripletPriorities = null; //Map<FontTriplet,Integer>
+ private Map<FontTriplet, Integer> tripletPriorities; //Map<FontTriplet,Integer>
/** look up a font-name to get a font (that implements FontMetrics at least) */
- private Map<String, Typeface> fonts = null; //(String = font key)
+ private Map<String, Typeface> fonts; //(String = font key)
/** Cache for Font instances. */
- private Map<FontTriplet, Map<Integer, Font>> fontInstanceCache = null;
+ private Map<FontTriplet, Map<Integer, Font>> fontInstanceCache;
/** Event listener for font events */
- private FontEventListener eventListener = null;
+ private FontEventListener eventListener;
/**
* Main constructor
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontManager.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontManager.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontManager.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontManager.java Fri Jul 18 14:21:06 2014
@@ -44,10 +44,10 @@ public class FontManager {
private FontCacheManager fontCacheManager;
/** Font substitutions */
- private FontSubstitutions fontSubstitutions = null;
+ private FontSubstitutions fontSubstitutions;
/** Allows enabling kerning on the base 14 fonts, default is false */
- private boolean enableBase14Kerning = false;
+ private boolean enableBase14Kerning;
/** FontTriplet matcher for fonts that shall be referenced rather than embedded. */
private FontTriplet.Matcher referencedFontsMatcher;
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontType.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontType.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontType.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/FontType.java Fri Jul 18 14:21:06 2014
@@ -49,6 +49,10 @@ public class FontType {
*/
public static final FontType TRUETYPE = new FontType("TrueType", 5);
+ public static final FontType TYPE1C = new FontType("Type1C", 6);
+
+ public static final FontType CIDTYPE0 = new FontType("CIDFontType0", 7);
+
private final String name;
private final int value;
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/MultiByteFont.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/MultiByteFont.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/MultiByteFont.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/MultiByteFont.java Fri Jul 18 14:21:06 2014
@@ -20,6 +20,7 @@
package org.apache.fop.fonts;
import java.awt.Rectangle;
+import java.io.InputStream;
import java.nio.CharBuffer;
import java.nio.IntBuffer;
import java.util.BitSet;
@@ -53,7 +54,7 @@ public class MultiByteFont extends CIDFo
private int defaultWidth;
private CIDFontType cidType = CIDFontType.CIDTYPE2;
- private final CIDSet cidSet;
+ protected final CIDSet cidSet;
/* advanced typographic support */
private GlyphDefinitionTable gdef;
@@ -72,7 +73,7 @@ public class MultiByteFont extends CIDFo
/** Contains the character bounding boxes for all characters in the font */
protected Rectangle[] boundingBoxes;
- private boolean isOTFFile = false;
+ private boolean isOTFFile;
// since for most users the most likely glyphs are in the first cmap segments we store their mapping.
private static final int NUM_MOST_LIKELY_GLYPHS = 256;
@@ -222,13 +223,13 @@ public class MultiByteFont extends CIDFo
if (idx < NUM_MOST_LIKELY_GLYPHS && mostLikelyGlyphs[idx] != 0) {
return mostLikelyGlyphs[idx];
}
- for (int i = 0; (i < cmap.length) && retIdx == 0; i++) {
- if (cmap[i].getUnicodeStart() <= idx
- && cmap[i].getUnicodeEnd() >= idx) {
-
- retIdx = cmap[i].getGlyphStartIndex()
+ for (CMapSegment i : cmap) {
+ if (retIdx == 0
+ && i.getUnicodeStart() <= idx
+ && i.getUnicodeEnd() >= idx) {
+ retIdx = i.getGlyphStartIndex()
+ idx
- - cmap[i].getUnicodeStart();
+ - i.getUnicodeStart();
if (idx < NUM_MOST_LIKELY_GLYPHS) {
mostLikelyGlyphs[idx] = retIdx;
}
@@ -241,14 +242,9 @@ public class MultiByteFont extends CIDFo
* Add a private use mapping {PU,GI} to the existing character map.
* N.B. Does not insert in order, merely appends to end of existing map.
*/
- private synchronized void addPrivateUseMapping(int pu, int gi) {
+ protected synchronized void addPrivateUseMapping(int pu, int gi) {
assert findGlyphIndex(pu) == SingleByteEncoding.NOT_FOUND_CODE_POINT;
- CMapSegment[] oldCmap = cmap;
- int cmapLength = oldCmap.length;
- CMapSegment[] newCmap = new CMapSegment [ cmapLength + 1 ];
- System.arraycopy(oldCmap, 0, newCmap, 0, cmapLength);
- newCmap [ cmapLength ] = new CMapSegment(pu, pu, gi);
- cmap = newCmap;
+ cmap.add(new CMapSegment(pu, pu, gi));
}
/**
@@ -306,8 +302,7 @@ public class MultiByteFont extends CIDFo
// [TBD] - needs optimization, i.e., change from linear search to binary search
private int findCharacterFromGlyphIndex(int gi, boolean augment) {
int cc = 0;
- for (int i = 0, n = cmap.length; i < n; i++) {
- CMapSegment segment = cmap [ i ];
+ for (CMapSegment segment : cmap) {
int s = segment.getGlyphStartIndex();
int e = s + (segment.getUnicodeEnd() - segment.getUnicodeStart());
if ((gi >= s) && (gi <= e)) {
@@ -330,10 +325,10 @@ public class MultiByteFont extends CIDFo
bitset.set(0);
bitset.set(1);
bitset.set(2);
- for (int i = 0; i < cmap.length; i++) {
- int start = cmap[i].getUnicodeStart();
- int end = cmap[i].getUnicodeEnd();
- int glyphIndex = cmap[i].getGlyphStartIndex();
+ for (CMapSegment i : cmap) {
+ int start = i.getUnicodeStart();
+ int end = i.getUnicodeEnd();
+ int glyphIndex = i.getGlyphStartIndex();
while (start++ < end + 1) {
bitset.set(glyphIndex++);
}
@@ -344,10 +339,10 @@ public class MultiByteFont extends CIDFo
protected char[] getChars() {
// the width array is set when the font is built
char[] chars = new char[width.length];
- for (int i = 0; i < cmap.length; i++) {
- int start = cmap[i].getUnicodeStart();
- int end = cmap[i].getUnicodeEnd();
- int glyphIndex = cmap[i].getGlyphStartIndex();
+ for (CMapSegment i : cmap) {
+ int start = i.getUnicodeStart();
+ int end = i.getUnicodeEnd();
+ int glyphIndex = i.getGlyphStartIndex();
while (start < end + 1) {
chars[glyphIndex++] = (char) start++;
}
@@ -642,5 +637,12 @@ public class MultiByteFont extends CIDFo
return cb;
}
+ public Map<Integer, Integer> getWidthsMap() {
+ return null;
+ }
+
+ public InputStream getCmapStream() {
+ return null;
+ }
}
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/SingleByteFont.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/SingleByteFont.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/SingleByteFont.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/SingleByteFont.java Fri Jul 18 14:21:06 2014
@@ -46,10 +46,10 @@ public class SingleByteFont extends Cust
/** logger */
private static Log log = LogFactory.getLog(SingleByteFont.class);
- private SingleByteEncoding mapping;
- private boolean useNativeEncoding = false;
+ protected SingleByteEncoding mapping;
+ private boolean useNativeEncoding;
- private int[] width = null;
+ protected int[] width;
private Rectangle[] boundingBoxes;
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Typeface.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Typeface.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Typeface.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/Typeface.java Fri Jul 18 14:21:06 2014
@@ -46,7 +46,7 @@ public abstract class Typeface implement
* is used as the trigger). This could just as well be a boolean but is a
* long out of statistical interest.
*/
- private long charMapOps = 0;
+ private long charMapOps;
/** An optional event listener that receives events such as missing glyphs etc. */
protected FontEventListener eventListener;
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/apps/TTFReader.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/apps/TTFReader.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/apps/TTFReader.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/apps/TTFReader.java Fri Jul 18 14:21:06 2014
@@ -39,8 +39,6 @@ import org.apache.fop.fonts.truetype.Fon
import org.apache.fop.fonts.truetype.OFFontLoader;
import org.apache.fop.fonts.truetype.TTFFile;
-// CSOFF: LineLengthCheck
-
/**
* A tool which reads TTF files and generates
* XML font metrics file for use in FOP.
@@ -207,7 +205,8 @@ public class TTFReader extends AbstractF
* @return The TTF as an object, null if the font is incompatible.
* @throws IOException In case of an I/O problem
*/
- public TTFFile loadTTF(String fileName, String fontName, boolean useKerning, boolean useAdvanced) throws IOException {
+ public TTFFile loadTTF(String fileName, String fontName, boolean useKerning, boolean useAdvanced)
+ throws IOException {
TTFFile ttfFile = new TTFFile(useKerning, useAdvanced);
log.info("Reading " + fileName + "...");
InputStream stream = new FileInputStream(fileName);
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/base14/Base14FontCollection.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/base14/Base14FontCollection.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/base14/Base14FontCollection.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/base14/Base14FontCollection.java Fri Jul 18 14:21:06 2014
@@ -28,7 +28,7 @@ import org.apache.fop.fonts.FontInfo;
*/
public class Base14FontCollection implements FontCollection {
- private boolean kerning = false;
+ private boolean kerning;
/**
* Main constructor
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/cff/CFFDataReader.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/cff/CFFDataReader.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/cff/CFFDataReader.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/cff/CFFDataReader.java Fri Jul 18 14:21:06 2014
@@ -580,7 +580,9 @@ public class CFFDataReader {
LinkedHashMap<String, DICTEntry> fdEntries = parseDictData(fdData);
newFontDict.setByteData(fontDicts.getValuePosition(i), fontDicts.getValueLength(i));
DICTEntry fontFDEntry = fdEntries.get("FontName");
- newFontDict.setFontName(getString(fontFDEntry.getOperands().get(0).intValue()));
+ if (fontFDEntry != null) {
+ newFontDict.setFontName(getString(fontFDEntry.getOperands().get(0).intValue()));
+ }
DICTEntry privateFDEntry = fdEntries.get("Private");
if (privateFDEntry != null) {
newFontDict = setFDData(privateFDEntry, newFontDict);
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontQualifier.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontQualifier.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontQualifier.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontQualifier.java Fri Jul 18 14:21:06 2014
@@ -41,13 +41,13 @@ public class FontQualifier {
private static Log log = LogFactory.getLog(FontQualifier.class);
/** font family attribute value */
- private AttributeValue fontFamilyAttributeValue = null;
+ private AttributeValue fontFamilyAttributeValue;
/** font style attribute value */
- private AttributeValue fontStyleAttributeValue = null;
+ private AttributeValue fontStyleAttributeValue;
/** font weight attribute value */
- private AttributeValue fontWeightAttributeValue = null;
+ private AttributeValue fontWeightAttributeValue;
/**
* Default constructor
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontSubstitutionsConfigurator.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontSubstitutionsConfigurator.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontSubstitutionsConfigurator.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/substitute/FontSubstitutionsConfigurator.java Fri Jul 18 14:21:06 2014
@@ -28,7 +28,7 @@ import org.apache.fop.apps.FOPException;
*/
public class FontSubstitutionsConfigurator {
- private Configuration cfg = null;
+ private Configuration cfg;
/**
* Main constructor
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/GlyfTable.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/GlyfTable.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/GlyfTable.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/GlyfTable.java Fri Jul 18 14:21:06 2014
@@ -37,7 +37,7 @@ public class GlyfTable {
private final Set<Long> remappedComposites;
- private final Map<Integer, Integer> subset;
+ protected final Map<Integer, Integer> subset;
private final FontFileReader in;
@@ -45,10 +45,10 @@ public class GlyfTable {
private Set<Integer> compositeGlyphs = new TreeSet<Integer>();
/** All the glyphs that are composed, but do not appear in the subset. */
- private Set<Integer> composedGlyphs = new TreeSet<Integer>();
+ protected Set<Integer> composedGlyphs = new TreeSet<Integer>();
- GlyfTable(FontFileReader in, OFMtxEntry[] metrics, OFDirTabEntry dirTableEntry,
- Map<Integer, Integer> glyphs) throws IOException {
+ protected GlyfTable(FontFileReader in, OFMtxEntry[] metrics, OFDirTabEntry dirTableEntry,
+ Map<Integer, Integer> glyphs) throws IOException {
mtxTab = metrics;
tableOffset = dirTableEntry.getOffset();
remappedComposites = new HashSet<Long>();
@@ -121,7 +121,7 @@ public class GlyfTable {
*
* @throws IOException an I/O error
*/
- void populateGlyphsWithComposites() throws IOException {
+ protected void populateGlyphsWithComposites() throws IOException {
for (int indexInOriginal : subset.keySet()) {
scanGlyphsRecursively(indexInOriginal);
}
@@ -166,7 +166,7 @@ public class GlyfTable {
* Adds to the subset, all the glyphs that are composed by a glyph, but do not appear themselves
* in the subset.
*/
- private void addAllComposedGlyphsToSubset() {
+ protected void addAllComposedGlyphsToSubset() {
int newIndex = subset.size();
for (int composedGlyph : composedGlyphs) {
subset.put(composedGlyph, newIndex++);
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OFMtxEntry.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OFMtxEntry.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OFMtxEntry.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OFMtxEntry.java Fri Jul 18 14:21:06 2014
@@ -24,7 +24,7 @@ import java.util.List;
/**
* This class represents a TrueType Mtx Entry.
*/
-class OFMtxEntry {
+public class OFMtxEntry {
private int wx;
private int lsb;
@@ -33,7 +33,7 @@ class OFMtxEntry {
private List unicodeIndex = new java.util.ArrayList();
private int[] boundingBox = new int[4];
private long offset;
- private byte found = 0;
+ private byte found;
/**
* Returns a String representation of this object.
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFFile.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFFile.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFFile.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFFile.java Fri Jul 18 14:21:06 2014
@@ -147,7 +147,7 @@ public class OTFFile extends OpenFont {
* @return The byte data found in the CFF table
*/
public static byte[] getCFFData(FontFileReader fontFile) throws IOException {
- byte[] cff = new byte[0];
+ byte[] cff = fontFile.getAllBytes();
CFFDataInput input = new CFFDataInput(fontFile.getAllBytes());
input.readBytes(4); //OTTO
short numTables = input.readShort();
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OTFSubSetFile.java Fri Jul 18 14:21:06 2014
@@ -49,23 +49,23 @@ import org.apache.fop.fonts.cff.CFFDataR
*/
public class OTFSubSetFile extends OTFFile {
- private byte[] output;
- private int currentPos = 0;
- private int realSize = 0;
+ protected byte[] output;
+ protected int currentPos;
+ private int realSize;
/** A map containing each glyph to be included in the subset
* with their existing and new GID's **/
- private LinkedHashMap<Integer, Integer> subsetGlyphs;
+ protected LinkedHashMap<Integer, Integer> subsetGlyphs = new LinkedHashMap<Integer, Integer>();
/** A map of the new GID to SID used to construct the charset table **/
- private LinkedHashMap<Integer, Integer> gidToSID;
+ protected LinkedHashMap<Integer, Integer> gidToSID;
- private CFFIndexData localIndexSubr;
- private CFFIndexData globalIndexSubr;
+ protected CFFIndexData localIndexSubr;
+ protected CFFIndexData globalIndexSubr;
/** List of subroutines to write to the local / global indexes in the subset font **/
- private List<byte[]> subsetLocalIndexSubr;
- private List<byte[]> subsetGlobalIndexSubr;
+ protected List<byte[]> subsetLocalIndexSubr;
+ protected List<byte[]> subsetGlobalIndexSubr;
/** For fonts which have an FDSelect or ROS flag in Top Dict, this is used to store the
* local subroutine indexes for each group as opposed to the above subsetLocalIndexSubr */
@@ -76,30 +76,30 @@ public class OTFSubSetFile extends OTFFi
private LinkedHashMap<Integer, FDIndexReference> subsetFDSelect;
/** A list of unique subroutines from the global / local subroutine indexes */
- private List<Integer> localUniques;
- private List<Integer> globalUniques;
+ protected List<Integer> localUniques;
+ protected List<Integer> globalUniques;
/** A store of the number of subroutines each global / local subroutine will store **/
- private int subsetLocalSubrCount;
- private int subsetGlobalSubrCount;
+ protected int subsetLocalSubrCount;
+ protected int subsetGlobalSubrCount;
/** A list of char string data for each glyph to be stored in the subset font **/
- private List<byte[]> subsetCharStringsIndex;
+ protected List<byte[]> subsetCharStringsIndex;
/** The embedded name to change in the name table **/
- private String embeddedName;
+ protected String embeddedName;
/** An array used to hold the string index data for the subset font **/
- private List<byte[]> stringIndexData = new ArrayList<byte[]>();
+ protected List<byte[]> stringIndexData = new ArrayList<byte[]>();
/** The CFF reader object used to read data and offsets from the original font file */
- private CFFDataReader cffReader = null;
+ protected CFFDataReader cffReader;
/** The class used to represent this font **/
private MultiByteFont mbFont;
/** The number of standard strings in CFF **/
- private static final int NUM_STANDARD_STRINGS = 391;
+ public static final int NUM_STANDARD_STRINGS = 391;
/** The operator used to identify a local subroutine reference */
private static final int LOCAL_SUBROUTINE = 10;
/** The operator used to identify a global subroutine reference */
@@ -162,7 +162,7 @@ public class OTFSubSetFile extends OTFFi
return result;
}
- private void createCFF() throws IOException {
+ protected void createCFF() throws IOException {
//Header
writeBytes(cffReader.getHeader());
@@ -238,7 +238,7 @@ public class OTFSubSetFile extends OTFFi
}
}
- private List<Integer> storeFDStrings(List<Integer> uniqueNewRefs) throws IOException {
+ protected List<Integer> storeFDStrings(List<Integer> uniqueNewRefs) throws IOException {
ArrayList<Integer> fontNameSIDs = new ArrayList<Integer>();
List<FontDict> fdFonts = cffReader.getFDFonts();
for (int i = 0; i < uniqueNewRefs.size(); i++) {
@@ -252,14 +252,13 @@ public class OTFSubSetFile extends OTFFi
return fontNameSIDs;
}
- private void writeBytes(byte[] out) {
+ protected void writeBytes(byte[] out) {
for (int i = 0; i < out.length; i++) {
- output[currentPos++] = out[i];
- realSize++;
+ writeByte(out[i]);
}
}
- private void writeBytes(byte[] out, int offset, int length) {
+ protected void writeBytes(byte[] out, int offset, int length) {
for (int i = offset; i < offset + length; i++) {
output[currentPos++] = out[i];
realSize++;
@@ -280,7 +279,7 @@ public class OTFSubSetFile extends OTFFi
}
}
- private void writeTopDICT() throws IOException {
+ protected void writeTopDICT() throws IOException {
LinkedHashMap<String, DICTEntry> topDICT = cffReader.getTopDictEntries();
List<String> topDictStringEntries = Arrays.asList("version", "Notice", "Copyright",
"FullName", "FamilyName", "Weight", "PostScript");
@@ -321,7 +320,7 @@ public class OTFSubSetFile extends OTFFi
writeBytes(cidEntryByteData);
}
- private void writeCIDCount(DICTEntry dictEntry) throws IOException {
+ protected void writeCIDCount(DICTEntry dictEntry) throws IOException {
byte[] cidCountByteData = dictEntry.getByteData();
cidCountByteData = updateOffset(cidCountByteData, 0, dictEntry.getOperandLengths().get(0),
subsetGlyphs.size());
@@ -375,7 +374,7 @@ public class OTFSubSetFile extends OTFFi
writeIndex(stringIndexData);
}
- private void createCharStringDataCID() throws IOException {
+ protected void createCharStringDataCID() throws IOException {
CFFIndexData charStringsIndex = cffReader.getCharStringIndex();
FDSelect fontDictionary = cffReader.getFDSelect();
@@ -451,22 +450,22 @@ public class OTFSubSetFile extends OTFFi
localUniques = foundLocalUniquesB.get(subsetFDSelect.get(subsetGlyphs.get(gid)).getNewFDIndex());
byte[] data = charStringsIndex.getValue(gid);
subsetLocalIndexSubr = fdSubrs.get(subsetFDSelect.get(subsetGlyphs.get(gid)).getNewFDIndex());
- subsetLocalSubrCount = foundLocalUniques.get(
- subsetFDSelect.get(subsetGlyphs.get(gid)).getNewFDIndex()).size();
+ subsetLocalSubrCount = foundLocalUniques.get(subsetFDSelect.get(subsetGlyphs.get(gid))
+ .getNewFDIndex()).size();
data = readCharStringData(data, subsetLocalSubrCount);
subsetCharStringsIndex.add(data);
}
}
}
- private void writeFDSelect() {
+ protected void writeFDSelect() {
writeByte(0); //Format
for (Integer gid : subsetFDSelect.keySet()) {
writeByte(subsetFDSelect.get(gid).getNewFDIndex());
}
}
- private List<Integer> getUsedFDFonts() {
+ protected List<Integer> getUsedFDFonts() {
List<Integer> uniqueNewRefs = new ArrayList<Integer>();
for (int gid : subsetFDSelect.keySet()) {
int fdIndex = subsetFDSelect.get(gid).getOldFDIndex();
@@ -477,7 +476,7 @@ public class OTFSubSetFile extends OTFFi
return uniqueNewRefs;
}
- private List<Integer> writeCIDDictsAndSubrs(List<Integer> uniqueNewRefs)
+ protected List<Integer> writeCIDDictsAndSubrs(List<Integer> uniqueNewRefs)
throws IOException {
List<Integer> privateDictOffsets = new ArrayList<Integer>();
List<FontDict> fdFonts = cffReader.getFDFonts();
@@ -499,7 +498,7 @@ public class OTFSubSetFile extends OTFFi
return privateDictOffsets;
}
- private int writeFDArray(List<Integer> uniqueNewRefs, List<Integer> privateDictOffsets,
+ protected int writeFDArray(List<Integer> uniqueNewRefs, List<Integer> privateDictOffsets,
List<Integer> fontNameSIDs)
throws IOException {
int offset = currentPos;
@@ -796,7 +795,7 @@ public class OTFSubSetFile extends OTFFi
return c;
}
- private int writeIndex(List<byte[]> dataArray) {
+ protected int writeIndex(List<byte[]> dataArray) {
int hdrTotal = 3;
//2 byte number of items
this.writeCard16(dataArray.size());
@@ -939,7 +938,7 @@ public class OTFSubSetFile extends OTFFi
}
}
- private void writePrivateDict() throws IOException {
+ protected void writePrivateDict() throws IOException {
Map<String, DICTEntry> topDICT = cffReader.getTopDictEntries();
DICTEntry privateEntry = topDICT.get("Private");
@@ -948,7 +947,7 @@ public class OTFSubSetFile extends OTFFi
}
}
- private void updateOffsets(int topDictOffset, int charsetOffset, int charStringOffset,
+ protected void updateOffsets(int topDictOffset, int charsetOffset, int charStringOffset,
int privateDictOffset, int localIndexOffset, int encodingOffset)
throws IOException {
Map<String, DICTEntry> topDICT = cffReader.getTopDictEntries();
@@ -973,18 +972,20 @@ public class OTFSubSetFile extends OTFFi
//Update the local subroutine index offset in the private dict
DICTEntry subroutines = privateDICT.get("Subrs");
- int oldLocalSubrOffset = privateDictOffset + subroutines.getOffset();
- //Value needs to be converted to -139 etc.
- int encodeValue = 0;
- if (subroutines.getOperandLength() == 1) {
- encodeValue = 139;
+ if (subroutines != null) {
+ int oldLocalSubrOffset = privateDictOffset + subroutines.getOffset();
+ //Value needs to be converted to -139 etc.
+ int encodeValue = 0;
+ if (subroutines.getOperandLength() == 1) {
+ encodeValue = 139;
+ }
+ output = updateOffset(output, oldLocalSubrOffset, subroutines.getOperandLength(),
+ (localIndexOffset - privateDictOffset) + encodeValue);
}
- output = updateOffset(output, oldLocalSubrOffset, subroutines.getOperandLength(),
- (localIndexOffset - privateDictOffset) + encodeValue);
}
}
- private void updateFixedOffsets(Map<String, DICTEntry> topDICT, int dataTopDictOffset,
+ protected void updateFixedOffsets(Map<String, DICTEntry> topDICT, int dataTopDictOffset,
int charsetOffset, int charStringOffset, int encodingOffset) {
//Charset offset in the top dict
DICTEntry charset = topDICT.get("charset");
@@ -1004,7 +1005,7 @@ public class OTFSubSetFile extends OTFFi
}
}
- private void updateCIDOffsets(int topDictDataOffset, int fdArrayOffset, int fdSelectOffset,
+ protected void updateCIDOffsets(int topDictDataOffset, int fdArrayOffset, int fdSelectOffset,
int charsetOffset, int charStringOffset, int encodingOffset) {
LinkedHashMap<String, DICTEntry> topDict = cffReader.getTopDictEntries();
@@ -1023,7 +1024,7 @@ public class OTFSubSetFile extends OTFFi
updateFixedOffsets(topDict, topDictDataOffset, charsetOffset, charStringOffset, encodingOffset);
}
- private byte[] updateOffset(byte[] out, int position, int length, int replacement) {
+ protected byte[] updateOffset(byte[] out, int position, int length, int replacement) {
switch (length) {
case 1:
out[position] = (byte)(replacement & 0xFF);
@@ -1061,7 +1062,7 @@ public class OTFSubSetFile extends OTFFi
* Appends a byte to the output array,
* updates currentPost but not realSize
*/
- private void writeByte(int b) {
+ protected void writeByte(int b) {
output[currentPos++] = (byte)b;
realSize++;
}
@@ -1070,7 +1071,7 @@ public class OTFSubSetFile extends OTFFi
* Appends a USHORT to the output array,
* updates currentPost but not realSize
*/
- private void writeCard16(int s) {
+ protected void writeCard16(int s) {
byte b1 = (byte)((s >> 8) & 0xff);
byte b2 = (byte)(s & 0xff);
writeByte(b1);
@@ -1081,10 +1082,9 @@ public class OTFSubSetFile extends OTFFi
byte b1 = (byte)((s >> 16) & 0xFF);
byte b2 = (byte)((s >> 8) & 0xFF);
byte b3 = (byte)(s & 0xFF);
- output[currentPos++] = b1;
- output[currentPos++] = b2;
- output[currentPos++] = b3;
- realSize += 3;
+ writeByte(b1);
+ writeByte(b2);
+ writeByte(b3);
}
/**
@@ -1096,11 +1096,10 @@ public class OTFSubSetFile extends OTFFi
byte b2 = (byte)((s >> 16) & 0xff);
byte b3 = (byte)((s >> 8) & 0xff);
byte b4 = (byte)(s & 0xff);
- output[currentPos++] = b1;
- output[currentPos++] = b2;
- output[currentPos++] = b3;
- output[currentPos++] = b4;
- realSize += 4;
+ writeByte(b1);
+ writeByte(b2);
+ writeByte(b3);
+ writeByte(b4);
}
/**
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OpenFont.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OpenFont.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OpenFont.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/OpenFont.java Fri Jul 18 14:21:06 2014
@@ -154,7 +154,7 @@ public abstract class OpenFont {
private static final short FIRST_CHAR = 0;
- protected boolean useKerning = false;
+ protected boolean useKerning;
private boolean isEmbeddable = true;
private boolean hasSerifs = true;
/**
@@ -168,13 +168,13 @@ public abstract class OpenFont {
protected List<UnicodeMapping> unicodeMappings;
private int upem; // unitsPerEm from "head" table
- private int nhmtx; // Number of horizontal metrics
+ protected int nhmtx; // Number of horizontal metrics
private PostScriptVersion postScriptVersion;
protected int locaFormat;
/**
* Offset to last loca
*/
- protected long lastLoca = 0;
+ protected long lastLoca;
protected int numberOfGlyphs; // Number of glyphs in font (read from "maxp" table)
/**
@@ -187,33 +187,34 @@ public abstract class OpenFont {
protected String notice = "";
protected final Set<String> familyNames = new HashSet<String>();
protected String subFamilyName = "";
+ protected boolean cid = true;
- private long italicAngle = 0;
- private long isFixedPitch = 0;
- private int fontBBox1 = 0;
- private int fontBBox2 = 0;
- private int fontBBox3 = 0;
- private int fontBBox4 = 0;
- private int capHeight = 0;
- private int os2CapHeight = 0;
+ private long italicAngle;
+ private long isFixedPitch;
+ private int fontBBox1;
+ private int fontBBox2;
+ private int fontBBox3;
+ private int fontBBox4;
+ private int capHeight;
+ private int os2CapHeight;
private int underlinePosition;
private int underlineThickness;
private int strikeoutPosition;
private int strikeoutThickness;
- private int xHeight = 0;
- private int os2xHeight = 0;
+ private int xHeight;
+ private int os2xHeight;
//Effective ascender/descender
- private int ascender = 0;
- private int descender = 0;
+ private int ascender;
+ private int descender;
//Ascender/descender from hhea table
- private int hheaAscender = 0;
- private int hheaDescender = 0;
+ private int hheaAscender;
+ private int hheaDescender;
//Ascender/descender from OS/2 table
- private int os2Ascender = 0;
- private int os2Descender = 0;
- private int usWeightClass = 0;
+ private int os2Ascender;
+ private int os2Descender;
+ private int usWeightClass;
- private short lastChar = 0;
+ private short lastChar;
private int[] ansiWidth;
private Map<Integer, List<Integer>> ansiIndex;
@@ -226,7 +227,7 @@ public abstract class OpenFont {
private boolean isCFF;
// advanced typographic table support
- protected boolean useAdvanced = false;
+ protected boolean useAdvanced;
protected OTFAdvancedTypographicTableReader advancedTableReader;
/**
@@ -393,7 +394,9 @@ public abstract class OpenFont {
unicodeMappings = new ArrayList<OpenFont.UnicodeMapping>();
- seekTab(fontFile, OFTableName.CMAP, 2);
+ if (!seekTab(fontFile, OFTableName.CMAP, 2)) {
+ return true;
+ }
int numCMap = fontFile.readTTFUShort(); // Number of cmap subtables
long cmapUniOffset = 0;
long symbolMapOffset = 0;
@@ -796,7 +799,9 @@ public abstract class OpenFont {
int unicodeStart;
int glyphStart;
int unicodeEnd;
-
+ if (unicodeMappings.isEmpty()) {
+ return;
+ }
Iterator<UnicodeMapping> e = unicodeMappings.iterator();
UnicodeMapping um = e.next();
UnicodeMapping lastMapping = um;
@@ -1229,7 +1234,7 @@ public abstract class OpenFont {
}
}
- if (nhmtx < mtxSize) {
+ if (cid && nhmtx < mtxSize) {
// Fill in the missing widths
int lastWidth = mtxTab[nhmtx - 1].getWx();
for (int i = nhmtx; i < mtxSize; i++) {
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/TTFSubSetFile.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/TTFSubSetFile.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/TTFSubSetFile.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/truetype/TTFSubSetFile.java Fri Jul 18 14:21:06 2014
@@ -35,21 +35,21 @@ import java.util.SortedSet;
*/
public class TTFSubSetFile extends TTFFile {
- private byte[] output = null;
- private int realSize = 0;
- private int currentPos = 0;
+ protected byte[] output;
+ protected int realSize;
+ protected int currentPos;
/*
* Offsets in name table to be filled out by table.
* The offsets are to the checkSum field
*/
- private Map<OFTableName, Integer> offsets = new HashMap<OFTableName, Integer>();
+ protected Map<OFTableName, Integer> offsets = new HashMap<OFTableName, Integer>();
- private int checkSumAdjustmentOffset = 0;
- private int locaOffset = 0;
+ private int checkSumAdjustmentOffset;
+ protected int locaOffset;
/** Stores the glyph offsets so that we can end strings at glyph boundaries */
- private int[] glyphOffsets;
+ protected int[] glyphOffsets;
/**
* Default Constructor
@@ -67,7 +67,7 @@ public class TTFSubSetFile extends TTFFi
}
/** The dir tab entries in the new subset font. */
- private Map<OFTableName, OFDirTabEntry> newDirTabs
+ protected Map<OFTableName, OFDirTabEntry> newDirTabs
= new HashMap<OFTableName, OFDirTabEntry>();
private int determineTableCount() {
@@ -86,6 +86,9 @@ public class TTFSubSetFile extends TTFFi
if (hasPrep()) {
numTables++;
}
+ if (!cid) {
+ numTables++; //cmap
+ }
}
return numTables;
}
@@ -93,7 +96,7 @@ public class TTFSubSetFile extends TTFFi
/**
* Create the directory table
*/
- private void createDirectory() {
+ protected void createDirectory() {
int numTables = determineTableCount();
// Create the TrueType header
writeByte((byte)0);
@@ -118,7 +121,9 @@ public class TTFSubSetFile extends TTFFi
realSize += 2;
// Create space for the table entries (these must be in ASCII alphabetical order[A-Z] then[a-z])
writeTableName(OFTableName.OS2);
-
+ if (!cid) {
+ writeTableName(OFTableName.CMAP);
+ }
if (hasCvt()) {
writeTableName(OFTableName.CVT);
}
@@ -162,7 +167,7 @@ public class TTFSubSetFile extends TTFFi
/**
* Create an empty loca table without updating checksum
*/
- private void createLoca(int size) throws IOException {
+ protected void createLoca(int size) throws IOException {
pad4();
locaOffset = currentPos;
int dirTableOffset = offsets.get(OFTableName.LOCA);
@@ -177,8 +182,7 @@ public class TTFSubSetFile extends TTFFi
if (entry != null) {
pad4();
seekTab(in, tableName, 0);
- System.arraycopy(in.getBytes((int)entry.getOffset(), (int)entry.getLength()),
- 0, output, currentPos, (int)entry.getLength());
+ writeBytes(in.getBytes((int) entry.getOffset(), (int) entry.getLength()));
updateCheckSum(currentPos, (int) entry.getLength(), tableName);
currentPos += (int) entry.getLength();
@@ -192,28 +196,28 @@ public class TTFSubSetFile extends TTFFi
/**
* Copy the cvt table as is from original font to subset font
*/
- private boolean createCvt(FontFileReader in) throws IOException {
+ protected boolean createCvt(FontFileReader in) throws IOException {
return copyTable(in, OFTableName.CVT);
}
/**
* Copy the fpgm table as is from original font to subset font
*/
- private boolean createFpgm(FontFileReader in) throws IOException {
+ protected boolean createFpgm(FontFileReader in) throws IOException {
return copyTable(in, OFTableName.FPGM);
}
/**
* Copy the name table as is from the original.
*/
- private boolean createName(FontFileReader in) throws IOException {
+ protected boolean createName(FontFileReader in) throws IOException {
return copyTable(in, OFTableName.NAME);
}
/**
* Copy the OS/2 table as is from the original.
*/
- private boolean createOS2(FontFileReader in) throws IOException {
+ protected boolean createOS2(FontFileReader in) throws IOException {
return copyTable(in, OFTableName.OS2);
}
@@ -221,14 +225,13 @@ public class TTFSubSetFile extends TTFFi
* Copy the maxp table as is from original font to subset font
* and set num glyphs to size
*/
- private void createMaxp(FontFileReader in, int size) throws IOException {
+ protected void createMaxp(FontFileReader in, int size) throws IOException {
OFTableName maxp = OFTableName.MAXP;
OFDirTabEntry entry = dirTabs.get(maxp);
if (entry != null) {
pad4();
seekTab(in, maxp, 0);
- System.arraycopy(in.getBytes((int)entry.getOffset(), (int)entry.getLength()),
- 0, output, currentPos, (int)entry.getLength());
+ writeBytes(in.getBytes((int) entry.getOffset(), (int) entry.getLength()));
writeUShort(currentPos + 4, size);
updateCheckSum(currentPos, (int)entry.getLength(), maxp);
@@ -239,7 +242,7 @@ public class TTFSubSetFile extends TTFFi
}
}
- private void createPost(FontFileReader in) throws IOException {
+ protected void createPost(FontFileReader in) throws IOException {
OFTableName post = OFTableName.POST;
OFDirTabEntry entry = dirTabs.get(post);
if (entry != null) {
@@ -252,12 +255,12 @@ public class TTFSubSetFile extends TTFFi
0, newPostTable, 0, newTableSize);
// set the post table to Format 3.0
newPostTable[1] = 0x03;
- System.arraycopy(newPostTable, 0, output, currentPos, newTableSize);
+ writeBytes(newPostTable);
updateCheckSum(currentPos, newTableSize, post);
currentPos += newTableSize;
realSize += newTableSize;
} else {
- throw new IOException("Can't find post table");
+// throw new IOException("Can't find post table");
}
}
@@ -265,7 +268,7 @@ public class TTFSubSetFile extends TTFFi
/**
* Copy the prep table as is from original font to subset font
*/
- private boolean createPrep(FontFileReader in) throws IOException {
+ protected boolean createPrep(FontFileReader in) throws IOException {
return copyTable(in, OFTableName.PREP);
}
@@ -274,13 +277,12 @@ public class TTFSubSetFile extends TTFFi
* Copy the hhea table as is from original font to subset font
* and fill in size of hmtx table
*/
- private void createHhea(FontFileReader in, int size) throws IOException {
+ protected void createHhea(FontFileReader in, int size) throws IOException {
OFDirTabEntry entry = dirTabs.get(OFTableName.HHEA);
if (entry != null) {
pad4();
seekTab(in, OFTableName.HHEA, 0);
- System.arraycopy(in.getBytes((int) entry.getOffset(), (int) entry.getLength()), 0,
- output, currentPos, (int) entry.getLength());
+ writeBytes(in.getBytes((int) entry.getOffset(), (int) entry.getLength()));
writeUShort((int) entry.getLength() + currentPos - 2, size);
updateCheckSum(currentPos, (int) entry.getLength(), OFTableName.HHEA);
@@ -298,14 +300,13 @@ public class TTFSubSetFile extends TTFFi
* checkSumAdjustment to 0, store offset to checkSumAdjustment
* in checkSumAdjustmentOffset
*/
- private void createHead(FontFileReader in) throws IOException {
+ protected void createHead(FontFileReader in) throws IOException {
OFTableName head = OFTableName.HEAD;
OFDirTabEntry entry = dirTabs.get(head);
if (entry != null) {
pad4();
seekTab(in, head, 0);
- System.arraycopy(in.getBytes((int)entry.getOffset(), (int)entry.getLength()),
- 0, output, currentPos, (int)entry.getLength());
+ writeBytes(in.getBytes((int) entry.getOffset(), (int) entry.getLength()));
checkSumAdjustmentOffset = currentPos + 8;
output[currentPos + 8] = 0; // Set checkSumAdjustment to 0
@@ -313,8 +314,9 @@ public class TTFSubSetFile extends TTFFi
output[currentPos + 10] = 0;
output[currentPos + 11] = 0;
output[currentPos + 50] = 0; // long locaformat
- output[currentPos + 51] = 1; // long locaformat
-
+ if (cid) {
+ output[currentPos + 51] = 1; // long locaformat
+ }
updateCheckSum(currentPos, (int)entry.getLength(), head);
currentPos += (int)entry.getLength();
realSize += (int)entry.getLength();
@@ -361,10 +363,7 @@ public class TTFSubSetFile extends TTFFi
glyphLength);
int endOffset1 = endOffset;
// Copy glyph
- System.arraycopy(
- glyphData, 0,
- output, currentPos,
- glyphLength);
+ writeBytes(glyphData);
// Update loca table
@@ -402,12 +401,14 @@ public class TTFSubSetFile extends TTFFi
}
}
- private int[] buildSubsetIndexToOrigIndexMap(Map<Integer, Integer> glyphs) {
+ protected int[] buildSubsetIndexToOrigIndexMap(Map<Integer, Integer> glyphs) {
int[] origIndexes = new int[glyphs.size()];
for (Map.Entry<Integer, Integer> glyph : glyphs.entrySet()) {
int origIndex = glyph.getKey();
int subsetIndex = glyph.getValue();
- origIndexes[subsetIndex] = origIndex;
+ if (origIndexes.length > subsetIndex) {
+ origIndexes[subsetIndex] = origIndex;
+ }
}
return origIndexes;
}
@@ -418,8 +419,8 @@ public class TTFSubSetFile extends TTFFi
* Integer key and Integer value that maps the original
* metric (key) to the subset metric (value)
*/
- private void createHmtx(FontFileReader in,
- Map<Integer, Integer> glyphs) throws IOException {
+ protected void createHmtx(FontFileReader in,
+ Map<Integer, Integer> glyphs) throws IOException {
OFTableName hmtx = OFTableName.HMTX;
OFDirTabEntry entry = dirTabs.get(hmtx);
@@ -560,7 +561,7 @@ public class TTFSubSetFile extends TTFFi
ttfOut.endFontStream();
}
- private void scanGlyphs(FontFileReader in, Map<Integer, Integer> subsetGlyphs)
+ protected void scanGlyphs(FontFileReader in, Map<Integer, Integer> subsetGlyphs)
throws IOException {
OFDirTabEntry glyfTableInfo = dirTabs.get(OFTableName.GLYF);
if (glyfTableInfo == null) {
@@ -580,7 +581,7 @@ public class TTFSubSetFile extends TTFFi
int length = 0;
try {
byte[] buf = str.getBytes("ISO-8859-1");
- System.arraycopy(buf, 0, output, currentPos, buf.length);
+ writeBytes(buf);
length = buf.length;
currentPos += length;
} catch (java.io.UnsupportedEncodingException e) {
@@ -598,11 +599,20 @@ public class TTFSubSetFile extends TTFFi
output[currentPos++] = b;
}
+ protected void writeBytes(byte[] b) {
+ if (b.length + currentPos > output.length) {
+ byte[] newoutput = new byte[output.length * 2];
+ System.arraycopy(output, 0, newoutput, 0, output.length);
+ output = newoutput;
+ }
+ System.arraycopy(b, 0, output, currentPos, b.length);
+ }
+
/**
* Appends a USHORT to the output array,
* updates currentPost but not realSize
*/
- private void writeUShort(int s) {
+ protected void writeUShort(int s) {
byte b1 = (byte)((s >> 8) & 0xff);
byte b2 = (byte)(s & 0xff);
writeByte(b1);
@@ -613,7 +623,7 @@ public class TTFSubSetFile extends TTFFi
* Appends a USHORT to the output array,
* at the given position without changing currentPos
*/
- private void writeUShort(int pos, int s) {
+ protected void writeUShort(int pos, int s) {
byte b1 = (byte)((s >> 8) & 0xff);
byte b2 = (byte)(s & 0xff);
output[pos] = b1;
@@ -625,7 +635,7 @@ public class TTFSubSetFile extends TTFFi
* Appends a ULONG to the output array,
* at the given position without changing currentPos
*/
- private void writeULong(int pos, int s) {
+ protected void writeULong(int pos, int s) {
byte b1 = (byte)((s >> 24) & 0xff);
byte b2 = (byte)((s >> 16) & 0xff);
byte b3 = (byte)((s >> 8) & 0xff);
@@ -640,7 +650,7 @@ public class TTFSubSetFile extends TTFFi
* Create a padding in the fontfile to align
* on a 4-byte boundary
*/
- private void pad4() {
+ protected void pad4() {
int padSize = getPadSize(currentPos);
if (padSize < 4) {
for (int i = 0; i < padSize; i++) {
@@ -663,7 +673,7 @@ public class TTFSubSetFile extends TTFFi
}
- private void updateCheckSum(int tableStart, int tableSize, OFTableName tableName) {
+ protected void updateCheckSum(int tableStart, int tableSize, OFTableName tableName) {
int checksum = getCheckSum(output, tableStart, tableSize);
int offset = offsets.get(tableName);
int padSize = getPadSize(tableStart + tableSize);
@@ -673,7 +683,7 @@ public class TTFSubSetFile extends TTFFi
writeULong(offset + 8, tableSize);
}
- private static int getCheckSum(byte[] data, int start, int size) {
+ protected static int getCheckSum(byte[] data, int start, int size) {
// All the tables here are aligned on four byte boundaries
// Add remainder to size if it's not a multiple of 4
int remainder = size % 4;
@@ -687,14 +697,16 @@ public class TTFSubSetFile extends TTFFi
long l = 0;
for (int j = 0; j < 4; j++) {
l <<= 8;
- l |= data[start + i + j] & 0xff;
+ if (data.length > (start + i + j)) {
+ l |= data[start + i + j] & 0xff;
+ }
}
sum += l;
}
return (int) sum;
}
- private void createCheckSumAdjustment() {
+ protected void createCheckSumAdjustment() {
long sum = getCheckSum(output, 0, realSize);
int checksum = (int)(0xb1b0afba - sum);
writeULong(checkSumAdjustmentOffset, checksum);
Modified: xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/type1/PostscriptParser.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/type1/PostscriptParser.java?rev=1611658&r1=1611657&r2=1611658&view=diff
==============================================================================
--- xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/type1/PostscriptParser.java (original)
+++ xmlgraphics/fop/branches/FOP-2393_gradient-rendering/src/java/org/apache/fop/fonts/type1/PostscriptParser.java Fri Jul 18 14:21:06 2014
@@ -31,7 +31,7 @@ import java.util.Scanner;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-class PostscriptParser {
+public class PostscriptParser {
protected static final Log LOG = LogFactory.getLog(PostscriptParser.class);
/* Patterns used to identify Postscript elements */
@@ -177,12 +177,12 @@ class PostscriptParser {
/* The tokens parsed from the current element */
protected List<String> tokens;
/* Determines whether binary data is currently being read / parsed */
- protected boolean readBinary = false;
+ protected boolean readBinary;
/* The location of the element within the binary data */
private int startPoint = -1;
protected int endPoint = -1;
/* A flag to determine if unexpected postscript has been found in the element */
- private boolean foundUnexpected = false;
+ private boolean foundUnexpected;
public PSElement(String operator, int startPoint) {
this.operator = operator;
@@ -327,8 +327,8 @@ class PostscriptParser {
private String entry = "";
private String token = "";
- private boolean finished = false;
- protected int binaryLength = 0;
+ private boolean finished;
+ protected int binaryLength;
/* A list containing each entry and it's contents in the array */
private HashMap<Integer, String> entries;
private static final String READ_ONLY = "readonly";
@@ -441,7 +441,7 @@ class PostscriptParser {
* An object representing a Postscript array with a variable number of entries
*/
public class PSVariableArray extends PSElement {
- private int level = 0;
+ private int level;
private List<String> arrayItems;
private String entry = "";
@@ -536,7 +536,7 @@ class PostscriptParser {
private HashMap<String, String> entries;
private String entry = "";
private String token = "";
- protected int binaryLength = 0;
+ protected int binaryLength;
public PSDictionary(String operator, int startPoint) {
super(operator, startPoint);
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: fop-commits-help@xmlgraphics.apache.org