【发布时间】:2018-07-09 09:55:57
【问题描述】:
我正在使用iText html2PDF 2.0.0 版将HTML 转换为PDF。
在我的 HTML 文件中,有太多单词无法包含在表格列中。
它可以在iText 5 库中完成。
这是我的 HTML 和 java 文件。
<html>
<head>
<title>TM_Report</title>
<style type="text/css">
.div-half-width {
display: inline;
width: 50%;
color: red;
}
</style>
</head>
<body>
<table width="70%" style="">
<tbody>
<tr>
<td width="50%"><p style="width: 80%; background-color: fuchsia;">3aaaa22aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaa1</p></td>
<td width="50%"><p style="width: 80%; background-color: cyan;">4aaaaaa33aaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbaaaaaaaaaaaaaaaaa2</p></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</tbody>
</table>
<p style="word-break: break-all; width: 80%; background-color: fuchsia;">aaaa22aaaaaa-aaaaaaaaaabb-bbbbbbbbbbbbb-bbbbbbbbaaaa-aaaaaaaaaaaaa-aaaaa1aaaa22-aaaaaaaaaaaa-aaaabbbbbbbb-bbbbbbbb_bbbbbbbaa_aaaaaaaaaaa_aaaaaaaaa1aaaa22_aaaaaaaaaaa_aaaaabbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaa_aaaaaaaaaaaaa1</p>
</body>
</html>
CreateAccessiblePDF.java
public class Test {
public static final String sourceFolder = "res/pdfHTML/AccessiblePDF/";
public static final String destinationFolder = "target/output/pdfHTML/AccessiblePDF/";
public static final String[] files = { "Accessibility" };
public static void main(String[] args) throws IOException, InterruptedException {
for (String name : files) {
String htmlSource = sourceFolder + name + ".html";
String resourceFolder = sourceFolder;
String pdfDest = destinationFolder + name + ".pdf";
File file = new File(pdfDest);
file.getParentFile().mkdirs();
new CreateAccessiblePDF().createPdf(htmlSource, pdfDest, resourceFolder);
}
}
public void createPdf(String src, String dest, String resources) throws IOException {
try {
FileOutputStream outputStream = new FileOutputStream(dest);
WriterProperties writerProperties = new WriterProperties();
writerProperties.addXmpMetadata();
PdfWriter pdfWriter = new PdfWriter(outputStream, writerProperties);
PdfDocument pdfDoc = new PdfDocument(pdfWriter);
ConverterProperties props = new ConverterProperties();
HtmlConverter.convertToPdf(new FileInputStream(src), pdfDoc, props);
pdfDoc.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
我什至尝试过样式表“table-layout:fixed;”在表中和“断字:全部;”在列中,但尽管它在 Itext 7 "html2pdf.HtmlConverter" 类中不起作用。
有没有什么办法可以把不包含空格(只有字符)的单词换行?
【问题讨论】:
标签: itext7