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/19 23:25:34 UTC

svn commit: r1626340 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/font/TTFGlyph2D.java

Author: jahewson
Date: Fri Sep 19 21:25:34 2014
New Revision: 1626340

URL: http://svn.apache.org/r1626340
Log:
PDFBOX-2304: Render TTF GID 0

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/font/TTFGlyph2D.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/font/TTFGlyph2D.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/font/TTFGlyph2D.java?rev=1626340&r1=1626339&r2=1626340&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/font/TTFGlyph2D.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/font/TTFGlyph2D.java Fri Sep 19 21:25:34 2014
@@ -123,23 +123,7 @@ public class TTFGlyph2D implements Glyph
         else
         {
             GlyphData glyph = ttf.getGlyph().getGlyph(gid);
-            if (gid == 0 || gid >= ttf.getMaximumProfile().getNumGlyphs())
-            {
-                if (isCIDFont)
-                {
-                    int cid = ((PDType0Font) font).codeToCID(code);
-                    String cidHex = String.format("%04x", cid);
-                    LOG.warn("No glyph for " + code + " (CID " + cidHex + ") in font " +
-                             font.getName());
-                }
-                else
-                {
-                    LOG.warn("No glyph for " + code + " in font " + font.getName());
-                }
-                glyphPath = new GeneralPath();
-                glyphs.put(gid, glyphPath);
-            }
-            else if (glyph == null)
+            if (glyph == null)
             {
                 // empty glyph (e.g. space, newline)
                 glyphPath = new GeneralPath();
@@ -147,6 +131,21 @@ public class TTFGlyph2D implements Glyph
             }
             else
             {
+                if (gid == 0 || gid >= ttf.getMaximumProfile().getNumGlyphs())
+                {
+                    if (isCIDFont)
+                    {
+                        int cid = ((PDType0Font) font).codeToCID(code);
+                        String cidHex = String.format("%04x", cid);
+                        LOG.warn("No glyph for " + code + " (CID " + cidHex + ") in font " +
+                                font.getName());
+                    }
+                    else
+                    {
+                        LOG.warn("No glyph for " + code + " in font " + font.getName());
+                    }
+                }
+
                 glyphPath = glyph.getPath();
                 if (hasScaling)
                 {