当我将某种格式的 pdf 转换为 txt 时,我将所有文本都向左。
有没有代码可以把pdf转成txt,格式和pdf格式一样?
答案 0 :(得分:0)
如果您能够解析 PDF 中文本字符的位置,您可能可以通过插入空格或缩进来实现一些格式设置。
我知道 LEADTOOLS SDK 有一个 DocumentConverter
类,它从输入 PDF 生成格式化的 TXT 输出,格式大致如上所述,这是我在为供应商工作后所熟悉的。
代码如下:
using (DocumentConverter documentConverter = new DocumentConverter())
{
var inFile = @"Input.pdf";
var outFile = Path.Combine(@"Output.txt");
var docWriter = new DocumentWriter();
var textOptions = docWriter.GetOptions(DocumentFormat.Text) as TextDocumentOptions;
textOptions.DocumentType = TextDocumentType.Ansi;
textOptions.AddPageNumber = true;
textOptions.AddPageBreak = true;
textOptions.Formatted = true;
docWriter.SetOptions(DocumentFormat.Text, textOptions);
documentConverter.SetDocumentWriterInstance(docWriter);
var format = DocumentFormat.Text;
var jobData = DocumentConverterJobs.CreateJobData(inFile, outFile, format);
jobData.JobName = "conversion job";
var job = documentConverter.Jobs.CreateJob(jobData);
documentConverter.Jobs.RunJob(job);
}
例如,PDF 页面转换的输出文本如下所示: