OperatorSelector删除PDF文本失败!

我需要将PDF文件第一页拆分出来,然后把拆分出来的PDF文本层全部删除掉,我发现 OperatorSelector无法删除PDF文本层。

输入文件我使用以下代码进行了内容缩小A4。

        Aspose.Pdf.Document document = new Aspose.Pdf.Document(fileName);

        //PDF文件编辑器  创建PdfFileEditor对象
        Aspose.Pdf.Facades.PdfFileEditor fileEditor = new Aspose.Pdf.Facades.PdfFileEditor();

        //ContentsResizeParameters翻译:内容调整参数
        Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeParameters parameters = new Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeParameters(
        //左侧边距  左边距=页面宽度的10%  
        Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeValue.Percents(0),
        //内容宽度  新内容宽度自动计算为宽度-左边距-右边距(100%-10%-10%=80%)  Aspose.Pdf.PageSize.A4.Width
        Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeValue.Units(Aspose.Pdf.PageSize.A4.Width),
        //右边距    右边距为页面的10%
        Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeValue.Percents(0),
        //上边距    上边距=高度的10%
        Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeValue.Percents(0),
        //内容高度   自动计算新内容高度(类似于宽度)            Aspose.Pdf.PageSize.A4.Height
        Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeValue.Units(Aspose.Pdf.PageSize.A4.Height),
        //底部边距   下边距为10%
        Aspose.Pdf.Facades.PdfFileEditor.ContentsResizeValue.Percents(0)
        );

        //ResizeContents是调整内容大小
        fileEditor.ResizeContents(document, parameters);

输入文件:input.pdf (900.5 KB)

        //拆分
        PdfFileEditor pdfFileEditor = new PdfFileEditor();

        bool susee = pdfFileEditor.Extract("input.pdf", 1, 1, "saveSplit.pdf");



        Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document("saveSplit.pdf");

        //循环遍历所有 pdf 文档页
        for (int i = 1; i <= pdfDocument.Pages.Count; i++)
        {
            Aspose.Pdf.Page page = pdfDocument.Pages[i];

            //Aspose.Pdf.OperatorSelector operatorSelector = new Aspose.Pdf.OperatorSelector(new Aspose.Pdf.Operator.TextShowOperator());

            OperatorSelector operatorSelector = new OperatorSelector(new Aspose.Pdf.Operators.TextShowOperator());

            //选择页面上的所有文本
            page.Contents.Accept(operatorSelector);

            //删除所有文本
            page.Contents.Delete(operatorSelector.Selected);

        }

pdfDocument.Save(newfile, Aspose.Pdf.SaveFormat.Pdf);

@fhn123456

我们能够使用 22.11 版本的 API 在我们的环境中重现该问题。因此,它已在我们的问题跟踪系统中记录为 PDFNET-53135。我们将进一步调查其详细信息,并及时向您通报其更正状态。请耐心等待,给我们一些时间。

对此造成的不便,我们表示歉意。

好的,我知道了,谢谢您的帮助!