iText 5.0.0 RTF 和 HTML 去了哪里?

2022-09-03 12:58:28

这个问题可能看起来很愚蠢,但是,就这样吧!我有一个愚蠢的问题:-)。好吧,我的问题是这样的:使用此代码

//PDF generation

PdfWriter.getInstance(document,
new FileOutputStream("PDFFile.pdf"));

//RTF generation

RtfWriter2.getInstance(document,
new FileOutputStream("RTFFile.rtf"));

//HTM generation

HtmlWriter.getInstance(document,
new FileOutputStream("HTMLFile.htm"));

(以及其他一些行)使用iText版本2.1.7,每个计算机极客都能够从他的Java代码中生成PDF,RTF或HTM文件格式的文件。现在,我已经将iText升级到最新版本(5.0.0),我无法找到RtfWriter2(或旧的RtfWriter)或HtmlWriter。简而言之,我想知道是否有人知道是否保留了对这些文件类型的支持,因为Web搜索引擎上的每次搜索显然都会向我指出以前版本的iText,显然,一个人能够做任何事情。关于此事的任何提示?


答案 1

根据iText网站的说法,在v5.0.0中,他们故意删除了RTF和HTML编写器。在他们的历史页面(http://itextpdf.com/content/changelogs)上,他们说:

“工具箱和RTF支持已被删除:它们现在位于SourceForge的一个单独项目中。

我相信这是指向新的单独的iText RTF项目的链接:http://sourceforge.net/projects/itextrtf

根据这个线程:http://itext-general.2136553.n4.nabble.com/HTML-to-RTF-td2161984.html,HTML支持由 https://xhtmlrenderer.dev.java.net 的xhtmlrenderer项目接管(更新:死链接。该项目似乎已更名为“飞碟”:http://code.google.com/p/flying-saucer/ 的新家,来源 https://github.com/flyingsaucerproject/flyingsaucer)。


答案 2

iText的rtf功能仍然存在。我只想添加更多信息,因为前面的答案没有完全说明您必须做什么。

首先,访问 http://mirrors.ibiblio.org/pub/mirrors/maven2/com/lowagie/itext-rtf/2.1.7/itext-rtf-2.1.7.jar 以获取 itext-rtf.jar。这具有整个 rtf 包,但仅使用 RTF 文档是不够的。使用 rtf 包时通常需要的一个类是 com.lowagie.text.Document,它不包含在 itext-rtf.jar 发行版中。

其次,访问 http://grepcode.com/snapshot/repo1.maven.org/maven2/com.lowagie/itext/2.1.7。在这里,您要下载itext-2.1.7.jar。这是使用iText-rtf库所需的itext jar文件。这与现在的iText不同,后者现在只管理pdf文档。在5.0.0,rtf中断,pdf保留了当前的编号系统。rtf 版本号重新启动,rtf 包现在需要不同的 iText,该版本号将与 rtf 版本号相同。

有了这两个下载,你应该是黄金。

编辑

我知道的其他资源:

  • IText Rtf API
  • 一些例子 - 拿一粒盐,因为它真的不是Java,而且它更旧,但是当你剪切/粘贴时,一些代码片段无论如何都有效

我通常只回答提出的问题/评论,但是人们可以看到在itext-rtf中进行新编码时可能处于不稳定的位置。请谨慎操作。


推荐