批量导出日记:所有日记应用应该具备的重要功能


导出PDF功能的迭代

湾湾日记3.7版本的发布上线,跟3.6版本间隔了近两个月,主要是因为开发批量导出日记功能占用了大部分的时间。这是我一直想做的功能,终于第一版上线。我愿称这个功能是所有日记App应该具备的重要功能。

将日记导出为PDF,是湾湾日记第一版就具有的功能。后来湾湾日记不断迭代,特别是支持富文本和markdown编辑器后,将日记导出PDF功能有一段时间不能使用。后来有不少用户发信给我反馈这个问题,我在3.5.0修复了导出PDF功能和完善了导出markdown功能。但是这仅仅支持单篇日记的导出。我最想做的批量导出日记为PDF/markdown功能没有完成。最近花了很多精力终于完成了第一版。

批量导出日记为PDF的重要性

湾湾日记旨在成为一款可以写一辈子的日记App,但是我深知这个目标有多难。任何个人都会死去,任何公司也一样,终将会消亡。我们在App上写日记,很有可能遇到App开发者或公司不再更新维护App的情况。这时候能批量导出日记为PDF的功能就尤为重要。因为日记数据存储在App内,一般来说别人是无法读取的,只有通过App来导出。

将日记数据导出为PDF是最适合的。因为PDF文档是跨平台的,无论在Windows还是Mac,还是其他系统,都会支持PDF的查看。它是一个标准的协议文档。而且PDF文档还支持嵌入图片,支持直接打印,当做邮件附件发送,好处多多。不过PDF文档也有缺点,就是不太适合编辑。一般只有专业 的PDF编辑软件才支持。所以湾湾日记也支持导出日记为markdown。Markdown是一种比较专业的文档格式,可以方便的转为网页HTML。有些专业的用户他需要对日记进行二次编辑或排版,markdown格式是非常适合的。

将日记导出为PDF/markdown是很重要的功能,但是要开发好却很不容易。批量导出更是要考虑的问题很多,我也是花了很多时间去解决这些问题,才做出了批量导出功能第一版,后续会不断的进行优化。

批量导出功能介绍

功能入口

批量导出日记入口在【更多】Tab

批量导出功能

导出选项有日记分类(日记本),日期范围,包含标签。这3个条件是与的关系,即同时符合3个条件的日记才会导出。导出格式可以是PDF或markdown. 每次导出不超过100篇日记。为什么要做这个限制呢?导出日记功能是这样的:所有选中的日记会按时间从旧到新生成一份PDF,PDF中会包含日记中的图片。然后日记中包含的所有资源文件,包括图片、视频、音频、文档,都会跟生成的PDF文件打包成一个zip文件。我自己测试了一下,100篇日记导出的PDF肯定超过100页,生成这么多页的PDF文件需要挺长时间的。为了减少出错,所以限制了一次只能导出100篇日记。我自己导出的100篇日记生成的zip文件,有1.5G。文件太大了也不利于导出和分享。导出的文件名包含了日记分类、标签、日记的开始和结束日期信息。

导出完成后分享或保存

当导出完成后,会自动弹出一个分享弹窗,方便将zip文件分享或保存。一定要将zip文件分享或保存到其他地方,否则退出批量导出页面就再也找不到该zip文件了

ios端

iOS端的导出完成,可以通过隔空投送传给Mac电脑。如果暂时无法使用隔空投送,那一定要选择【存储到”文件“】先存起来

然后到“文件”App中查看刚保存的zip文件

点击zip文件,系统会自动解压成一个目录文件。点击目录文件可以进去看到有日记中的所有多媒体资源和一个PDF文件。

安卓端

安卓端导出完成后也会弹窗分享

可以不选择分享,把弹窗关闭,可以看到页面上有个【保存到Documents目录】的按钮

点击该按钮会打开Documents目录

然后点击【使用此文件夹】

然后再点击弹窗里的【允许】,就可以将zip文件保存到Documents目录了。这样就可以用系统的文件浏览器去查看这个zip文件了。

生成的PDF文件

每篇日记至少占用一页,如果图片比较大图片会独占一页,这导致PDF中会有很多空白,暂时也没有很好的解决办法。然后PDF文件会有页眉和页脚(页数)。以后会继续优化排版。

导出markdown

导出markdown跟导出PDF功能基本是一样的,只是PDF变成了markdown。不过查看markdown需要专门的编辑器,这里不再累述。