C# 免费PDF操作库或代码?

C# 免费PDF操作库或代码?,c#,java,pdf,pdf-generation,pdf-manipulation,C#,Java,Pdf,Pdf Generation,Pdf Manipulation,我想开发一个商业用途的工具(我打算出售),其中包括操作文档文件 操作将包括: 1.将多个PDF文件合并为一个。 2.将doc/docx文件转换为PDF文件。 3.将单个PDF文件拆分为两个单独的PDF文件。 4.对PDF文件的页面进行编号(按顺序编号) 为此,我正在寻找一个免费的库或代码来帮助我处理PDF。 我更喜欢使用C语言的库,因为我的软件将使用C语言,因为它有一些GUI,但我也会使用JAVA库来管理 我发现“pdftk”库可以帮我很多,但不幸的是它的许可证不允许商业使用 有没有人想到一个免

我想开发一个商业用途的工具(我打算出售),其中包括操作文档文件

操作将包括: 1.将多个PDF文件合并为一个。 2.将doc/docx文件转换为PDF文件。 3.将单个PDF文件拆分为两个单独的PDF文件。 4.对PDF文件的页面进行编号(按顺序编号)

为此,我正在寻找一个免费的库或代码来帮助我处理PDF。 我更喜欢使用C语言的库,因为我的软件将使用C语言,因为它有一些GUI,但我也会使用JAVA库来管理

我发现“pdftk”库可以帮我很多,但不幸的是它的许可证不允许商业使用

有没有人想到一个免费的库或代码可以帮助我做到这一点


非常感谢

如果您想用java操作PDF,这是一个不错的选择


此外,您还可以查看哪些支持java和C。该库有社区版。

请查看位于的pdftotext

它提供了将PDF文件的内容提取到文本文件的选项。与其他库相比,它的突出之处在于它在提取的文本文件中保留了PDF文件的格式。当您的PDF包含结构数据(如表格)且PDF文件未标记时,这非常有用。PDFBox和其他库在解析PDF时无法保持PDF内容的结构

一旦您从PDF中提取了文本文件,您就可以自由地使用您喜爱的编程语言来解析文本文件

请在此处查看许可证策略:。它明确指出,如果您直接使用可执行文件而不修改源代码,那么您可以自由地重新分发使用可执行文件的应用程序。如果性能不是一个问题,那么您不需要接触它们的源代码

如果性能是一个问题,您可以创建一个应用程序的试用版本,突出显示功能,但速度自然较慢,因为每当您想要处理PDF时,它都会运行可执行文件。付费版本可以直接调用pdftotext api,速度更快。你可以很容易地弥补在授权上花的钱。如果我是你的话,我会这么做的,但我现在已经有一些大项目要做了:)


我可以担保pdftotext,因为我自己也使用过它。所有其他库似乎都忘记了用户可能有兴趣保持PDF文件的格式不变

谢谢你的快速回答。我检查了你提到的两个库,据我所知,它们都有许可证,只有在我的软件也是免费的情况下,我才能使用它们。我错了吗?我不太确定,但PDFBox是在Apache许可证2下的,它要求不修改代码(如果您修改代码,您必须提交代码),并将其许可证文件包含在您的发行版中。iText是在GNU Affero通用公共许可证版本3下的,大多数云提供商在该版本下运行其SaaS产品,但它不太允许。请参阅Apache许可证中的第4条:,那么,销售使用此库的软件不是被禁止的吗?或GNU许可证中的第6个。。。我有没有可能在不违反这些合同的情况下使用这些库?谢谢@bot,但是这个库也在Apache2许可证下,该许可证禁止在不向库中添加源代码的情况下使用库,等等@user1028741:这是错误的:库在GPL2(或商业)之下,您对Apache许可证的解释与此相关: