PDFBox打印输出具有不可打印的字符

时间:2014-01-30 22:23:50

标签: java pdf printing pdfbox

我正在使用PDFBox尝试打印出一些pdf文档。它们是pdf开头所以我根本不会将文本转换为pdf。我想做的就是拿走文件并打印出来。问题是,当我这样做时,我会在一个方框中得到随机问号而不是某些字符。通过各种印刷品并不总是相同的。有时它不想打印大写X有时它是资本H或W。它似乎总是像大写字母。当我在Adobe中打开文档时,一切都显示并打印正常。只有当我从Java打印它时才会这样。看起来文档字体都是'PDTrueTypeFont'。任何人都知道可能会发生什么?

我的代码:

PDDocument document = null;
try {
    document = PDDocument.load(queue.getDocumentPath() + "\\" + queue.getDocumentName());
} 
catch (IOException e) {
    logger_.error("Error loading document [" + queue.getDocumentName() + "]", e);
}

try {
    PrinterJob job = PrinterJob.getPrinterJob();
    PrintService service = getPrintService(queue.getPrinterName());
    job.setPrintService(service);
    job.setJobName(queue.getDocumentName());
    document.silentPrint(job);
    queue.setPrintedFlag(true);
    queue.setCompleteTimestamp(new Date());
    queue.persist();
} catch (PrinterException e) {
    logger_.fatal("Error printing pages [" + queue.getDocumentName() + "]", e);
    success = false;
}

0 个答案:

没有答案