I would like to see a PDF that triggers this problem.

Paulo

________________________________________
From: Juan Antonio de la Puente [[email protected]]
Sent: Thursday, March 18, 2010 5:36 PM
To: [email protected]
Subject: [iText-questions] BaseFonts.getDocumentFonts crashes

Hi,

I have found that BaseFonts.getDocumentFonts throws a null pointer exception 
with some PDF files. I have traced the exception to the end of the 
recourseFonts method, in particular line 1449 of the BaseFonts source file:

1446       PdfDictionary xobj = resources.getAsDict(PdfName.XOBJECT);
1447        if (xobj != null) {
1448            for (Object element : xobj.getKeys()) {
1449                recourseFonts(xobj.getAsDict((PdfName)element), hits, 
fonts, level);
1450            }
1451        }

It seems that xobj.getAsDict((PdfName)element returns a null value in some 
cases. I have changed the above code as follows:

                PdfDictionary xobj = resources.getAsDict(PdfName.XOBJECT);
                if (xobj != null) {
                    for (Object element : xobj.getKeys()) {
                        PdfDictionary dict = xobj.getAsDict((PdfName)element);
                        if (dict != null) recourseFonts(dict, hits, fonts, 
level);
                    }
                }

and it works. Anybody has had the same problem?

-- Juan

Aviso Legal:
Esta mensagem é destinada exclusivamente ao destinatário. Pode conter 
informação confidencial ou legalmente protegida. A incorrecta transmissão desta 
mensagem não significa a perca de confidencialidade. Se esta mensagem for 
recebida por engano, por favor envie-a de volta para o remetente e apague-a do 
seu sistema de imediato. É proibido a qualquer pessoa que não o destinatário de 
usar, revelar ou distribuir qualquer parte desta mensagem. 

Disclaimer:
This message is destined exclusively to the intended receiver. It may contain 
confidential or legally protected information. The incorrect transmission of 
this message does not mean the loss of its confidentiality. If this message is 
received by mistake, please send it back to the sender and delete it from your 
system immediately. It is forbidden to any person who is not the intended 
receiver to use, distribute or copy any part of this message.


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions

Buy the iText book: http://www.1t3xt.com/docs/book.php
Check the site with examples before you ask questions: 
http://www.1t3xt.info/examples/
You can also search the keywords list: http://1t3xt.info/tutorials/keywords/

Reply via email to