QPdfPageRenderer Class
QPdfPageRenderer 类封装了 PDF 文档页面的渲染。更多
Header: | #include <QPdfPageRenderer> |
Inherits: | QObject |
公共类型
enum class | RenderMode { MultiThreaded, SingleThreaded } |
属性
- document : QPdfDocument*
- renderMode : RenderMode
公共功能
QPdfPageRenderer(QObject *parent) | |
virtual | ~QPdfPageRenderer() override |
QPdfDocument * | document() const |
QPdfPageRenderer::RenderMode | renderMode() const |
quint64 | requestPage(int pageNumber, QSize imageSize, QPdfDocumentRenderOptions options = QPdfDocumentRenderOptions()) |
void | setDocument(QPdfDocument *document) |
void | setRenderMode(QPdfPageRenderer::RenderMode mode) |
信号
void | documentChanged(QPdfDocument *document) |
void | renderModeChanged(QPdfPageRenderer::RenderMode renderMode) |
详细说明
QPdfPageRenderer 包含一个队列,用于收集通过requestPage() 调用的所有渲染请求。根据所配置的RenderMode ,QPdfPageRenderer 会在下一次事件循环调用时在主 UI 线程中(RenderMode::SingleThreaded
)或在单独的工作线程中(RenderMode::MultiThreaded
)处理该队列,并在渲染完成后通过 pageRendered() 信号为每个请求发送结果。
另请参见 QPdfDocument 。
成员类型文档
enum class QPdfPageRenderer::RenderMode
该枚举描述了页面的渲染方式。
常量 | 值 | 描述 |
---|---|---|
QPdfPageRenderer::RenderMode::MultiThreaded | 0 | 所有页面都在单独的工作线程中渲染。 |
QPdfPageRenderer::RenderMode::SingleThreaded | 1 | 所有页面都在主 UI 线程中呈现(默认)。 |
另请参阅 renderMode() 和setRenderMode()。
属性文档
document : QPdfDocument*
此属性包含此对象渲染页面的文档实例。
默认情况下,该属性为nullptr
。
访问功能:
QPdfDocument * | document() const |
void | setDocument(QPdfDocument *document) |
Notifier 信号:
void | documentChanged(QPdfDocument *document) |
另请参阅 document(),setDocument() 和QPdfDocument 。
renderMode : RenderMode
此属性表示呈现器用于呈现页面的模式。
默认情况下,此属性为RenderMode::SingleThreaded
。
访问功能:
QPdfPageRenderer::RenderMode | renderMode() const |
void | setRenderMode(QPdfPageRenderer::RenderMode mode) |
Notifier 信号:
void | renderModeChanged(QPdfPageRenderer::RenderMode renderMode) |
另请参阅 setRenderMode() 和RenderMode 。
成员函数文档
[explicit]
QPdfPageRenderer::QPdfPageRenderer(QObject *parent)
使用父对象parent 构建页面呈现器对象。
[override virtual noexcept]
QPdfPageRenderer::~QPdfPageRenderer()
销毁页面呈现器对象。
QPdfDocument *QPdfPageRenderer::document() const
返回此对象渲染页面的文档,如果之前未设置,则返回nullptr
。
注: 属性 document 的获取函数。
另请参阅 setDocument() 和QPdfDocument 。
QPdfPageRenderer::RenderMode QPdfPageRenderer::renderMode() const
返回页面的渲染模式。
注: 属性 renderMode 的获取函数。
另请参阅 setRenderMode() 和RenderMode 。
quint64 QPdfPageRenderer::requestPage(int pageNumber, QSize imageSize, QPdfDocumentRenderOptions options = QPdfDocumentRenderOptions())
请求呈现器根据提供的options 将页面pageNumber 呈现为大小为imageSize 的QImage 。
渲染完成后,pageRendered() 信号将以渲染结果为参数发出。
返回值是一个 ID,用于唯一标识渲染请求。如果队列中仍有参数相同的请求,则会返回该队列请求的 ID。
void QPdfPageRenderer::setDocument(QPdfDocument *document)
设置该对象渲染页面的document 。
注: 属性document 的设置函数。
另请参阅 document() 和QPdfDocument 。
void QPdfPageRenderer::setRenderMode(QPdfPageRenderer::RenderMode mode)
将页面渲染模式设置为mode 。
注: 属性renderMode 的设置函数。
另请参阅 renderMode() 和RenderMode 。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.