2026-09-12

This article is categorized as "Garbage" . It should NEVER be appeared in your search engine's results.


PowerPoint的qpdf linearize warning问题

和powerpoint导出pdf以后qpdf linearize warning相关的问题斗了一个晚上

虽然出现了警告,但qpdf处理以后的pdf看起来也没什么问题

(object 599 0): object has offset 0 - a common error handled correctly by qpdf and most other applications

相关警告锁定在pdf的wingdings/dingbats字体上,可以很容易地用一个新的pptx进行验证:

创建一个空白pptx,只有这些内容:

然后导出pdf并尝试对pdf进行线性化处理

果不其然也出现了warning

所以到底应该如何去掉这个warning呢?

尝试用纯字符(而不是powerpoint内置的list)直接渲染listing符号,并在这一步尝试各种字体,包括且不限于sf pro, apple symbols, Noto Sans Symbols 2, dejavu sans, ZapfDingbatsITC

都失败了,字体本身都能嵌入pdf并正常渲染,但就是会出warning


试试keynotes,为了确保最大兼容直接创建.key文件并包含一个简单的list然后导出pdf

pdf有字体LucidaGrande和helvetica neue

qpdf照样出warning,太糟糕了苹果


试试libreoffice,先试试空白模版直接创建list

导出的pdf由OpenSymbol提供check mark符号的渲染

linearize没有warning


再试试libreoffice打开pptx

由Wingdings提供字体渲染(因为pptx之前是powerpoint创建的,所以使用了巨硬的字体)

linearize没有warning


最后试试libreoffice打开一个复杂的pptx

由OpenSymbol提供check mark符号的渲染

linearize没有warning

试完了,总结为libreoffice牛逼


但keynote和powerpoint同时出事并不一定是两家的app有问题,也可能是macOS Quartz PDFcontext有问题(keynote和powerpoint都用这个,libreoffice似乎不用)


升级到macOS 27了,还是有这个问题,此外之前一直在追踪的PDF空白问题也没有解决:🔗 [macOS打开某些PDF页面为空白的测试 - Truxton's blog] https://truxton2blog.com/macos-open-special-pdf-pages-blank/ 


macOS复制文件的ts不一致

TIL:如果用finder复制粘贴了1个文件(普通文件),原文件为file A,新文件为file B,那么:

虽然file A和file B在finder里面显示它们拥有相同的last modified time,但实际上两者的last modified time(有概率)并不相同,有时就差一点点点点点点点点:

file A:
  mtime:     2026-09-08 14:58:04.919421
  mtime_ns:  1788897484919420644

file B:
  mtime:     2026-09-08 14:58:04.919421
  mtime_ns:  1788897484919420600

  mtime diff:    44 ns/0.000000044 seconds

新工具


新发现的工具1:🔗 [Capitalize Your Title] https://title.sh/ 

可以自动规范化论文/插图的title


有用的新工具2:

🔗 [BurntSushi/ripgrep: ripgrep recursively searches directories for a regex pattern while respecting your gitignore] https://github.com/burntsushi/ripgrep 解决了grep无法跳过二进制文件的问题

🔗 [chmln/sd: Intuitive find & replace CLI (sed alternative)] https://github.com/chmln/sd 相比于sed而言避开了正则的麻烦

这样就不需要每次都求助vscode了



 Last Modified in 2026-10-12 

Leave a Comment Anonymous comment is allowed / 允许匿名评论