

软件官网
https://www.mupdf.com/
软件功能
1. PDF 阅读器和编辑器:支持 PDF 文件的阅读和编辑,包括页面查看、添加书签、搜索、标注等功能。
2. 文档转换:支持将 PDF 文件转换为多种格式,包括 HTML、SVG、CBZ、PBM 等,适用于不同的应用场景。
3. 进阶编辑功能:提供进阶的 PDF 编辑功能,可以修改 PDF 文字、图像、表格等内容,支持插入、删除、移动等操作。
4. 批量处理:支持批量处理多个 PDF 文件,如合并、拆分、格式转换等,提高工作效率。
5. 命令行界面:支持命令行界面,便于高级用户和开发人员进行批处理和程序集成。
软件特色
1. 轻量级:MuPDF 是一款轻量级的软件,只有几十兆的体积,不占用太多系统资源,可以在低配置的计算机上运行。
2. 快速渲染:采用先进的算法和渲染引擎,可以快速加载和渲染 PDF 文件,并提供流畅的浏览体验。
3. 安全稳定:MuPDF 是一款安全稳定的软件,不会植入恶意代码或向用户发送广告。同时提供多种安全检查机制,确保用户的计算机没有受到漏洞攻击。
4. 多平台支持:MuPDF 支持多个操作系统平台,包括 Windows、Linux、Mac OS、Android 等,覆盖了大多数用户使用的系统环境。
5. 开源免费:MuPDF 是一款开源免费的软件,用户可以自由获取和使用该软件,且可以查看和修改其源代码。
快速键
〔ESC〕:快速关闭正在浏览中的PDF文件,或按〔q〕
〔n〕:按〔n〕或〔→〕或按空白键可以翻下一页
〔b〕:按〔b〕或〔←〕可以往前翻上一页
〔+〕:放大页面
〔-〕:缩小页面
〔r〕:文件向右旋转90度
〔l〕:向左旋转90度
〔Shift〕+〔n〕:往下翻10页
〔Shift〕+〔b〕:往前翻10页
〔m〕:标记某一页(方便之后跳回来看)
〔t〕:跳回之前按〔m〕标记的页面
〔1g〕、〔2g〕、〔3g〕…:按数字键再按〔g〕,直接跳到该页面
更新日志
v1.28.5 2026年9月26日
大量错误修复:
Bug 709752:避免在 bake 过程中因错误导致未初始化文档丢失。
Bug 709753:修复 mutool 审计中的 OOB 写入问题。
Bug 709734:避免早期元数据调用时发生段错误(SEGV)。
Bug 709751:调整图案渲染,解决 xstep/ystep 值过小的问题。
Bug 709750:修复 pdf_rewrite_images 中错误导致的内存泄漏。
Bug 708749:修复使用混合行为的 seps 转换 pixmaps 时的 OOB 访问问题。
Bug 709746:修复 paint_solid_color_4_da 中的内存越读问题。
Bug 709745:重新设计 mutool grep 的打印功能,避免重复输出行。
Bug 709690(续):修复阴影裁剪问题。
scripts/wrap/csharp.py:修复 macOS 下 C# 构建错误。
scripts/wrap/cpp.py:在生成代码中使用 fz_free() 代替 free()。
scripts/wrap/cpp.py:移除生成代码中不必要的 `#if 0`。
scripts/autovenv.py:改进 Windows 系统下的命令行引号处理。
load_footnotes:当 n < 0 时避免字符串泄露。
即使在 transcribe_table() 中池分配失败,也应释放 sent_tab。
js:为 Rect.infinite 和 Rect.empty 设置矩形坐标正确顺序。
js:在 Rect 代码中使用正确的 -Inf 常量。
js:在 Rect.rectFromQuad 中使用正确的参数名称。
Bug 709743:修复 PDF 重着色中的 OOB 读取问题。
Bug 709742:修复 PDF 重着色代码中的栈溢出问题。
Bug 709737:修复 TTF 子集时的表格越界问题。
Bug 709736:修复 TTF 子集中潜在的表格越界问题。
Bug 709735:避免 TTF 子集中错误处理时的内存泄漏。
请记得在查询字符串选项中对 key=value 对象进行指针前移。
Bug 709729:修复 TTF 子集中潜在的 OOB 读取问题。
Bug 709728:修复 CFF 子集代码中的宏问题。
Bug 709730:修复结构标签处理问题。
Bug 709720:避免字体子集中的潜在 OOB 写入问题。
文档:为目录添加缺失的选项说明。
修复 error.md 中的缩进问题。
rst:修复 rect-attribute 参考问题。
修复 pdf_guess_text_language_from_font_name 中逻辑反向的问题。
从 mujs 提供供应商正则引擎。
x11/gl:添加 -f 命令行参数以启动全屏查看器。
修复退出 x11 查看器时的断言崩溃问题。
使用 MuJS 的 REG_RUNAWAY。
升级 MuJS 至 1.3.10 版本。
mutool run:修复 resolveLink(Destination) 中参数偏移一的问题。
CRLF 是 PDF 文本生成中单行换行符。
删除 fz_pdfocr 被丢弃时的倾斜位图。
修复 BMP stride 范围检查中的整数溢出问题。
jni:修复异常抛出类型错误的问题。
jni:修复将 NULL 传递给释放 UTF 字符串的拼写错误。
修复路径矩形边界计算。
验证 TTF 子集中的 loca 表单调性。
修复系统 cmark-gfm 支持。
将 openjpeg 包含移至 FZ_ENABLE_JPX 下。
移除不必要的变量,该变量与同名变量冲突并造成覆盖。
Bug 709548:修复清理恶意文件时出现无限循环的问题。
Bug 709615:修复 SVG 颜色解析为不区分大小写的处理方式。
修复 mutool poster 使用语法。
移除多余的全局定义。
当无法分配新的 stext_block 时,释放目标列表的资源。
在从块列表中解除链接 stext_block 时,释放其资源。
提供 stext_block 资源释放的公共 API。
修正下划线/高亮/删除线检测。
标记变量 fz_var 以避免异常时出现无效指针。
表格查找:调整分数比较逻辑。
标记变量 fz_var 以避免异常时出现无效指针。
即使发生异常也丢弃签名字段引用。
除非完全形成,否则丢弃 fz_search。
在 SVG 设备中,即使发生异常也丢弃 fz_path。
如果未启用点渲染,则确保丢弃绘图设备。
如果未正确创建,则确保丢弃 SVG 设备。
即使发生异常,也丢弃 HTML 边框标题和 URI。
即使发生异常,也丢弃旧的页面目标。
如果加载名称树时抛出异常,则丢弃字典。
声明变量 fz_var 以避免异常时值无效。
确保在异常时丢弃 fz_text。
如果 rectlist_create() 抛出异常,则确保释放 boxer。
修复 string-util.h 中的一些类型转换问题。
记得标记变量 fz_var 以避免异常时值无效。
防止在传入 NULL stm 时调用 Harden fz_available()。
消除隐式类型转换警告。
消除“被遮蔽的变量”警告。
将文件格式列表添加 MD。
| 留言与评论(共有 条评论) |