java - How to build a PDF file under multiple threads document.close() performance? -


i build pdf file under multiple threads , add text embedded font(the font true type unicode encoding). code snippet below:

basefont basefont = basefont.createfont("/pathto/font.ttf", basefont.identity_h, basefont.embedded); font chinesefont = new font(basefont, 14, font.bold); pdfreader pdfreader = new pdfreader(tmpfile); document doc = new document(pdfreader.getpagesize(1), 50, 50, 50, 50); bytearrayoutputstream baos = new bytearrayoutputstream(); pdfwriter pdfwriter = pdfwriter.getinstance(doc, baos); pdfwriter.setencryption(null, null, pdfwriter.allow_copy, pdfwriter.standard_encryption_128);            doc.open(); pdfimportedpage importpage = pdfwriter.getimportedpage(pdfreader, 1); doc.newpage(); pdfcontent.addtemplate(importpage, 0, 0);            doc.add(new paragraph("測試", chinesefont)); //chinese-characters doc.close();            //**takes long time**   

but doc.close() takes long time. problem?

at java/io/filedescriptor.read(native method) @ java/io/filedescriptor.read(filedescriptor.java:73(compiled code)) @ java/io/randomaccessfile.read(randomaccessfile.java:319(compiled code)) @ com/lowagie/text/pdf/randomaccessfileorarray.read(randomaccessfileorarray.java:183(compiled code)) @ com/lowagie/text/pdf/randomaccessfileorarray.readint(randomaccessfileorarray.java:482(compiled code)) @ com/lowagie/text/pdf/truetypefontsubset.readloca(truetypefontsubset.java:276(compiled code)) @ com/lowagie/text/pdf/truetypefontsubset.process(truetypefontsubset.java:139(compiled code)) @ com/lowagie/text/pdf/truetypefontunicode.writefont(truetypefontunicode.java:379(compiled code)) @ com/lowagie/text/pdf/fontdetails.writefont(fontdetails.java:280(compiled code)) @ com/lowagie/text/pdf/pdfwriter.addsharedobjectstobody(pdfwriter.java:1251(compiled code)) @ com/lowagie/text/pdf/pdfwriter.close(pdfwriter.java:1173(compiled code)) @ com/lowagie/text/pdf/pdfdocument.close(pdfdocument.java:830(compiled code)) @ com/lowagie/text/document.close(document.java:495(compiled code)) 


Comments

Popular posts from this blog

Is there a better way to structure post methods in Class Based Views -

performance - Why is XCHG reg, reg a 3 micro-op instruction on modern Intel architectures? -

jquery - Responsive Navbar with Sub Navbar -