没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|产品更新|编辑:李显亮|2021-03-02 09:59:24.797|阅读 948 次
概述:JAVA应用程序浏览器集成控件JxBrowser更新至7.13, 在此版本中,Chromium引擎已升级到版本88,支持macOS Big Sur,引入了期待已久的打印API,欢迎下载体验。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
JxBrowser是将基于Chromium的浏览器与Java应用程序集成,以处理和显示HTML5、CSS3、JavaScript、Flash等。
近日,JxBrowser v7.13发布啦! 在此版本中,Chromium引擎已升级到版本88,支持macOS Big Sur,引入了期待已久的打印API,允许以编程方式打印网页和PDF,欢迎下载体验。
新增功能
Chromium 88
Chromium已更新至版本88.0.4324.182。在此Chromium构建中,其与JxBrowser封装在一起的某些功能已被删除或更改,因此jxbrowser的库版本在公共API中引入了一些重大更改。
macOS Big Sur
现在可以在基于英特尔的Mac上的macOS Big Sur上运行JxBrowser了。同时计划在下一个版本中引入对 Apple Silicon M1 架构的支持。现在可以在 Rosetta 2 仿真模式下使用 JxBrowser。
打印API
现在,可以以编程方式打印网页或PDF文档,而无需显示“打印预览”对话框。使用新的打印API,可以:
下面的示例演示如何将当前加载的网页另存为PDF:
Browser browser = engine.newBrowser();
CountDownLatch latch = new CountDownLatch(1);
// Allow printing web pages programmatically
browser.set(PrintCallback.class, (params, tell) -> tell.print());
// When a web page is about to print, configure the print settings and proceed
browser.set(PrintHtmlCallback.class, (params, tell) -> {
// Select PDF printer as the target device
PdfPrinter<HtmlSettings> pdfPrinter = params.printers().pdfPrinter();
// Access the print job to configure its settings and register events
PrintJob<HtmlSettings> printJob = pdfPrinter.printJob();
// Listen to the print completed event
printJob.on(PrintCompleted.class, event -> latch.countDown());
// Configure the required print settings including path to the target PDF file
printJob.settings()
.pdfFilePath(Paths.get("/Users/vladimir/Desktop/google.pdf"))
.apply();
// Notify the engine that we want to print using the given PDF printer
tell.proceed(pdfPrinter);
});
// Load web page and wait until it's loaded completely
browser.navigation().loadUrlAndWait("//google.com");
// Print the currently loaded web page
browser.mainFrame().ifPresent(Frame::print);
// Await until printing has been completed
if (latch.await(30, TimeUnit.SECONDS)) {
throw new IllegalStateException("Failed to save web page as PDF within 30 sec");
}
定制方案
拦截请求的方式得到了改进。要使用自定义jxb方案拦截URL请求,请添加相应的方案,并将其与拦截回调相关联,如下例所示:
EngineOptions.Builder optionsBuilder = EngineOptions.newBuilder(OFF_SCREEN);
optionsBuilder.addScheme(Scheme.of("jxb"), params -> {
UrlRequestJob job = params.newUrlRequestJob(
UrlRequestJob.Options.newBuilder(HttpStatus.OK)
.addHttpHeader(HttpHeader.of("Content-Type", "text/html"))
.build());
job.write("<html><body>Hello!</body></html>".getBytes(UTF_8));
job.complete();
return Response.intercept(job);
});
Engine engine = Engine.newInstance(optionsBuilder.build());
现在,如果加载jxb://anyhost/anypage.html,则将拦截URL请求,并调用关联的回调。将获得以下输出:
外部应用
操作系统中安装的某些应用程序可能与特定的URI方案相关联。当用户使用与已安装的应用程序关联的方案导航到URL时,Chromium将显示一个对话框,用户可以在其中确定是否应在关联的外部应用程序中打开链接。
在此更新中,引入了回调,可以使用该回调来拦截此类情况并向最终用户显示您自己的对话框,或者以编程方式打开外部应用程序而不会提示用户。例如:
browser.set(OpenExternalAppCallback.class, (params, tell) -> tell.open());
创建Swing,JavaFX和SWTBrowserView实例时,此回调将自动注册(如果尚未注册),并显示相应的对话框:
改进
Bug修复
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn




数据库工具DataGrip v2025.2正式发布,新版本为 AI 聊天上下文附加数据库对象的功能等,欢迎下载最新版体验!
本文将介绍界面组件Telerik UI for WinForms在今年第三个重大版本2025 Q3中发布的新功能,欢迎下载最新版组件体验!
界面控件DevExpress WinForms v25.2将于今年年末左右更新,新版本将继续升级报表组件功能等,欢迎关注我们及时获取最新消息~
DevExpress WinForms控件v25.1日前已经全新发布,新版本的Ribbon、PDF Viewer(查看器)等组件功能全新升级等,欢迎下载最新版体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营