显示列表#

DisplayList 是一个包含绘图命令(文本、图像等)的列表。其目的有两个:

  1. 作为一种缓存机制,以减少页面的解析

  2. 作为多线程设置中的一种数据结构,其中一个线程解析页面,另一个线程渲染页面。这个方面目前不被PyMuPDF支持。

显示列表由页面上的对象填充,通常通过执行 Page.get_displaylist() 实现。此外,还有一个独立的构造函数。

通过调用其方法run()get_pixmap()get_textpage(),“重放”列表(一次或多次)。

方法

简短描述

run()

通过设备运行显示列表。

get_pixmap()

生成一个位图

get_textpage()

生成文本页面

rect

显示列表的媒介框

类 API

class DisplayList#
__init__(self, mediabox)#

创建一个新的显示列表。

Parameters:

mediabox (Rect) – 页面矩形。

Return type:

显示列表

run(device, matrix, area)#

通过设备运行显示列表。设备将用其“命令”(即文本提取或图像创建)填充显示列表。显示列表可以在后续多次“读取”页面,而无需从文档文件重新解释。

你很可能会使用下面的专用运行方法之一 – get_pixmap()get_textpage()

Parameters:
  • 设备 (设备) – 设备

  • matrix (Matrix) – 应用于显示列表内容的变换矩阵。

  • 区域 (矩形) – 仅在此区域内可见的部分在列表通过设备时将被考虑。

get_pixmap(matrix=pymupdf.Identity, colorspace=pymupdf.csRGB, alpha=0, clip=None)#

通过绘制设备运行显示列表并返回一个像素图。

Parameters:
  • matrix (Matrix) – 使用的矩阵。默认是单位矩阵。

  • 颜色空间 (颜色空间) – 所需的颜色空间。默认是 RGB。

  • alpha (int) – 确定是否包含透明通道(0,默认)。

  • clip (irect_like) – 限制渲染至该区域与 DisplayList.rect 的交集。

Return type:

位图

Returns:

显示列表的位图。

get_textpage(flags)#

通过文本设备运行显示列表并返回文本页面。

Parameters:

flags (int) – 控制哪些信息被解析为文本页面。PyMuPDF中的默认值为 3 = TEXT_PRESERVE_LIGATURES | TEXT_PRESERVE_WHITESPACE,即 ligatures保留,空格被 保留 (不转换为空间),且图像 不包括。请参见 文本提取标志

Return type:

文本页面

Returns:

显示列表的文本页面。

rect#

包含显示列表的媒介框。当通过 Page.get_displaylist() 创建时,这将等于页面的矩形。

Type:

矩形


本软件按原样提供,不作任何明示或暗示的担保。该软件根据许可证分发,除非按照该许可证的条款明确授权,否则不得复制、修改或分发。有关许可信息,请参阅artifex.com或联系Artifex Software Inc.,地址:39 Mesa Street, Suite 108A, San Francisco CA 94129, United States以获取更多信息。