确定换行符

跟踪多行文本片段的换行

下面的代码片段展示了如何跟踪PDF文档中多行文本片段的换行行为。

定义了 track_line_breaking() 函数来演示此功能。它首先指定生成的PDF文档和对应的文本文件的输出文件路径,该文本文件将包含有关换行的信息。

在函数内部,创建了一个新的PDF文档对象,并向其中添加了一个新页面。随后,使用循环生成了四个 TextFragment 实例,其中在字符串中插入了换行符("\r\n")以模拟多行文本。

每个 TextFragment 被配置为 20 点的字体大小,然后被添加到页面的段落中。

在所有 TextFragment 被添加后,文档被保存。

然后,函数继续使用 get_notifications() 方法从生成的PDF文档的第二页提取有关换行的通知。 这些通知被写入之前指定的文本文件中。

此代码片段演示了如何创建包含多行文本的PDF文档,然后提取有关换行行为的信息,以提供有关文本在文档中布局的见解。


    import aspose.pdf as ap

    def track_line_breaking():
        """跟踪多行文本片段的换行"""
        output_pdf = DIR_OUTPUT_TEXTS + "track_line_breaking.pdf"
        output_txt = DIR_OUTPUT_TEXTS + "track_line_breaking.txt"

        # 创建新的文档对象
        document = ap.Document()
        page = document.pages.add()

        for i in range(4):
            text = ap.text.TextFragment(
                "Lorem ipsum \r\ndolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
            )
            text.text_state.font_size = 20
            page.paragraphs.add(text)
        document.save(output_pdf)

        notifications = document.pages[1].get_notifications()
        with open(output_txt, "w") as f:
            f.write(notifications)