ITEXT 5 очень медленный при преобразовании HTML в PDFJAVA

Программисты JAVA общаются здесь
Anonymous
ITEXT 5 очень медленный при преобразовании HTML в PDF

Сообщение Anonymous »

У нас есть программное обеспечение, которое позволяет пользователю писать текст с базовым форматированием, таким как жирник. Текст отформатируется как HTML, а затем мы используем ITEXT для преобразования его в PDF позже. Все идет нормально, пока пользователь не захочет написать немного больше текста, смещений и прочее. Тогда ITEXT идет очень медленно.import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.nio.charset.Charset;
import java.util.Date;

import com.itextpdf.text.Document;
import com.itextpdf.text.pdf.PdfWriter;
import com.itextpdf.tool.xml.XMLWorkerFontProvider;
import com.itextpdf.tool.xml.XMLWorkerHelper;

long start = new Date().getTime();

String html = "";
for (int i = 0; i < 150; i++) {
html += "Sample text - Testing 123 - qwerty ASDF - 1234567890 - ";
}
html += "";

File tempFile = File.createTempFile("tempfile", ".pdf", null);
Document document = new Document();
document.setMargins(20f, 20f, 20f, 20f);
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(tempFile));
document.open();

XMLWorkerFontProvider fontImp = new XMLWorkerFontProvider(XMLWorkerFontProvider.DONTLOOKFORFONTS);
XMLWorkerHelper.getInstance().parseXHtml(writer, document, new ByteArrayInputStream(html.getBytes()), Charset.forName("UTF-8"), fontImp);
document.close();

long end = new Date().getTime();
System.out.println("File converted in " + (end - start) + " ms");
< /code>
Этот код генерирует 2 страницы PDF, и для этого требуется почти 10 секунд. Я не думаю, что это должно быть так медленно ... версия ITEXT - 5.5.13.3

Подробнее здесь: https://stackoverflow.com/questions/796 ... tml-to-pdf

Вернуться в «JAVA»