Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PDF到XML-XSL-Java的转换?_Java_Xml_Jakarta Ee_Xslt - Fatal编程技术网

PDF到XML-XSL-Java的转换?

PDF到XML-XSL-Java的转换?,java,xml,jakarta-ee,xslt,Java,Xml,Jakarta Ee,Xslt,如何将PDF转换为XML并在XSL中捕获其结构/样式?我曾经将PDF转换为XML描述为试图将汉堡转换为奶牛。这是一个逆向工程的练习。PDF表示文本的方式非常多变;在更糟糕的情况下,您所拥有的只是一张扫描图像(在这种情况下,您实际上是在进行OCR)。如果幸运的话,您有一个文本字符串集合,其中包含它们在页面上出现位置的坐标,但没有其他结构指示 如果PDF格式是他们能够理解的,那么有一些工具可以完成合理的工作(通常是生成Microsoft Word)。谷歌“PDF到文字转换”。试一下(我已经有一段时间

如何将PDF转换为XML并在XSL中捕获其结构/样式?

我曾经将PDF转换为XML描述为试图将汉堡转换为奶牛。这是一个逆向工程的练习。PDF表示文本的方式非常多变;在更糟糕的情况下,您所拥有的只是一张扫描图像(在这种情况下,您实际上是在进行OCR)。如果幸运的话,您有一个文本字符串集合,其中包含它们在页面上出现位置的坐标,但没有其他结构指示


如果PDF格式是他们能够理解的,那么有一些工具可以完成合理的工作(通常是生成Microsoft Word)。谷歌“PDF到文字转换”。试一下(我已经有一段时间没有试过了);不要试图写你自己的。当然,从Word开始,使用XML是“相对”简单的。

我认为Michael Kay将PDF->XML转换描述为“试图将汉堡包转换成奶牛”时,他说得很对

我在过去做过很多PDF到XML的转换。我一直很幸运,因为我有像样的PDF转换,不需要OCR。我的大部分问题都是关于表格和图形的。像迈克尔建议的那样先转换成单词可能会有帮助

我所做的是使用
pdftotext
from将PDF转换为文本,然后将文本转换为XML。(我使用Omnimark进行文本->XML转换,但您可能可以使用Java或Python进行转换。转换为基本结构然后使用XSLT(2.0!)可能是最简单的方法。)要对其进行微调。

可以很容易地将PDF文档中的文本提取为XML。PDFTextStream中包含一种特定的PDF->XML方法——PDFTextStream中包含该方法的源代码,因此您可以轻松地对其进行调整,以满足您的需求

可以开始使用,或者您可以更深入地阅读


(披露:我受雇于PDFTextStream的制造商Snowtide。我希望这个指针在任何情况下都能有所帮助。)

这不是一个简单的问题。“正常”的方法是使用XSL和XSL-FO生成XML数据的PDF呈现。相反的方法非常困难,您可以将PDF文本捕获为XML,这很“简单”,但将PDF布局转换回XSL IMHO并不容易。你为什么需要它?@David Oliván Ubieto需要实现类似于google books和scribd.com的东西。我无法理解处理PDF和获取XML数据以及XSL布局和scribd.com或google books之间的关系。这取决于你是在处理扫描的书籍,也就是图像,需要执行OCR,或者你得到一个PDF并需要显示它。你能提供更多详细信息和一些示例吗?@KamranShahid-我还没有完成从PDF到本机excel的转换,但我所做的是将PDF转换为csv。对于那些项目,最终用户更容易直接在excel中打开csv,因为不需要格式化或宏。我不明白为什么你不能直接转换成excel。