感谢您的帮助和查看!
测试文件:input.pdf (1.6 MB)
我想PDF转换成Word文件,PDF里面有文本层,但是我使用下面的代码,输出的word只有图片。
//打开源PDF文档
Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(fileName);
string dir = Path.GetDirectoryName(fileName);
string pathFileName = Path.Combine(dir, "PDFToDOC_out.doc");
//将文件保存为MS文档格式
pdfDocument.Save(pathFileName, Aspose.Pdf.SaveFormat.Doc);
@fhn123456
请尝试使用以下代码片段来获取可搜索的 DOCX:
Document pdfDocument = new Document(dataDir + @"input.pdf");
foreach (var page in pdfDocument.Pages)
{
TextFragmentAbsorber absorber = new TextFragmentAbsorber();
absorber.Visit(page);
foreach (TextFragment fragment in absorber.TextFragments)
{
fragment.TextState.RenderingMode = TextRenderingMode.FillText;
}
page.Resources.Images.Clear();
}
DocSaveOptions saveOptions = new DocSaveOptions();
saveOptions.Format = DocSaveOptions.DocFormat.DocX;
saveOptions.Mode = DocSaveOptions.RecognitionMode.Flow;
//saveOptions.RelativeHorizontalProximity = 2.5f;
//saveOptions.RecognizeBullets = true;
pdfDocument.Save(dataDir + @"output_flow.docx", saveOptions);
output_flow.docx (415.1 KB)