根据HTML内容设置iText 7页面大小
我有以下Java程序来创建iText PDF:根据HTML内容设置iText 7页面大小,itext,itext7,html2pdf,Itext,Itext7,Html2pdf,我有以下Java程序来创建iText PDF: //Create the PDF file public int CreatePDF(String[] pSrc, String pDest) throws IOException { //Initialize ConverterProperties vProperties = new ConverterProperties(); //Adding
//Create the PDF file
public int CreatePDF(String[] pSrc,
String pDest)
throws IOException
{
//Initialize
ConverterProperties vProperties = new ConverterProperties();
//Adding the fonts
FontProvider vfontProvider = new DefaultFontProvider(false, false, false);
for (String font : FONTS)
{
FontProgram vfontProgram = FontProgramFactory.createFont(font);
vfontProvider.addFont(vfontProgram);
}
vProperties.setFontProvider(vfontProvider);
PdfWriter vWriter = new PdfWriter(pDest, new WriterProperties().setCompressionLevel(9));
PdfDocument vPDF = new PdfDocument(vWriter);
PdfMerger vMerger = new PdfMerger(vPDF);
//Convert to PDF
for (String vHTML : pSrc)
{
ByteArrayOutputStream vArrByteAOS = new ByteArrayOutputStream();
PdfDocument vDoc = new PdfDocument(new PdfWriter(vArrByteAOS, new WriterProperties().setCompressionLevel(9)));
vDoc.setDefaultPageSize(new PageSize(735, 1080));
HtmlConverter.convertToPdf(vHTML, vDoc, vProperties);
vDoc = new PdfDocument(new PdfReader(new ByteArrayInputStream(vArrByteAOS.toByteArray())));
vMerger.merge(vDoc, 1, vDoc.getNumberOfPages());
vDoc.close();
}
vPDF.close();
return 0;
}
如何根据HTML内容(pSrc)的大小设置页面高度(现在硬编码为1080),以确保它适合一个页面。请阅读HTML-to-PDF教程,更具体地说是的“将HTML页面转换为单页PDF”部分。非常感谢。这很有帮助。