其实我只想要一个非常简单的PDF阅读器,不要很花哨的功能,只要能够:

  1. 速度够快,不要翻一页等半天;

  2. 全键盘操作,不想在鼠标和键盘之间来回倒腾;

  3. 可以改变背景色,深夜的白光好刺眼;

  4. 自由旋转页面,有些PDF的页面简直是太斜了;

用过PDF Expert、PDF Reader、Skim……,发现这些个玩意还没有系统自带的Preview好用。轮子不够,看来只能自己造了,谁叫咱是码农呢?

最接近我需求的是Mupdf,但是这货问题太多而且需要XQuartz的支持,要X11支持也就算了, 竟然还不能全屏 ,这意味着EI Capitan的Splitview也无法使用。

编译好的macOS执行文件 https://pan.baidu.com/s/1misB9GG

去除X11的依赖,用Cocoa窗口

好在mupdf源代码支持多平台,可以用OpenGL,而OpenGL与Cocoa结合很紧密,所以工程的关键是让mupdf用glfw来建立窗口,具体步骤我在Github上说了很多,这里就不啰嗦

修改Bug,增加快捷键操作,添加功能

这开源代码的Bug就是多啊,不过不要紧,谁叫咱是码农呢?修改的几个主要问题在Github上我也提到了,咱说如何使用吧

命令行打开,键盘阅读

打开文件的正确方式是在终端中运行如下操作:

  mupdf-gl filename.pdf <page>

干嘛不来一个Bundle App?再设计一个菜单,从菜单中选择打开文件,最好再搞一个Command+O之类的快捷键,再整合到Findle的右键菜单……
等等,咱是码农,对吧?码农打开文件的正确方式难道不是在终端中输入命令的吗?

运指如飞

Vim 常用键大部分都有,我又整合进去了一部分
h,j,k,l,你懂的
空格键,d,u,b当然是上下翻页了
+,-放大缩小
x,y 进行左右或上下裁边,如果裁多了,按大写X,Y缩小裁边区域
w,W,H 自适应宽度和高度
q一键退出,别乱按
m,t书签跳转
g前面加一个数字就是跳转到指定页面
[,]左右旋转,微调不正的页面,这个太有用了
v 反转颜色
还有好多,你自己摸索下?

背景色任意换

由于是采用OpenGL绘图,换一个背景色那是相当的Easy!启动的时候指定RGB就行

  mupdf-gl -C 0xFDF6E3 filename.pdf

  mupdf-gl -C 0x00F600 filename.pdf

源代码

想自己编译的可以在Github下载,最新的代码都在 https://github.com/dean-wong/... ,有空就帮忙点一个Star吧^_^

