问题标签 [podofo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
227 浏览

ios - PoDoFo 库在 ios 7 中崩溃,但在 ios 6 及更早版本中工作

我正在使用PoDoFo 库进行标准 PDF 注释,它可以在 ios6 和更早的版本中使用,当我将应用程序升级到 ios7 时,它会像这样显示 EXC_BAD_ACCESS

在此处输入图像描述

它在这段代码中崩溃

0 投票
2 回答
5886 浏览

c++ - 使用 CMake 和 MinGW 构建 PoDoFo 库

我正在尝试PoDoFo Library在我的 Windows 平台上构建(用作 API)。它是使用CMake. 该ReadMe文件说以下内容。不幸的是,我是 CMake 的新手,我不能从中得到太多。

在 Windows 上构建 PoDoFo

Windows 需要 CMake 2.6.x。您可以从 cmake.org 下载它。

在 Windows 上,PoDoFo 可以构建为共享库或静态库。不支持同时构建两者。默认情况下,只会构建共享库。如果你想要一个静态库,只需使用 cmake 的额外参数禁用共享库的生成:

在 win32 上处理库命名

特别是在 Windows 上,自定义构建的库与您可能作为预构建副本下载的库具有不同的名称也是很常见的。如果它们被称为其他东西,CMake 将无法找到它们,除非你告诉它。使用这些变量告诉 CMake 在哪些名称下查找库:

CMake 使用 MinGW 在 Windows 上构建

设置 MinGW 后,确保 MinGW“bin”目录在您的 PATH 上,并确保设置 CMAKE_INCLUDE_PATH 和 CMAKE_LIBRARY_PATH 以便 CMake 可以找到 PoDoFo 所需的库的头文件和 .lib 文件。来自 http://gnuwin32.sf.net/的 GnuWin32 库包已知可与 PoDoFo 一起使用,因此从那里安装 zlib、freetype 和 libjpeg 应该可以解决问题。

要使用默认 GnuWin32 安装和 PATH 上已经存在的 MinGW 配置和构建 PoDoFo:

我已经安装CMake并下载了提到的其他库,例如freetype, zlib, libjpeg. 它们的头文件和二进制文件位于各自的文件夹中。

现在应该是DCMAKE_INCLUDE_PATH什么DCMAKE_LIBRARY_PATH?又是什么"MinGW Makefiles"?我必须提供任何额外的参数吗?

如果有人能用简单的步骤解释我如何去做,我将不胜感激。

编辑:执行 CMAKE 时出错:

0 投票
1 回答
2008 浏览

c++ - 如何修复从 cmake 生成的 Visual Studio 项目中包含错误

请滚动到底部以列出更新的简短问题

我正在构建PoDoFo。在最后一步,我使用 cmake 为 PoDoFo 创建 Visual Studio 2010 .sln 文件。但是,当我构建此解决方案文件时,它找不到依赖库的头文件。例如,它没有找到 boost 库头文件。

如果我禁用 boost,我会收到类似的 freetype 库头错误

这是我的 build.cmd 文件

我是 CMake 的新手,我不明白库依赖项如何传递到 Visual Studio 项目?.

这是生成的解决方案文件中路径的屏幕截图。我不明白这些路径是如何从小脚本文件中进行的?它们不完全对应,DCMAKE_LIBRARY_PATH所以它们来自哪里?

Visual Studio 项目中的项目路径 - 它们来自脚本文件的哪一部分?

如何修复解决方案文件中的这些包含错误?我尝试将这些路径添加到 Project Properites >> VC++ Directories >> 'Include Directories' 但它仍然不想构建。恐怕即使我消除了这些包含错误,我也会收到链接器错误,因为库路径也可能不正确。如何修复这些错误并构建项目?谢谢。

更新的问题

我通过将路径更改为:

现在正如我所料,我得到了很多链接器错误。但是我注意到它确实创建了 PoDoFo.lib 文件,所以现在我尝试在示例演示中使用它。我也成功编译了它,但出现以下链接器错误:

我确实确保将依赖库与路径一起添加到项目设置中,但为什么我仍然会收到这些错误?

0 投票
1 回答
1783 浏览

cmake - 在 Windows MinGW 上构建 PoDoFo

您好我正在尝试使用 MinGW 在 Windows 7 上编译 PoDoFo 0.9.2。我已经成功编译了freetype2OpenSSLzlib。因为我想创建一个 64 位应用程序,所以必须将 MinGW x64 编译器设置为cmake。所以我像这样运行cmake

但我收到了一些未指明的错误

CMakeOutput.log 包含此http://pastebin.com/tBr5G4Mr

CMakeError.log 包含此http://pastebin.com/rdYMFfKr

0 投票
0 回答
152 浏览

encryption - PoDoFo AES 加密

我正在尝试使用 PoDoFo (0.9.2) 来解密(然后加密)文件。但是,该代码不支持当前事实上的标准 AESV2。我没有找到关于这个问题的任何材料,我想知道是否有人试图解决它或修补库以使其可用。

0 投票
2 回答
935 浏览

c++ - podofo.h - 没有这样的文件或目录

我使用标准的 cmake 和 make 安装过程构建了 podofo-0.9.2。我在 /usr/include/podofo 目录中有包含文件。我将它添加到我的路径中。然后我尝试使用以下语法编译 podofotxtextract 示例。

但由于某种原因,编译失败说:

这是我的路径的价值

也许我错过了一些东西。我已经链接了图书馆。我什至将它包含在路径中。我错过了什么?

0 投票
2 回答
2538 浏览

c++ - 将 FreeText 注释添加到 PDF

我正在使用podofo进行 PDF 操作,例如根据我在 iOS 应用程序中的要求添加注释、签名等。我首先尝试了可用的 podofo 库的唯一示例,效果很好。但是示例的问题是添加的注释没有显示在任何预览中,例如GoogleAdobe Reader等等。这是一个问题。

根据 Adob​​e 的一些指导方针,我发现它需要Appearance Key出现FreeText annotation。我尝试在文本编辑器中分析原始 pdf 文件,以查看具有正确注释的 PDF 中的差异,以及 podofo 创建的 PDF 注释。我发现有一个带有注释编码形式的对象的AP N键,该注释从 podofo 样本中丢失。stream

然后在搜索后我找到了podofo自己的示例并尝试使用代码,这似乎是正确的,但也没有工作,我知道我遗漏了一些东西,但不确定是什么,在哪里,请看看下面的代码

SO宇宙中的任何人都可以告诉我上面的代码有什么问题,以及如何添加正确的FreeText Annotation以便它在任何地方都正确显示。

非常感谢。

0 投票
1 回答
459 浏览

ios - 如何在支持 Openssl 的 iOS 上构建 PoDoFo?

我有一个使用 PoDoFo 对 PDF 进行数字签名的项目,所以我试图将CTOpenSSLWrapper集成到一个同时使用 PoDoFo 和 OpenSSL 库的项目中。但是当我尝试构建它时,我遇到了链接问题:

在此处输入图像描述

ld: symbol(s) not found for architecture armv7如果我尝试在设备上运行,则会重复相同的错误。

我已经交叉检查了每一件事:

  1. 标头搜索路径
  2. 图书馆搜索路径
  3. Buildphases->为任何丢失的 .m 文件编译源代码

但我仍然有同样的问题。

我该如何解决这个问题?

0 投票
0 回答
1074 浏览

ios - 使用 Podofo 库生成的数字签名问题

我正在使用 OpenSSL 通过 PoDoFo 库为 PDF 生成数字签名。这是签名处理程序的逻辑

使用 podofo 嵌入签名

但是嵌入在 PDF 中的签名始终为空

可以帮助解决这个问题吗?

0 投票
0 回答
711 浏览

podofo - podofo 库创建更大的 pdf 文件

我正在使用 podofo 0.9.3 库使用 PdfSigIncMemDocument 类对 pdf 文档进行数字签名。我能够毫无问题地对 pdf 进行数字签名,但输出的 pdf 文件大小非常大。

这是我的代码

sample.pdf 大小为 31KB,而输出 sign.pdf 大小为 506KB。

有人可以帮助解决这个问题吗?