提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|产品更新|编辑:李显亮|2021-03-02 09:59:24.797|阅读 860 次
概述: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@pclwef.cn
知名C/C++开发工具CLion全新发布v2024.3,新版本新语言引擎有显著改进等,欢迎下载新版体验!
强大的VS插件CodeRush已正式发布v24.2.3,新版本现在可以运行xUnit.Net v3测试等,欢迎下载最新版体验!
Spire.PDF 10.12.4 最新版本支持在进行多页打印时设置自动旋转方向。同时,一些已知问题也在本次更新中被成功修复,例如打印 PDF 文档时内容丢失的问题,欢迎下载体验~
日程安排控件dhtmlxScheduler v7.2全新发布,新版本增强并增加了编辑、修改等多个操作体验,欢迎下载最新版试用~
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