C#(Asp.net) 将 Pdf 转换为 txt 文件?保持 pdf 对齐(txt 文件中的空格和填充应与 pdf 文件相同)?
C#(Asp.net) Convert Pdf to txt file? keeping the pdf alignment (spaces and padding in txt file should be same as pdf file)?
itextsharp 和 pdfbox
在两者中我都能够提取文本字符,但是对齐方式与 pdf 文件对齐方式不同,(左边距,顶部等)
我怎样才能在 txt 文件中保持 pdf 对齐?
正如您在试验 iText 和 PdfBox 时所经历的那样,您提出的问题是不可能的,因为可移植文档格式定义布局的方式与以纯文本格式建立布局的方式不匹配.
- 在
.txt
文件中,对齐、缩进、间距...是使用白色 space 字符实现的,例如 spaces (</code>),换行符(<code>/n
)。和制表符 (/t
).
- 在
.pdf
文件中,单词之间经常使用单个 space 字符,但是当需要多个 space 时,或者在优化单词间距的情况下为了获得更好的阅读体验,您会发现绝对定位优于使用 space 字符。内容流中的 \n
不被视为内容的新行,但新行的概念通过换行符存在。 PDF 中根本不存在选项卡的概念;取而代之的是使用 (x, y)
坐标的绝对定位。
您期望从 PDF 到 TXT 的转换过程可以以某种方式解决这种语法不匹配的问题,但它是从一个完全错误的假设开始的:您需要纯文本格式的绝对定位功能,而且功能根本不存在。你的问题的答案是没有答案。
itextsharp 和 pdfbox 在两者中我都能够提取文本字符,但是对齐方式与 pdf 文件对齐方式不同,(左边距,顶部等)
我怎样才能在 txt 文件中保持 pdf 对齐?
正如您在试验 iText 和 PdfBox 时所经历的那样,您提出的问题是不可能的,因为可移植文档格式定义布局的方式与以纯文本格式建立布局的方式不匹配.
- 在
.txt
文件中,对齐、缩进、间距...是使用白色 space 字符实现的,例如 spaces (</code>),换行符(<code>/n
)。和制表符 (/t
). - 在
.pdf
文件中,单词之间经常使用单个 space 字符,但是当需要多个 space 时,或者在优化单词间距的情况下为了获得更好的阅读体验,您会发现绝对定位优于使用 space 字符。内容流中的\n
不被视为内容的新行,但新行的概念通过换行符存在。 PDF 中根本不存在选项卡的概念;取而代之的是使用(x, y)
坐标的绝对定位。
您期望从 PDF 到 TXT 的转换过程可以以某种方式解决这种语法不匹配的问题,但它是从一个完全错误的假设开始的:您需要纯文本格式的绝对定位功能,而且功能根本不存在。你的问题的答案是没有答案。