Когда я конвертирую pdf с некоторым форматом в txt, я получаю весь текст слева.
Есть ли код для преобразования pdf в txt с тем же форматом, что и в pdf?
Когда я конвертирую pdf с некоторым форматом в txt, я получаю весь текст слева.
Есть ли код для преобразования pdf в txt с тем же форматом, что и в pdf?
Если вы можете проанализировать расположение текстовых символов в вашем PDF-файле, вы, вероятно, сможете добиться некоторого форматирования, вставив пробелы или отступы.
Я знаю, что SDK LEADTOOLS, с которым я знаком, так как работаю на поставщика, имеет класс DocumentConverter
, который создает форматированный вывод TXT из входного PDF-файла с форматированием, примерно достигнутым, как описано выше.
Код для этого будет выглядеть так:
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: