You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ja...@apache.org on 2014/09/17 23:38:40 UTC
svn commit: r1625834 [34/34] - in /pdfbox/trunk:
fontbox/src/main/java/org/apache/fontbox/cmap/
fontbox/src/main/java/org/apache/fontbox/util/ fontbox/src/main/resources/
fontbox/src/main/resources/org/ fontbox/src/main/resources/org/apache/
fontbox/sr...
Added: pdfbox/trunk/fontbox/src/main/resources/org/apache/fontbox/cmap/UniKS-UTF16-V
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/main/resources/org/apache/fontbox/cmap/UniKS-UTF16-V?rev=1625834&view=auto
==============================================================================
--- pdfbox/trunk/fontbox/src/main/resources/org/apache/fontbox/cmap/UniKS-UTF16-V (added)
+++ pdfbox/trunk/fontbox/src/main/resources/org/apache/fontbox/cmap/UniKS-UTF16-V Wed Sep 17 21:38:38 2014
@@ -0,0 +1,99 @@
+%!PS-Adobe-3.0 Resource-CMap
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%DocumentNeededResources: CMap (UniKS-UTF16-H)
+%%IncludeResource: ProcSet (CIDInit)
+%%IncludeResource: CMap (UniKS-UTF16-H)
+%%BeginResource: CMap (UniKS-UTF16-V)
+%%Title: (UniKS-UTF16-V Adobe Korea1 1)
+%%Version: 1.002
+%%Copyright: -----------------------------------------------------------
+%%Copyright: Copyright 1990-2009 Adobe Systems Incorporated.
+%%Copyright: All rights reserved.
+%%Copyright:
+%%Copyright: Redistribution and use in source and binary forms, with or
+%%Copyright: without modification, are permitted provided that the
+%%Copyright: following conditions are met:
+%%Copyright:
+%%Copyright: Redistributions of source code must retain the above
+%%Copyright: copyright notice, this list of conditions and the following
+%%Copyright: disclaimer.
+%%Copyright:
+%%Copyright: Redistributions in binary form must reproduce the above
+%%Copyright: copyright notice, this list of conditions and the following
+%%Copyright: disclaimer in the documentation and/or other materials
+%%Copyright: provided with the distribution.
+%%Copyright:
+%%Copyright: Neither the name of Adobe Systems Incorporated nor the names
+%%Copyright: of its contributors may be used to endorse or promote
+%%Copyright: products derived from this software without specific prior
+%%Copyright: written permission.
+%%Copyright:
+%%Copyright: THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+%%Copyright: CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+%%Copyright: INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+%%Copyright: MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+%%Copyright: DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+%%Copyright: CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+%%Copyright: SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+%%Copyright: NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+%%Copyright: LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+%%Copyright: HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+%%Copyright: CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+%%Copyright: OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+%%Copyright: SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+%%Copyright: -----------------------------------------------------------
+%%EndComments
+
+/CIDInit /ProcSet findresource begin
+
+12 dict begin
+
+begincmap
+
+/UniKS-UTF16-H usecmap
+
+/CIDSystemInfo 3 dict dup begin
+ /Registry (Adobe) def
+ /Ordering (Korea1) def
+ /Supplement 1 def
+end def
+
+/CMapName /UniKS-UTF16-V def
+/CMapVersion 1.002 def
+/CMapType 1 def
+
+/XUID [1 10 25545] def
+
+/WMode 1 def
+
+11 begincidchar
+<2016> 8061
+<2025> 8058
+<3013> 8075
+<ff01> 8076
+<ff0c> 8079
+<ff0e> 8080
+<ff3b> 8087
+<ff3d> 8088
+<ff3f> 8089
+<ff5e> 8062
+<ffe3> 8093
+endcidchar
+
+7 begincidrange
+<2013> <2014> 8059
+<3001> <3002> 8056
+<3008> <3011> 8065
+<3014> <3015> 8063
+<ff08> <ff09> 8077
+<ff1a> <ff1f> 8081
+<ff5b> <ff5d> 8090
+endcidrange
+
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+
+%%EndResource
+%%EOF
Modified: pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java?rev=1625834&r1=1625833&r2=1625834&view=diff
==============================================================================
--- pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java (original)
+++ pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/cmap/TestCMapParser.java Wed Sep 17 21:38:38 2014
@@ -40,7 +40,7 @@ public class TestCMapParser extends Test
File inDir = new File(resourceDir);
CMapParser parser = new CMapParser();
- CMap cMap = parser.parse(resourceDir, new FileInputStream(new File(inDir, "CMapTest")));
+ CMap cMap = parser.parse(new FileInputStream(new File(inDir, "CMapTest")));
// char mappings
byte[] bytes1 = {0, 1};
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/CMapManager.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/CMapManager.java?rev=1625834&r1=1625833&r2=1625834&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/CMapManager.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/CMapManager.java Wed Sep 17 21:38:38 2014
@@ -31,7 +31,6 @@ import java.util.Map;
*/
class CMapManager
{
- protected static final String CMAP_RESOURCE_ROOT = "org/apache/pdfbox/resources/cmap/";
protected static Map<String, CMap> cMapCache =
Collections.synchronizedMap(new HashMap<String, CMap>());
@@ -47,18 +46,13 @@ class CMapManager
{
return cmap;
}
- return parseCMap(ResourceLoader.loadResource(CMAP_RESOURCE_ROOT + cMapName), true);
- }
- /**
- * Parse an embedded CMap.
- *
- * @param cMapStream the CMap to be read
- * @return the parsed CMap
- */
- public static CMap parseCMap(InputStream cMapStream) throws IOException
- {
- return parseCMap(cMapStream, true);
+ CMapParser parser = new CMapParser();
+ CMap targetCmap = parser.parsePredefined(cMapName);
+
+ // limit the cache to predefined CMaps
+ cMapCache.put(targetCmap.getName(), targetCmap);
+ return targetCmap;
}
/**
@@ -67,18 +61,13 @@ class CMapManager
* @param cMapStream the CMap to be read
* @return the parsed CMap
*/
- private static CMap parseCMap(InputStream cMapStream, boolean isPredefined) throws IOException
+ public static CMap parseCMap(InputStream cMapStream) throws IOException
{
CMap targetCmap = null;
if (cMapStream != null)
{
CMapParser parser = new CMapParser();
- targetCmap = parser.parse(CMAP_RESOURCE_ROOT, cMapStream);
- // limit the cache to predefined CMaps
- if (isPredefined)
- {
- cMapCache.put(targetCmap.getName(), targetCmap);
- }
+ targetCmap = parser.parse(cMapStream);
}
return targetCmap;
}
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/ExternalFonts.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/ExternalFonts.java?rev=1625834&r1=1625833&r2=1625834&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/ExternalFonts.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/ExternalFonts.java Wed Sep 17 21:38:38 2014
@@ -36,6 +36,7 @@ import org.apache.fontbox.ttf.Type1Equiv
import org.apache.fontbox.ttf.TrueTypeFont;
import org.apache.fontbox.type1.Type1Font;
import org.apache.pdfbox.io.IOUtils;
+import org.apache.pdfbox.util.ResourceLoader;
/**
* External font service, locates non-embedded fonts via a pluggable FontProvider.
@@ -56,15 +57,15 @@ public final class ExternalFonts
private static FontProvider fontProvider;
/** fallback fonts, used as as a last resort */
- private static TrueTypeFont ttfFallbackFont;
- private static CFFCIDFont cidFallbackFont;
+ private static final TrueTypeFont ttfFallbackFont;
+ private static final CFFCIDFont cidFallbackFont;
static
{
try
{
// ttf
String ttfName = "org/apache/pdfbox/resources/ttf/LiberationSans-Regular.ttf";
- InputStream ttfStream = org.apache.fontbox.util.ResourceLoader.loadResource(ttfName);
+ InputStream ttfStream = ResourceLoader.loadResource(ttfName);
if (ttfStream == null)
{
throw new IOException("Error loading resource: " + ttfName);
@@ -74,7 +75,7 @@ public final class ExternalFonts
// cff
String cffName = "org/apache/pdfbox/resources/otf/AdobeBlank.otf";
- InputStream cffStream = org.apache.fontbox.util.ResourceLoader.loadResource(cffName);
+ InputStream cffStream = ResourceLoader.loadResource(cffName);
if (cffStream == null)
{
throw new IOException("Error loading resource: " + cffName);
Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/font/Type0FontValidator.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/font/Type0FontValidator.java?rev=1625834&r1=1625833&r2=1625834&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/font/Type0FontValidator.java (original)
+++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/font/Type0FontValidator.java Wed Sep 17 21:38:38 2014
@@ -248,7 +248,7 @@ public class Type0FontValidator extends
try
{
// extract information from the CMap stream
- CMap fontboxCMap = new CMapParser().parse(null, aCMap.getUnfilteredStream());
+ CMap fontboxCMap = new CMapParser().parse(aCMap.getUnfilteredStream());
int wmValue = fontboxCMap.getWMode();
String cmnValue = fontboxCMap.getName();