【Harmony】在鸿蒙Next上实现一个小说/漫画阅读器?能成么?

本文正在参加华为鸿蒙有奖征文征文活动

鸿蒙Next系统即将于2024年下半年登场,因此作为一名客户端开发者,无论是为了提升自己的技术水平,还是为了对得起老板给你的工资,或者单纯为了鸿蒙Next系统带来的机遇和挑战,我们都需要进行一定的了解,以迎接这一新平台的到来。

现在从GPT生成的前言回到正题来,这次为了活动的T恤奖励,打算研究一下鸿蒙上实现一个小说/漫画阅读器的可能性。先说结论:

目前来看,可能性还真不低,完成度上也足够满意,甚至有些自带的AI服务可以提供更NB的功能

至于具体的实现和代码,感觉都是被保密条款限制的部分?那接下来的文章就只说思路和实现效果?

回正题,按征文要求格式来分析一下:

围绕HarmonyOS NEXT特性,所畅想的创新创意

在鸿蒙Next系统上实现的阅读器核心受众为18至35岁之间的年轻人群体,主要集中在一线和二线城市。他们热衷于阅读,尤其是网络小说、科幻文学和轻小说等类型。这一群体大多追求时尚和高效的生活方式,常常利用碎片化时间进行阅读,如通勤途中、午间休息或睡前放松时。

该阅读器将为用户提供多样化的使用场景。用户可以在地铁或公交上,通过手机或平板设备轻松阅读自己喜爱的内容;在家中,可以将设备与智能家居系统连接,实现语音控制和大屏显示,获得更加沉浸式的阅读体验;在办公室午休时,通过鸿蒙Next的多屏协同功能,可以在电脑上无缝继续早上未读完的部分。此外,应用还支持离线下载和云同步功能,确保用户在无网络环境下也能畅快阅读。

作品创意/竞争力:

在鸿蒙Next系统上实现的小说/漫画阅读器,针对现代用户的阅读需求,设计了多项创新功能和体验优化,显著提升了用户体验。首先,小说部分引入了智能自动排版功能。该功能根据用户的阅读习惯和设备类型,自动调整字体大小、行间距和页面布局,确保在不同设备上都能获得最佳的阅读体验。此外,小说阅读器还支持自动朗读功能,利用鸿蒙Next的先进语音合成技术,将文字内容转化为自然流畅的语音朗读。这一功能使用户在开车、做家务或锻炼时也能"听"书,不再受限于传统的阅读方式,享受到全新的便捷体验。

对于漫画部分,应用则引入了AI分析和抓取功能。基于鸿蒙Next的强大AI能力,该功能可以智能识别和分析漫画中的图像和文本元素,提供更清晰的图像质量和准确的文本信息提取。这不仅提升了用户的视觉体验,还为后续的翻译功能提供了技术支持。此外,漫画阅读器还集成了翻译功能,支持多语言翻译,用户可以轻松阅读全球优秀的漫画作品,突破语言障碍,享受更加多元化的内容。

总的来说,这款小说/漫画阅读器通过智能自动排版、自动朗读、AI分析抓取和翻译功能,极大地提升了用户的阅读体验。与市场上其他阅读器相比,鸿蒙Next上的这款应用在功能和用户体验上具有明显的优势。其他应用可能提供了部分相似的功能,但在自动朗读、AI分析和翻译等方面,鸿蒙Next系统的特性使得这款应用能够提供更加流畅、智能和贴心的用户体验。总之,这款小说/漫画阅读器不仅满足了现代用户的多样化需求,还通过创新功能和优化设计,带来了全新的阅读体验。

可行性评估

可行性评估方面,首先来整理下要实现的功能:

  1. 基本的阅读功能(网络、本地数据拉取与解析,内容缓存)
  2. 排版功能(分页计算)
  3. UI界面处理(点击的菜单切换,页面的翻页动画)
  4. 手势处理

对于最基本的阅读器部分来说,大体上需要的注意点是这些,从这些部分出发,可以发现可行性还是可以的:

  • 对于基本的阅读功能,现有的鸿蒙Next功能还是比较完善的,包括网络和文件IO系统,但是对于epub等书籍格式的支持暂时还没找到,不过这并不是核心问题所在,还是可以认为能实现的。

  • 排版这块的支持,属于分页计算的范畴,目前鸿蒙arkTS部分是已经提供了基本的文本measure方法,而根据以前开发小说阅读器的经验来说,分页计算这部分也就需要measure方法足矣,因此应该有可行性的。

  • UI处理部分,比较核心的就是翻页动画部分的处理,作为一个常年捣鼓翻页动画的UI仔,对于覆盖和上下滑动翻页,这块是有可行性的,但是对于仿真翻页部分,比较尴尬的是鸿蒙Next并未开放对于自定义控件的cavnas修改能力,Canvas本身的API中也未包含可以直接绘制控件的功能。

    因此,如果要实现一个仿真翻页的阅读器,可能要自己通过canvas取直接绘制Text,而要实现Text的长按和选择复制回复等操作,可以让仅在翻页动画阶段通过canvas实现,动画执行期间不提供手势服务;当翻页动画结束,则直接通过普通的Text组件来实现,这样既实现了仿真翻页,也避开了canvas方案无法处理手势的问题,但仍值得注意的是,这样带来静止与动画状态切换导致的控件重建,是否会有较大的性能问题还待研究。

    另外在flutter上已经实现了着色器方案,鸿蒙是否具备着色器或者openGL的便捷操作,也是需要考察的部分。

    虽然这样会比较麻烦与恶心,但是总之,是有可行性的。

  • 最后的手势处理部分,鸿蒙也是有手势处理的API可供调用,因此也具备可行性

而对于其他额外部分功能,鸿蒙本身也自带了TTS服务,以及图片分析的能力,因此,上面提到的文本朗读、翻译、图片中人像抓取都是具备可行性的。

这样的话,可以顺便实现一个自动翻译欧美日本漫画的阅读器?不知道鸿蒙自带的AI能力中有没有图中摘字的功能?能摘出来文字信息就能实现翻译功能,这个后续研究下。

结语

还别说,现在这分析下来,真的挺有可能,而且如果自带的那帮AI能力能够使用,那确实会比很多阅读器牛逼。

相关推荐
whysqwhw2 小时前
鸿蒙分布式投屏
harmonyos
whysqwhw3 小时前
鸿蒙AVSession Kit
harmonyos
whysqwhw5 小时前
鸿蒙各种生命周期
harmonyos
whysqwhw6 小时前
鸿蒙音频编码
harmonyos
whysqwhw6 小时前
鸿蒙音频解码
harmonyos
whysqwhw6 小时前
鸿蒙视频解码
harmonyos
whysqwhw6 小时前
鸿蒙视频编码
harmonyos
ajassi20006 小时前
开源 Arkts 鸿蒙应用 开发(十八)通讯--Ble低功耗蓝牙服务器
华为·开源·harmonyos
前端世界7 小时前
在鸿蒙应用中快速接入地图功能:从配置到实战案例全解析
华为·harmonyos
江拥羡橙9 小时前
【基础-判断】HarmonyOS提供了基础的应用加固安全能力,包括混淆、加密和代码签名能力
安全·华为·typescript·harmonyos