Free Support Forum - aspose.com

Aspose pdf 读取字段问题


#1

原文件中:Accessories通过下列样例读取后拆分显示为一个个单词,“-”符号读取空白断句 能否实现整句读取?
导出文件.pdf (657.5 KB)
原文件.pdf (522.3 KB)

      Document doc = new Document(path);
        // Instantiate ParagraphAbsorber
        ParagraphAbsorber absorber = new ParagraphAbsorber();
        absorber.Visit(doc);              

int intStartLength = 0;
string stringSenderMessage = string.Empty;
for (int i = 0; i < absorber.PageMarkups.Count; i++)
{
PageMarkup markup = absorber.PageMarkups[i];

            for (int j = markup.Sections.Count - 1; j >= 0; j--)
            {
                MarkupSection section = markup.Sections[j];
                for (int k = section.Paragraphs.Count - 1; k >= 0; k--)
                {
                    StringBuilder paragraphText = new StringBuilder();

                    MarkupParagraph paragraph = section.Paragraphs[k];
                    List<TextFragment> fragmentlist = paragraph.Fragments;
                    for (int t = 0; t < fragmentlist.Count; t++)
                    {
                        TextFragment fragment = fragmentlist[t];
                        if (fragment.Text.ToString().Trim() != string.Empty)
                        {
                            fragment.Text = "@" + fragment.Text.ToString() + "#";
                        }
                    }


                }
            }


        }

#2

@philipqian.163

感谢您与支持人员联系。

您是否可以在分享PDF文档作为预期输出和屏幕截图时详细说明您的要求,以便我们进一步调查以帮助您。


#3

如图原文中一个单词,读取成一个个字母,如何按单词、整句读取。1.png (139.5 KB)
2.png (193.5 KB)


#4

@philipqian.163

请注意,PDF文档中的文本可以以任何格式存在,例如单个单词可能包含一个或多个TextFragment,每个TextFragment可能包含一个或多个TextSegment以及该TextSegment中的多个字符。

您可以使用以下代码根据您的要求迭代单词和字符:

foreach (TextFragment textFragment in fragmentlist)
{
    foreach (TextSegment textSegment in textFragment.Segments)
    {
        foreach (CharInfo charInfo in textSegment.Characters)
        {
            //TODO Code Here
        }
    }
}

我们希望这会有所帮助。 如果您需要任何进一步的帮助,请随时与我们联系。