gpt4 book ai didi

pdf - 我想检查 pdf 文档是否包含 web 应用程序 c# 中的交叉引用流或表。如何检查?

转载 作者:行者123 更新时间:2023-12-04 13:43:20 29 4
gpt4 key购买 nike

我有一个 c# web 应用程序,我想检查 pdf 文档是否包含交叉引用流。如果它包含交叉引用流,则将其转换为引用表。

最佳答案

检测相当容易。从文件末尾搜索“%%EOF”;正确的 PDF 文件实际上以“%%EOF”行结尾,不正确的 PDF 文件可能在该标记后有一些垃圾字节。该标记行之前的行包含最后交叉引用的位置(参见 Adobe copy of ISO-32000-1:2008 第 7.5.5 节)。转到此处注明的位置。

如果您在该位置找到外部参照关键字,则 PDF 具有交叉引用表。如果您改为找到 PDF 流对象(同上第 7.5.8 节),则 PDF 具有交叉引用流。如果两者均未找到,则说明该文件有问题。

不过,转换很困难,特别是如果 PDF 还使用只能与交叉引用流一起使用的对象流。您可能想使用像 iText(Sharp) 这样的库来读取 PDF 并在启用较少压缩的情况下再次导出它。

此外,如果 PDF 已签名,则无法在不破坏签名的情况下进行转换。

关于pdf - 我想检查 pdf 文档是否包含 web 应用程序 c# 中的交叉引用流或表。如何检查?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12910986/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com