You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@pdfbox.apache.org by Szirbik Ferenc <sz...@euronetrt.hu> on 2016/04/21 13:23:39 UTC
PdfBox Nullpointer error
Dear PdfBox Developers!
I tried to use the PdfBox 2.0, but when i started to print a PDF a
NullPointerException had been thrown.
Here is te stack trace:
java.lang.NullPointerException
at org.apache.fontbox.ttf.TrueTypeFont.nameToGID(TrueTypeFont.java:580)
at
org.apache.pdfbox.pdmodel.font.PDTrueTypeFont.codeToGID(PDTrueTypeFont.java:559)
at
org.apache.pdfbox.rendering.TTFGlyph2D.getGIDForCharacterCode(TTFGlyph2D.java:105)
at
org.apache.pdfbox.rendering.TTFGlyph2D.getPathForCharacterCode(TTFGlyph2D.java:92)
at
org.apache.pdfbox.rendering.PageDrawer.drawGlyph2D(PageDrawer.java:353)
at
org.apache.pdfbox.rendering.PageDrawer.showFontGlyph(PageDrawer.java:334)
at
org.apache.pdfbox.contentstream.PDFStreamEngine.showGlyph(PDFStreamEngine.java:744)
at
org.apache.pdfbox.contentstream.PDFStreamEngine.showText(PDFStreamEngine.java:701)
at
org.apache.pdfbox.contentstream.PDFStreamEngine.showTextString(PDFStreamEngine.java:564)
at
org.apache.pdfbox.contentstream.operator.text.ShowText.process(ShowText.java:55)
at
org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:815)
at
org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:472)
at
org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:446)
at
org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:189)
at
org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:208)
at
org.apache.pdfbox.rendering.PDFRenderer.renderPageToGraphics(PDFRenderer.java:169)
at org.apache.pdfbox.printing.PDFPrintable.print(PDFPrintable.java:184)
at sun.print.RasterPrinterJob.printPage(RasterPrinterJob.java:2106)
at sun.print.RasterPrinterJob.print(RasterPrinterJob.java:1488)
at sun.print.RasterPrinterJob.print(RasterPrinterJob.java:1331)
at ... .printPDF(... .java:63)
I think the problem is that in the readPostScriptNames() where is a
chance that the postScriptNames remains null.
// look up in 'post' table
--> readPostScriptNames();
Integer gid = postScriptNames.get(name);
if (gid != null && gid > 0 && gid <
getMaximumProfile().getNumGlyphs())
{
return gid;
}
*Szirbik, Ferenc*
ChaRM fejlesztő
/Euronet Magyarország Zrt./
1138 Budapest, Váci út 188.
Mobil: +36 20 778 2839
E-mail:szirbik.ferenc@euronetrt.hu <ma...@euronetrt.hu>
http://www.euronetrt.hu <http://www.euronetrt.hu/> http://www.charm.hu <http://www.charm.hu/>
Re: PdfBox Nullpointer error
Posted by Tilman Hausherr <TH...@t-online.de>.
It's sad you never answered, but the proposed change has been made in
https://issues.apache.org/jira/browse/PDFBOX-2854
Tilman
Am 21.04.2016 um 20:08 schrieb Tilman Hausherr:
> Could you upload the PDF file somewhere?
>
> I'd make this change:
>
> public int nameToGID(String name) throws IOException
> {
> // look up in 'post' table
> readPostScriptNames();
> if (postScriptNames != null)
> {
> Integer gid = postScriptNames.get(name);
> if (gid != null && gid > 0 && gid <
> getMaximumProfile().getNumGlyphs())
> {
> return gid;
> }
> }
>
>
> but I'm wondering what happens after that with your file.
>
> Tilman
>
> Am 21.04.2016 um 13:23 schrieb Szirbik Ferenc:
>> Dear PdfBox Developers!
>>
>> I tried to use the PdfBox 2.0, but when i started to print a PDF a
>> NullPointerException had been thrown.
>>
>> Here is te stack trace:
>> java.lang.NullPointerException
>> at
>> org.apache.fontbox.ttf.TrueTypeFont.nameToGID(TrueTypeFont.java:580)
>> at
>> org.apache.pdfbox.pdmodel.font.PDTrueTypeFont.codeToGID(PDTrueTypeFont.java:559)
>> at
>> org.apache.pdfbox.rendering.TTFGlyph2D.getGIDForCharacterCode(TTFGlyph2D.java:105)
>> at
>> org.apache.pdfbox.rendering.TTFGlyph2D.getPathForCharacterCode(TTFGlyph2D.java:92)
>> at
>> org.apache.pdfbox.rendering.PageDrawer.drawGlyph2D(PageDrawer.java:353)
>> at
>> org.apache.pdfbox.rendering.PageDrawer.showFontGlyph(PageDrawer.java:334)
>> at
>> org.apache.pdfbox.contentstream.PDFStreamEngine.showGlyph(PDFStreamEngine.java:744)
>> at
>> org.apache.pdfbox.contentstream.PDFStreamEngine.showText(PDFStreamEngine.java:701)
>> at
>> org.apache.pdfbox.contentstream.PDFStreamEngine.showTextString(PDFStreamEngine.java:564)
>> at
>> org.apache.pdfbox.contentstream.operator.text.ShowText.process(ShowText.java:55)
>> at
>> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:815)
>> at
>> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:472)
>> at
>> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:446)
>> at
>> org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
>> at
>> org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:189)
>> at
>> org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:208)
>> at
>> org.apache.pdfbox.rendering.PDFRenderer.renderPageToGraphics(PDFRenderer.java:169)
>> at
>> org.apache.pdfbox.printing.PDFPrintable.print(PDFPrintable.java:184)
>> at sun.print.RasterPrinterJob.printPage(RasterPrinterJob.java:2106)
>> at sun.print.RasterPrinterJob.print(RasterPrinterJob.java:1488)
>> at sun.print.RasterPrinterJob.print(RasterPrinterJob.java:1331)
>> at ... .printPDF(... .java:63)
>>
>> I think the problem is that in the readPostScriptNames() where is a
>> chance that the postScriptNames remains null.
>>
>> // look up in 'post' table
>> --> readPostScriptNames();
>> Integer gid = postScriptNames.get(name);
>> if (gid != null && gid > 0 && gid <
>> getMaximumProfile().getNumGlyphs())
>> {
>> return gid;
>> }
>> *Szirbik, Ferenc*
>> ChaRM fejleszt
>> /Euronet Magyarorszg Zrt./
>> 1138 Budapest, Vci t 188.
>> Mobil: +36 20 778 2839
>> E-mail:szirbik.ferenc@euronetrt.hu <ma...@euronetrt.hu>
>>
>> http://www.euronetrt.hu <http://www.euronetrt.hu/> http://www.charm.hu <http://www.charm.hu/>
Re: PdfBox Nullpointer error
Posted by Tilman Hausherr <TH...@t-online.de>.
Could you upload the PDF file somewhere?
I'd make this change:
public int nameToGID(String name) throws IOException
{
// look up in 'post' table
readPostScriptNames();
if (postScriptNames != null)
{
Integer gid = postScriptNames.get(name);
if (gid != null && gid > 0 && gid <
getMaximumProfile().getNumGlyphs())
{
return gid;
}
}
but I'm wondering what happens after that with your file.
Tilman
Am 21.04.2016 um 13:23 schrieb Szirbik Ferenc:
> Dear PdfBox Developers!
>
> I tried to use the PdfBox 2.0, but when i started to print a PDF a
> NullPointerException had been thrown.
>
> Here is te stack trace:
> java.lang.NullPointerException
> at
> org.apache.fontbox.ttf.TrueTypeFont.nameToGID(TrueTypeFont.java:580)
> at
> org.apache.pdfbox.pdmodel.font.PDTrueTypeFont.codeToGID(PDTrueTypeFont.java:559)
> at
> org.apache.pdfbox.rendering.TTFGlyph2D.getGIDForCharacterCode(TTFGlyph2D.java:105)
> at
> org.apache.pdfbox.rendering.TTFGlyph2D.getPathForCharacterCode(TTFGlyph2D.java:92)
> at
> org.apache.pdfbox.rendering.PageDrawer.drawGlyph2D(PageDrawer.java:353)
> at
> org.apache.pdfbox.rendering.PageDrawer.showFontGlyph(PageDrawer.java:334)
> at
> org.apache.pdfbox.contentstream.PDFStreamEngine.showGlyph(PDFStreamEngine.java:744)
> at
> org.apache.pdfbox.contentstream.PDFStreamEngine.showText(PDFStreamEngine.java:701)
> at
> org.apache.pdfbox.contentstream.PDFStreamEngine.showTextString(PDFStreamEngine.java:564)
> at
> org.apache.pdfbox.contentstream.operator.text.ShowText.process(ShowText.java:55)
> at
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:815)
> at
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:472)
> at
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:446)
> at
> org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
> at
> org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:189)
> at
> org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:208)
> at
> org.apache.pdfbox.rendering.PDFRenderer.renderPageToGraphics(PDFRenderer.java:169)
> at
> org.apache.pdfbox.printing.PDFPrintable.print(PDFPrintable.java:184)
> at sun.print.RasterPrinterJob.printPage(RasterPrinterJob.java:2106)
> at sun.print.RasterPrinterJob.print(RasterPrinterJob.java:1488)
> at sun.print.RasterPrinterJob.print(RasterPrinterJob.java:1331)
> at ... .printPDF(... .java:63)
>
> I think the problem is that in the readPostScriptNames() where is a
> chance that the postScriptNames remains null.
>
> // look up in 'post' table
> --> readPostScriptNames();
> Integer gid = postScriptNames.get(name);
> if (gid != null && gid > 0 && gid <
> getMaximumProfile().getNumGlyphs())
> {
> return gid;
> }
> *Szirbik, Ferenc*
> ChaRM fejlesztő
> /Euronet Magyarország Zrt./
> 1138 Budapest, Váci út 188.
> Mobil: +36 20 778 2839
> E-mail:szirbik.ferenc@euronetrt.hu <ma...@euronetrt.hu>
>
> http://www.euronetrt.hu <http://www.euronetrt.hu/> http://www.charm.hu <http://www.charm.hu/>