[我的小项目] 一个运行在本地的基于浏览器的PDF阅读器(taopdf)

陪她去流浪 桃子 2018年07月15日 编辑 阅读次数:3079

想法

周五下班路上,突然产生一个想法。

macOS 上的 PDF阅读器(预览)用起来不太顺手。主要是没有书签编辑器

并且,我想到传统的 PDF阅读器 有一个特别不爽的地方:书签是保存在原始PDF文件中的。 如果修改了书签,就相当于PDF文件发生了修改,这很没必要。

于是,我想在外部存储这个书签列表(当然,还可以是其它),比如放在服务器上,即在线书签。 还有就是,提供一个方便的本地文件浏览功能。

第一版

于是,周六宅家里一天。完成了第一版。

测试体验下载地址:movsb/taopdf

她分成两部分:1)前端,2)后端。

  • 前端是用 Mozilla/PDF.js 做的跑在浏览器上的一个 PDF阅读器,增加了部分功能。
  • 后端是用 Go语言 写成的一个提供本地文件系统树支持的接口,用于 PDF.js 获得文件列表。

运行后,即可浏览器并打开本地的文件,效果图如下:

taopdf.png

这只是一个文件浏览列表,在线书签的功能还没想好怎么做。

使用方式

  • 把 PDF 文件放在 pdfs 目录下,或用 --pdf 参数指定;
  • 下载对应的程序包,执行 server 目录下的 serverserver.exe 即可;
  • 然后在浏览器中打开页面:http://127.0.0.1:8733

支持的参数:

$ ./server -h
Usage of ./server:
  -listen string
        listen (default ":8733")
  -pdf string
        PDF root directory (default "../pdfs")
  -web string
        web root (default "../web")

项目

代码放在 GitHub 上,有两个。

编译方式

见 GitHub,编写中。

结束

希望你喜欢。

标签:我的小项目 · PDF