【问题标题】:PDF not shown correctly on GitHubPDF 未在 GitHub 上正确显示
【发布时间】:2020-09-30 11:55:37
【问题描述】:

参考PDF to Github Flavored Markdown

现在有了 GitHub 上的 PDF 支持,我有一个 PDF 文件(由我自己的 txt2pdf 转换器生成)在 GitHub 上没有正确显示,但在使用 Adob​​e Reader 或 Google Chrome 时没问题。

这是 GitHub PDF 预览的问题,还是我自己的转换器的问题? (我不知道该向哪个渠道报告,因此在 SO 上发布了这篇文章)

我的 PDF 文件是 v1.4。

示例 PDF 文件:https://github.com/txt2pdf/pdfdump/blob/master/sample.pdf

感谢@VonC 和@mkl 的友好反馈。我已经修复了程序并重新计算了外部参照表,但是这个sample2.pdf 仍然存在一些在线 PDF 修复工具无法检测到的未知问题。

https://github.com/txt2pdf/pdfdump/blob/master/sample2.pdf

最新更新:在生成输出 PDF 文件时,我从每个文本块中删除了“T*”(编辑:并且还使用大写字母“/F1”而不是“/f1”)。现在它在 GitHub 上正确显示。 所以问题出在我的转换器上,不是 GitHub的。

https://github.com/txt2pdf/pdfdump/blob/master/sample3.pdf

【问题讨论】:

  • 请分享一个说明问题的示例 PDF。
  • 我应该说 GitHub 显示一个空白 PDF。 @mkl 感谢您尝试解决问题。示例 PDF 的链接现在包含在我的原始帖子中。
  • 我检查了这个项目。有问题的文件已损坏,交叉引用不正确。看起来它们已经被计算为单个字节,但在最终文件中它们被表示为两个字节,CR LF。
  • 这是一个有用的评论。我重做程序,PDF 修复工具报告生成的 PDF 文件没有问题。但 GitHub 仍将新的 sample2.pdf 显示为空白页。
  • 是否有 text2pdf 选项可以避免首先生成那些 T*?

标签: pdf github


【解决方案1】:

uploaded sample.pdf,下载后...被 Chromium 中的 pdf 阅读器打开为空白页。

检查您是否将 git config core.autocrlf 之类的指令设置为 true。这可能会改变文件中的 eol(行尾)字符。

克隆存储库,并检查sha1 of the cloned pdf

git ls-files -s sample.pdf

将其与您的原始 PDF(您可以打开其中包含内容而不是空白页的 PDF)进行比较

git hash-object original/sample.pdf

这样,您将知道文件是否以某种方式被更改,何时添加/提交/推送。

我已经克隆了存储库,当我使用 Adob​​e Acrobat Reader 打开它时确实可以看到 pdf 文件的内容。

正如 OP 所指出的,问题出在txt2pdf (pdfdump) tools

  • 从每个文本块中删除“T*”(PDF32000_2008.pdf ISO 32000-1:2008 规范中的文本定位运算符):它移动到下一行的开头。
  • 使用大写字母“/F1”而不是“/f1

话虽如此,我建议git config --global core.autocrlf false 确保 Git 不会添加任何其他修改。

【讨论】:

  • 嗨@VonC。克隆的sample.pdf 与我的项目文件夹中的原始sample.pdf 相同。我使用fc /b <first file> <second file> 并没有遇到二进制差异。当您单击空白 PDF 文件的“原始”时会发生什么?它将开始下载并在我的浏览器中作为正确的 PDF 内容打开。我的git config core.autocrlf 设置为true
  • @BooKhanMing 当我点击空白 PDF 文件的“Raw”时,它确实开始下载并...在我的 Chrome 浏览器中打开为空白(Win10,版本 85.0.4183.121)
  • 感谢@VonC 提供有用的反馈。奇怪,我可以看到 PDF 内容,而且我使用的 Chrome 浏览器版本与您的相同(32 位)。
  • @BooKhanMing 撇开 Chrome 不谈,您是否尝试克隆您的存储库并打开 pdf?
  • 是的@Vonc。虽然我是 Git 新手,但我设法git clone url。然后我启动一个新的命令提示符窗口,将目录更改为克隆的文件夹,然后输入start sample.pdf。它将由默认的 PDF 阅读器打开,我可以看到内容。 sample.pdf 是 10357 字节(原始的和克隆的都是一样的)。
猜你喜欢
  • 2021-06-06
  • 1970-01-01
  • 1970-01-01
  • 2014-05-13
  • 1970-01-01
  • 1970-01-01
  • 2017-02-19
  • 2023-04-09
  • 1970-01-01
相关资源
最近更新 更多