如何从 pdf C# 中获取具有特定颜色的文本
我必须将 pdf 文件中的数据放入特定的数据库结构中。这要求我能够从 pdf 文件中获取某些数据。由于 pdf 没有任何标签等...我想知道是否可以根据颜色获取文本。比如说我想要所有的红色文本。或者我想要文档中的所有斜体文本。这在 C# 中可能吗?或者有其他方法可以轻松过滤 pdf 文档中的数据吗?
I have to put the data from a pdf file in a certain database structure. This requires me to be able to get certain data out of the pdf file. Since pdf hasn't got any tags etc ... i was wondering if it is possible to get text based on a color. Say for example i want all the red text. Or i want all the italic text in the document. Is this possible in C# ? Or is there an other way to easily filter data in a pdf document ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我采取了不同的方法。我把pdf文件转换成了excel文件。搜索彩色文本非常容易
I've taken a different approach. I converted the pdf to an excel file. And this was very easy to search for the coloured text
通过使用此库 http://www.codeproject.com/KB/files /xpdf_csharp.aspx?msg=3154408
您可以访问每种文字样式(字体、颜色...)
By using this library http://www.codeproject.com/KB/files/xpdf_csharp.aspx?msg=3154408
you have an access to every word style (font, color...)
iText 的 PdfTextExtractor(以及它所依赖的所有代码)不跟踪当前颜色。哎哟。添加起来并不那么困难,因此您可以自己修改 iText:
iText's PdfTextExtractor (and all the code it rests on) DOES NOT track the current color. Ouch. It wouldn't be all that hard to add, so you could modify iText yourself:
ContentOperator
classes for 'g', 'G', 'rg', 'RG', 'K', and 'k' (and maybe CS, cs, SC, sc, SCN, scn), to modify the stroke and fill colors.尝试 PdfLibTET http://www.pdflib.com/products/tet/
它应该能够获取有关文本的信息。
Try PdfLibTET http://www.pdflib.com/products/tet/
It should be able to get informations about text.