从 7.38.2 到 7.39.0
打印设置
在 JxBrowser 7.39.0 版本中,我们移除了 Scaling.fitToPage()
和 Scaling.fitToPaper()
方法。这两个方法仅在使用 系统打印机打印 PDF 文件 时有用。当打印 HTML 页面或使用内置 PDF 打印机时,这些方法实际上是空操作(no-op),会让开发者感到困惑。
作为替代,我们引入了一个新的 Fit.fit()
方法,该方法仅适用于使用系统打印机打印 PDF 文件:
7.38.2 及更早版本:
browser.set(PrintPdfCallback.class, (params, tell) -> {
SystemPrinter<PdfSettings> printer = params.printers().list().get(0);
PdfSettings settings = printer.printJob().settings();
settings.scaling(Scaling.fitToPage());
...
tell.proceed(printer);
});
browser.set(
PrintPdfCallback::class.java,
PrintPdfCallback { params: PrintPdfCallback.Params, tell: PrintPdfCallback.Action? ->
val printer = params.printers().list()[0]
val settings = printer.printJob().settings()
settings.scaling(Scaling.fitToPage());
...
tell.proceed(printer);
})
7.39.0:
browser.set(PrintPdfCallback.class, (params, tell) -> {
SystemPrinter<PdfSettings> printer = params.printers().list().get(0);
PdfSettings settings = printer.printJob().settings();
settings.fit(Fit.FIT_TO_PAGE);
...
tell.proceed(printer);
});
browser.set(
PrintPdfCallback::class.java,
PrintPdfCallback { params: PrintPdfCallback.Params, tell: PrintPdfCallback.Action? ->
val printer = params.printers().list()[0]
val settings = printer.printJob().settings()
settings.fit(Fit.FIT_TO_PAGE)
...
tell.proceed(printer);
})