Tôi đang dán một tệp PDF hiện có với thông tin bổ sung bằng cách sử dụng thư viện iText. Thông tin bổ sung là văn bản sẽ được hiển thị bằng phông chữ TTF tùy chỉnh.Phông chữ ttf nhúng iText không hiển thị trong Adobe Reader
Vấn đề là văn bản không hiển thị trong Adobe Reader. Trình xem PDF khác, chẳng hạn như trình đọc eVince mặc định trong Ubuntu và trình đọc PDF trực tuyến của Google hiển thị văn bản được đóng dấu trong phông chữ được nhúng tùy chỉnh tốt.
tôi đã cố gắng nhiều mã hóa, chẳng hạn như CP1251, BaseFont.Identity_H, ...
Mã nơi sự kỳ diệu xảy ra:
PdfReader pdfReader = new PdfReader(new FileInputStream(inputPdf));
PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileOutputStream("stamped.pdf"));
PdfContentByte canvas = pdfStamper.getOverContent(1);
String text = "The stamp";
BaseFont bf = BaseFont.createFont("assign.ttf", "Cp1251",BaseFont.EMBEDDED);
canvas.beginText();
canvas.setColorFill(BaseColor.BLUE);
canvas.setFontAndSize(bf, 13);
canvas.moveText(310, 600);
canvas.showText(text);
pdfStamper.close();
Khi bạn chuyển đến Tài liệu> Thuộc tính và mở tab Phông chữ, bạn thấy gì? Bạn có thấy phông chữ không? –
Tôi thấy vấn đề: có thể bạn đang sử dụng phiên bản cũ của iText! –