乐于分享
好东西不私藏

客户案例|iLovePDF-迁移至Qt 6与QML,实现更高效的UI开发

客户案例|iLovePDF-迁移至Qt 6与QML,实现更高效的UI开发

迁移至Qt 6与QML,实现更高效的UI开发

2x

应用性能提升

98%

代码在双平台间复用率

3x

开发者上手速度提升

iLovePDF是一款日活用户超过1,500 万的在线PDF管理平台。该公司同时提供iLovePDF桌面版,基于Qt应用开发框架构建,让Windows与macOS用户能够在数秒内完成繁重的PDF离线处理任务。

开发团队的工作效率大幅提升,日常工作也轻松了许多。

Alexander Giss, iLovePDF, 技术负责人

Qt 6迁移要点

现代、流畅、视觉效果丰富的用户界面

前端与后端架构清晰分离

性能大幅提升

挑战:桌面体验的现代化升级

iLovePDF此前已基于Qt 5和早期的Qt Widgets模块构建了一款成熟的桌面应用程序。然而,由于公司始终将易用性置于首位,UI开发面临日益增大的压力,以满足用户持续演进的期望。

最初的想法是继续用Qt Widgets开发新版桌面应用,因为我们的开发者对QML完全不了解。iLovePDF桌面团队技术负责人Alexander Giss表示。

桌面应用面临的主要挑战包括:

1

用户界面现代化:需要对UI进行大幅改版,以提供更流畅、更直观、更具视觉吸引力的用户体验。

2

加速开发效率:团队需要提升UI开发速度,以更快地推出新功能并响应用户反馈。

3

保持性能和跨平台支持:团队希望延续Qt 5时代的高速文件处理能力,并继续以单一代码库同时支持Windows和macOS平台。

最初的目标只是让UI变得好看,但需求随后不断扩展,包括引入深色模式、动画效果等。继续用Qt Widgets实现这些需求已经不再合适。Giss指出。

使用Qt 6是更好的选择,因为开发速度会更快。

Alexander Giss, iLovePDF,  技术负责人

解决方案:iLovePDF为何选择Qt 6和QML

在迁移至Qt 6的同时,iLovePDF团队还决定切换至Qt的声明式QML语言。这开启了全新层次的UI开发模式,为几乎所有技术需求提供了开箱即用的解决方案。

迁移过程相当顺畅,因为我们选择了对UI部分进行完整重写。虽然耗费了一定时间,但我们得以彻底清除历史缺陷与限制,并借助QML建立了非常清晰的架构。Giss评价道。

团队高度评价了QML带来的前后端清晰分离。QML声明式的"嵌套元素"结构让开发者能够直观地理解UI的整体架构,降低了理解成本,也使进一步扩展变得更为便捷。

此外,新架构支持以单一代码库高效开发和维护Windows与macOS双平台桌面应用,大幅节省了时间与资源投入。

在Qt框架下,项目中97%–98%的代码在两个平台之间完全共用。仅有极少数特殊例外,其余代码均可无障碍地在双平台上构建。这不仅节省了开发时间,也让团队中的任何成员都能在Windows和macOS上无差别地开发。iLovePDF高级软件工程师Aguilera补充。

迁移至Qt 6的决策确实物有所值。

Sergio Aguilera, iLovePDF高级软件工程师

了解Qt框架与QML

iLovePDF从Qt 6与QML中受益

iLovePDF对迁移至Qt 6和QML的决策非常满意。团队现已从开发效率提升、应用性能大幅改善、出色的用户体验以及一系列加速工作流程的优化中持续受益。

1

快速掌握QML的学习曲线

新架构允许开发者专注于各自负责的模块。正因如此,新成员能够更快融入,整个团队的交付效率也得到了显著提升。

举个例子,一名开发者负责UI部分,另一名负责后端部分,最后将两者合并,直接就能运行。Giss赞叹。

这支精简团队的全栈开发效率已高到目前无需扩充人手的程度。

QML的核心就是UI开发本身。无论目标平台是什么,开发者专注于创建UI即可,其他的不需要考虑。Giss说道。

如今,桌面开发团队的所有成员都已熟练掌握QML,并随着Qt框架的持续演进不断更新自身知识体系。

例如,我们会参加Qt World Summit,努力跟上Qt 的演进节奏,并将新特性引入我们的代码。Giss总结道。

