QPdfView Class
PDF 浏览器小工具。更多
Header: | #include <QPdfView> |
Inherits: | QAbstractScrollArea |
公共类型
属性
|
|
公共功能
QPdfView(QWidget *parent) | |
virtual | ~QPdfView() |
int | currentSearchResultIndex() const |
QPdfDocument * | document() const |
QMargins | documentMargins() const |
QPdfView::PageMode | pageMode() const |
QPdfPageNavigator * | pageNavigator() const |
int | pageSpacing() const |
QPdfSearchModel * | searchModel() const |
void | setDocument(QPdfDocument *document) |
void | setDocumentMargins(QMargins margins) |
void | setPageSpacing(int spacing) |
void | setSearchModel(QPdfSearchModel *searchModel) |
qreal | zoomFactor() const |
QPdfView::ZoomMode | zoomMode() const |
公共插槽
void | setCurrentSearchResultIndex(int currentResult) |
void | setPageMode(QPdfView::PageMode mode) |
void | setZoomFactor(qreal factor) |
void | setZoomMode(QPdfView::ZoomMode mode) |
信号
void | currentSearchResultIndexChanged(int currentResult) |
void | documentChanged(QPdfDocument *document) |
void | documentMarginsChanged(QMargins documentMargins) |
void | pageModeChanged(QPdfView::PageMode pageMode) |
void | pageSpacingChanged(int pageSpacing) |
void | searchModelChanged(QPdfSearchModel *searchModel) |
void | zoomFactorChanged(qreal zoomFactor) |
void | zoomModeChanged(QPdfView::ZoomMode zoomMode) |
详细说明
QPdfView 是一个 PDF 浏览器部件,它提供的用户体验与许多常见的 PDF 浏览器应用程序类似,但有两种modes 。在MultiPage
模式下,它支持在整个文档中翻阅页面,页面图像之间的间隙很窄。在SinglePage
模式下,它一次显示一页。
成员类型文档
enum class QPdfView::PageMode
该枚举描述 PDF 阅读器的整体行为:
常量 | 值 | 说明 |
---|---|---|
QPdfView::PageMode::SinglePage | 0 | 一次显示一页。 |
QPdfView::PageMode::MultiPage | 1 | 允许滚动浏览文档中的所有页面。 |
enum class QPdfView::ZoomMode
该枚举描述 PDF 阅读器的放大行为:
常量 | 值 | 说明 |
---|---|---|
QPdfView::ZoomMode::Custom | 0 | 仅使用zoomFactor 。 |
QPdfView::ZoomMode::FitToWidth | 1 | 自动选择缩放系数,使页面宽度适合查看。 |
QPdfView::ZoomMode::FitInView | 2 | 自动选择缩放因子,使整个页面适合显示在视图中。 |
属性文档
[since 6.6]
currentSearchResultIndex : int
如果该属性设置为正数,且searchModel 已设置,则QPdfView 会在给定索引处围绕QPdfSearchModel 提供的搜索结果绘制一个框架。例如,如果QPdfSearchModel 被用作QListView 的模型,则可以通过将QItemSelectionModel::currentChanged() 从QListView::selectionModel() 连接到一个函数来保持该属性的更新,该函数反过来会调用该函数。
默认情况下,它是-1
,因此不会框选搜索结果。
此属性在 Qt 6.6 中引入。
访问函数:
int | currentSearchResultIndex() const |
void | setCurrentSearchResultIndex(int currentResult) |
Notifier 信号:
void | currentSearchResultIndexChanged(int currentResult) |
document : QPdfDocument*
该属性包含要查看的文件。
访问功能:
QPdfDocument * | document() const |
void | setDocument(QPdfDocument *document) |
通知信号:
void | documentChanged(QPdfDocument *document) |
documentMargins : QMargins
该属性用于保存页面视图周围的边距。
访问功能:
QMargins | documentMargins() const |
void | setDocumentMargins(QMargins margins) |
通知信号:
void | documentMarginsChanged(QMargins documentMargins) |
pageMode : PageMode
该属性用于确定是一次显示一页,还是显示文档中的所有页面。默认值为SinglePage
。
访问功能:
QPdfView::PageMode | pageMode() const |
void | setPageMode(QPdfView::PageMode mode) |
Notifier 信号:
void | pageModeChanged(QPdfView::PageMode pageMode) |
pageSpacing : int
该属性用于保存MultiPage mode 页面之间的填充大小。
访问功能:
int | pageSpacing() const |
void | setPageSpacing(int spacing) |
通知信号:
void | pageSpacingChanged(int pageSpacing) |
[since 6.6]
searchModel : QPdfSearchModel*
如果设置了该属性,QPdfView 将在QPdfSearchModel::resultsOnPage() 提供的搜索结果上绘制高亮矩形。默认情况下,它是nullptr
。
此属性在 Qt 6.6 中引入。
访问函数:
QPdfSearchModel * | searchModel() const |
void | setSearchModel(QPdfSearchModel *searchModel) |
Notifier 信号:
void | searchModelChanged(QPdfSearchModel *searchModel) |
zoomFactor : qreal
该属性表示像素与点的比率。默认值为1
,即 1 个点(1/72 英寸)等于 1 个逻辑像素。
访问功能:
qreal | zoomFactor() const |
void | setZoomFactor(qreal factor) |
通知信号:
void | zoomFactorChanged(qreal zoomFactor) |
zoomMode : ZoomMode
此属性表示是为页面使用自定义大小,还是缩放页面以适应视图。默认值为CustomZoom
。
访问功能:
QPdfView::ZoomMode | zoomMode() const |
void | setZoomMode(QPdfView::ZoomMode mode) |
Notifier 信号:
void | zoomModeChanged(QPdfView::ZoomMode zoomMode) |
成员函数文档
[explicit]
QPdfView::QPdfView(QWidget *parent)
通过父 widgetparent 构建 PDF 阅读器。
[virtual noexcept]
QPdfView::~QPdfView()
销毁 PDF 查看器。
QPdfPageNavigator *QPdfView::pageNavigator() const
此访问器返回将处理前后导航的导航栈。
© 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.