我想从 html 创建 pdf,我使用 itext 库我在 pdf 中遇到波兰字体问题我使用以下代码:
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.StringReader;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.FontFactory;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.html.simpleparser.HTMLWorker;
import com.itextpdf.text.html.simpleparser.StyleSheet;
import com.itextpdf.text.pdf.PdfWriter;
public class PolishFont {
public static void main(String ... args ) throws DocumentException, IOException
{
String html = "ąśżźćęó";
StringReader reader = new StringReader(html);// step 1: creation of a document-object
Document document = new Document(PageSize.LETTER);
PdfWriter.getInstance(document, new FileOutputStream("c://temp//testpdf1.pdf"));
HTMLWorker worker = new HTMLWorker(document);
document.open();
FontFactory.register("C:\\Windows\\Fonts\\times.TTF", "arial unicode ms");
StyleSheet styleSheet = new StyleSheet();
styleSheet.loadTagStyle("body", "encoding", "Identity-H");
worker.setStyleSheet(styleSheet);
worker.parse(reader);
document.close();
}
}
但是pdf只显示“ó”,哪里出错了?