打造全键盘操作的PDF阅读器相关推荐

  1. 使用pdf阅读器如何给文档添加标签

    pdf文件格式被运用的这么广泛,可想而知,如今我们在网上阅读的文件大多都是pdf格式的文件,因此在pdf阅读器的帮助下,我们能够快速的阅读,但是如果想要在pdf文件中添加标签该如何做呢? 不同于传统的 ...

  2. 这款PDF阅读器1秒定位论文公式变量,不同页图文也能同屏看,刷论文再也不用来回翻页看文找图了! | 开源...

    博雯 发自 凹非寺 量子位 报道 | 公众号 QbitAI 论文当前段落和相关图像又双叒不在同一页上! 怎么办?只能看文找图,再看图找文,在论文间来回跳转. 重复几次后,理解思路也就被沿途密密麻麻的数 ...

  3. 轻快PDF阅读器下载中文版

    一般情况下,我们会把重要的文件用PDF格式进行保存.如果想要打开PDF文件,没有其他辅助工具是无法进行的,其实想要阅读PDF文件没有一款好用的阅读器也是无法完成的,所以说小编要给大家介绍一款专业的辅助 ...

  4. 怎样使用轻快pdf阅读器

    现在阅读不需要抱着厚重的纸质书本,大家只需要在网上下载PDF阅读器,就可以了.除了在办公中用些文档之外,我们用PDF阅读器的时候也是很多的.阅读器的好坏是会影响工作效率的问题之一,为了提高大家的工作效 ...

  5. 极速pdf文件打印时此计算机未连接到网络,极速PDF阅读器常见问题及解决方法

    原标题:极速PDF阅读器常见问题及解决方法 极速PDF阅读器是日常办公常用的一款PDF阅读软件,有些人在使用过程中难免遇到一些问题不知道如何解决.下面汇总了几个常见问题并附解决方案,希望能够帮助到你. ...

  6. pdf阅读器(福昕pdf阅读器电脑版)免安装pjb

    一提到福昕阅读器电脑版,大家应该都很熟悉吧,这是一款非常优秀的PDF阅读软件,拥有强大的编辑功能和文件保护能力,涵盖文档创建.转换.打印.编辑.注释.表单处理.签名.保护.协同合作.可访问性等文档生命 ...

  7. 文献翻译利器——自定义PDF阅读器+Saladict+Quicker

    文献翻译利器--自定义PDF阅读器+Saladict+Quicker 0 前言 1 翻译方式的对比 1.1 在线翻译 1.2 金山词霸 1.3 知云文献翻译 1.4 Chrome+Saladict 1 ...

  8. 小巧实用的pdf阅读器

    大家现在使用什么阅读器打开pdf文件的呢?是直接打开阅读还是使用pdf阅读器打开阅读?既然是这样,那就让小编来为大家介绍一款小巧实用的pdf阅读器吧.一起来看一下. 轻快PDF阅读器下载中文版操作方便 ...

  9. 安卓pdf阅读器_一文看懂|Kindle和其他安卓电子书阅读器,该选哪个?图+视频一目了然...

    7月30 更新 关于词典 Kindle导入词典还是很方便的,词典数量和种类也很多.其他电子书阅读器有的支持导入mobi格式的词典或者词典包,有的不支持外部导入,只能用内置词典,有这方面需求的购买前咨询 ...

最新文章

  1. java 对象怎么序列化,java对象序列化总结
  2. Codeforces 486D D. Valid Sets
  3. Python基础入门:3种字符串格式化方法教程
  4. Spring Boot 核心知识,深入剖析!
  5. Docker学习(三):镜像
  6. 保留小数点位数和格式
  7. constraintlayout_androidApi:ConstraintLayout
  8. tcp连接时,BROKEN PIPE错误
  9. java实现simhash算法
  10. 音乐播放小窗口html,jQuery+html5迷你网页音乐播放器代码
  11. 什么是全栈工程师,为什么全栈开发用Python,Python web全栈开发究竟有多高薪?
  12. 神舟刷蓝天w650dbios_Hasse神舟笔记本卡logo解决,刷BIOS方法,教你修复神船
  13. 计算机软件主要有哪4中,系统软件通常包括哪四个部分
  14. 常用的ddos防护方式
  15. 建造属于你的无人驾驶车——(七)为XACRO模型添加GAZEBO属性与运动控制插件
  16. 难逾3000元门槛大关——国产手机的无奈困局
  17. Matlab绘制三维曲线(plot3)和三维图形(mesh surf)
  18. freemarker之macro的使用
  19. 技术分享!如何用powerPCB设定4层板的层?-道合顺大数据Infinigo
  20. nodejs+vue企业物资物品员工管理系统elementui

热门文章

  1. Java——多线程(线程安全问题)
  2. python安全攻防---爬虫基础--re解析数据
  3. cobaltstrick4.0系列教程(2)---用户接口
  4. 【计算机网络】三次握手与四次挥手
  5. C语言转移表之加减乘除无限进化版
  6. linux上p图工具,linux图片处理工具GraphicsMagick安装使用
  7. c++中STL的常用算法--1(函数对象,谓词,内建函数对象)
  8. 【java图文趣味版】数组元素的访问与遍历
  9. 1052 卖个萌 (20 分)
  10. java环境变量的配置与详解,这些知识你必须拿下