切换至QML后,新开发者的入职与培训效率提升了约3倍。

Curial Lloses, iLovePDF运营官

2

性能显著提升

为加快产品上市速度,iLovePDF最初将重心放在UI改进上,后端暂时保持不变。然而最终,团队还是对后端进行了重写,优化了文件转换、OCR等后端处理操作。由此,桌面端应用成为iLovePDF产品线中性能最强的一款。

我们现在充分利用QThread and QThreadPool调用处理器的全部算力。终端用户的电脑越强,应用的运行速度就越快。Giss解释道。

得益于Qt,桌面团队无需依赖第三方渲染组件,前后端均可自主开发实现。尽管这意味着相较于其他iLovePDF开发团队工作量更大,但凭借新架构带来的效率提升,桌面团队与其他团队保持着同步的功能交付节奏。

此外,该团队称赞其桌面应用程序在Qt 6上具有卓越性能。

举个例子,一名开发者负责UI部分,另一名负责后端部分,最后将两者合并,直接就能运行。Giss赞叹。

切换至QML后,渲染速度提升了约5–6倍。

Alexander Giss, iLovePDF技术负责人

3

下一代用户界面

作为一家高度以用户为中心的公司,iLovePDF对焕然一新、更加流畅的UI给予了高度评价。

借助QML,我们的用户界面在趣味性和直观性上已超越竞争对手。Giss表示。

对iLovePDF而言,让用户——包括非技术背景的普通用户——也能便捷地使用PDF工具、快速获得处理结果,至关重要。

QML赋予了我们前端设计更大的灵活性,真正让我们有能力打造出心目中理想的桌面应用。用户现在获得的体验非常舒适。iLovePDF 运营官、联合创始人之一 Lloses 补充道。

iLovePDF团队还构建了一套可复用的UI组件库,进一步加速了原型制作流程,也让开发者与设计师之间的协作实验更加高效。

我们能够非常快速地实现新功能。当设计团队有新想法时,借助QML,只需几个小时就能轻松画出UI草图并完成小型功能演示。Aguilera说道。

这也有助于建立并维持持续改进的良性循环。

使用QML,开发者可以精确看到UI层面发生的一切,从技术角度来说更加直观易懂,Giss称赞道。

此外,团队还高度称赞了Qt 6相较于Qt 5在图片处理、动画效果、阴影等视觉特效以及整体渲染能力方面的大幅提升。

我用相同的代码做了对比测试——代码是兼容的——切换到QML后,速度提升了约5–6倍,Giss说道。

团队还注意到Qt 6持续在演进。例如,QML底层的 JavaScript引擎和QML绘制机制在Qt 6的每个小版本中都在稳步改善。

深入了解 Qt 框架>

4

网络通信、实时功能和数据处理

iLovePDF对Qt 6的使用不仅限于UI开发。桌面团队还广泛使用了Qt的网络通信数据处理功能。

网络相关功能没有遇到任何问题,因为Qt框架非常易于理解,编写请求等操作都很直接。Giss提到。

文件系统访问等核心任务由Qt Core高效处理;Qt WebSockets支持即时文档传输等实时功能;本地数据持久化则由Qt SQL负责,确保一致的离线体验。

在网络通信方面,Giss重点介绍了使用Qt构建身份验证与授权机制的便捷性——这套机制用于管控用户对iLovePDF高级订阅功能的访问权限。此外,iLovePDF桌面版还利用Qt Network收集匿名使用统计数据,并在出现问题时将用户数据发送给支持团队。

卓越工具与支持带来的额外效率提升

1

开发工具

iLovePDF开发团队认为Qt Creator IDE在日常开发工作中极为实用。

Qt Creator在过去两年里进步显著,每次更新都在稳步提升。Aguilera说道。

团队特别称赞的一项IDE功能是:能够查找和比较代码变更记录,并追溯到具体的提交者。这大幅加快了缺陷排查与修复的流程。

在排查缺陷时,找到引入问题代码行的人往往很有帮助,因为当初这样写可能有其原因。Qt Creator只需几次点击就能找到准确的提交记录——是谁在什么时候提交的,一目了然。Giss解释道。

2

Qt支持服务

iLovePDF支持团队每天处理大量用户反馈。因此,一旦某项反馈涉及底层技术问题,快速找到解决方案对团队至关重要。Qt支持团队在这方面提供了很大的帮助。

