JavaFX PrinterJob打印随机字符而不是常规文本

时间:2016-09-11 23:05:49

标签: java javafx

我试图打印发票(AnchorPane),其中包含许多包含发票信息的标签,GridPanes,VBox等。除了缩放之外,我只能打印随机字符而不是发票信息。

我很确定我错过了什么或做错了什么,但我无法弄清楚。非常感谢所有帮助。

下面用于打印的代码:

Printer defaultPrinter = Printer.getDefaultPrinter();

    // Create a printer job for the default printer
    PrinterJob job = PrinterJob.createPrinterJob();

    if (job != null)
    {

        // Print the node
        boolean printed = job.printPage(ap_invoice);

        if (printed)
        {
            // End the printer job
            System.out.println("Print Job Successful");
            job.endJob();
        }
        else
        {
            // Write Error Message
            System.out.println("Print Job Faild);
        }
    }

1 个答案:

答案 0 :(得分:2)

我在OS X上使用" System" font,这是特定于JavaFX的东西。我转而使用" Verdana" (即,操作系统名称已知的字体),问题就消失了。