这正是与Qt建立支持关系对我们如此重要的原因,也是我们对Qt Support感到满意的原因。Lloses说道。

多年来,iLovePDF团队与Qt的合作不断深化,双方在互利共赢的学习交流中持续进步。

当然,购买许可证是需要付费的,但你同时也获得了支持服务,遇到问题随时可以咨询。这确实帮助我们解决了不少缺陷。Giss说道。

Qt支持服务在过去一两年间有了显著提升。我们使用过的每个版本,在支持周期内遇到的问题都得到了妥善处理。Aguilera说道。

核心价值并不体现在KPI数字上,我们真正获得的是难以量化的宝贵收益。

Curial Lloses, iLovePDF运营官

总结

凭借Qt的高效性、多功能性与完整性,iLovePDF成功推出了更强大、更具视觉吸引力、更易用的新版应用程序。迁移至Qt 6与QML不仅帮助团队实现了UI现代化的既定目标,也优化了整体开发流程,为iLovePDF的持续创新奠定了坚实基础。

我们可以说节省了时间,也许是双倍,也许更多。但说到底,我们真正获得的是难以量化的宝贵价值——更大的灵活性,以及在未来实现更多可能的能力。Lloses说道。

对iLovePDF而言,另一个重要考量是做出不会束缚未来选择的技术决策,并确保向前的兼容性。

我们不希望被过去的平台选择或体验设计决策所束缚。Qt 6给予了我们这种自由——这正是Qt对我们而言具有核心价值的原因。Lloses说道。

关于iLovePDF

iLovePDF致力于让所有人都能轻松、便捷、可靠地管理PDF文档。公司创立于巴塞罗那,已从一款简单的在线工具成长为日活用户超1,500万的全球化生产力平台,位列全球访问量最高的50大网站之列。iLovePDF提供覆盖Web、桌面与移动端的完整PDF工具套件,支持用户轻松完成PDF文档的转换、修改、电子签名、水印添加、合并及压缩等操作。

IFD

优飞迪科技

infedium  公司介绍

深圳市优飞迪科技有限公司2010年成立,国家级高新技术企业、专精特新企业,深耕工业数智化领域,秉持“以虚预实・智造决策”理念、践行“数智服务・全链领航”使命,致力打造国内领先的工业数智化全生命周期解决方案服务商。

公司汇聚全球高端工业软件资源,拥有雄厚的工业软件渠道与技术服务实力,是国际MSC软件、Qt软件英特、蜂巢、十沣、迈曦等多款国内知名工业软件官方签约代理可为企业提供正版工业软件授权与配套技术赋能。依托硕博及海归高端研发人才,以及软件定制开发、仿真咨询两大专业技术团队,公司同步深耕多物理场仿真、AI算法与数字孪生核心技术,围绕工业软件全链条需求,一站式提供自主可控软件开发、工业软件国产化适配、定制化数字孪生系统搭建、一站式仿真技术咨询、定制项目全流程实施等多元化、一体化数智化服务。拥有三十余项自主知识产权,技术自研与落地服务能力扎实,可精准匹配企业研发提效、国产替代、数字化升级、仿真优化等核心需求,助力企业降本增效、优化生产研发决策。

十余年来,公司已服务百余家大型工业企业,深度合作中国航天、工信部电子五所、中广核、华为、中兴、中车、格力、华星光电等科研单位、央企与行业龙头企业,沉淀大量成熟标杆落地项目。公司持续联动全产业链合作伙伴共建智能制造生态,以雄厚的工业软件资源、全链条自研技术与一站式落地服务,全方位赋能各行业企业高效完成数智化转型升级。

✅ 多品牌软件官方签约代理

✅ 国际工业软件:MSC、Qt

✅ 国产工业软件:英特、蜂巢、十沣、伏图、飞谱、云泊、泊沧、鲁班、迈曦

✅ 正规正版软件授权+全周期技术赋能一站式交付

✅ 主营业务:软件销售|软件开发|仿真咨询|数字孪生搭建|国产化适配

 企业研发数字化升级,欢迎私信获取专属方案!

业务咨询

📞座机:0755-2652 5599

📞电话:185 6665 7914  焦经理

🌐网站:https://www.infedium.com/