DtkWidget
DTK Widget module
载入中...
搜索中...
未找到
Dtk::Widget::DImageViewer类 参考

DImageViewer 提供基础的图片浏览功能。 更多...

类 Dtk::Widget::DImageViewer 继承关系图:

信号

void imageChanged (const QImage &image)
 图片变更信号,展示图片实例变更后触发
 
void fileNameChanged (const QString &fileName)
 图片文件路径变更信号,通过 setFileName 设置文件路径后触发
 
void scaleFactorChanged (qreal scaleFactor)
 图片缩放比例系数变更信号,通过界面交互或 setScaleFactor 设置缩放比例系数后触发
 
void rotateAngleChanged (int angle)
 当展示图片旋转时触发,旋转角度为90°的倍数,范围在 -360° ~ 360°
 
void transformChanged ()
 坐标变换信号,当图片通过界面交互或属性变更导致图片显示坐标、大小等变更时触发
 
void requestPreviousImage ()
 请求切换上一张图片,触摸屏滑动切换时触发
 
void requestNextImage ()
 请求切换下一张图片,触摸屏滑动切换时触发
 
void cropImageChanged (const QRect &rect)
 图片裁剪矩形变更信号,图片裁剪完成后触发
 

Public 成员函数

 DImageViewer (QWidget *parent=nullptr)
 构造 DImageViewer 实例,并指定父控件
 
 DImageViewer (const QImage &image, QWidget *parent=nullptr)
 构造 DImageViewer 实例,并指定默认展示图片及父控件
 
 DImageViewer (const QString &fileName, QWidget *parent=nullptr)
 构造 DImageViewer 实例,并指定默认展示图片文件及父控件
 
 ~DImageViewer () Q_DECL_OVERRIDE
 析构 DImageViewer 实例
 
QImage image () const
 返回当前展示图片实例,当未设置图片时,返回空值
 
void setImage (const QImage &image)
 设置当前展示图片实例,若为有效图片,将在内部调用 autoFitImage()
 
QString fileName () const
 获取当前展示的图片文件路径,若图片并未通过文件路径加载时,返回空值
 
void setFileName (const QString &fileName)
 设置当前展示的图片文件路径,若为有效图片,将在内部调用 autoFitImage()
 
qreal scaleFactor () const
 获取当前图片缩放比例系数
 
void setScaleFactor (qreal factor)
 设置当前图片缩放比例系数
 
void scaleImage (qreal factor)
 按缩放比例系数缩放当前图片,在已有缩放比例上累加
 
void autoFitImage ()
 自动切换图片缩放比例,当图片大小小于控件大小时,保持原始大小;当前图片大于控件大小时,使图片适配控件大小展示
 
void fitToWidget ()
 使图片调整缩放比例,适配控件大小展示
 
void fitNormalSize ()
 使图片保持原始大小展示,图片超过控件大小的区域将不会被绘制
 
void rotateClockwise ()
 顺时针旋转图片90°
 
void rotateCounterclockwise ()
 逆时针旋转图片90°
 
int rotateAngle () const
 返回当前图片的旋转角度,旋转角度为90°的倍数,范围在 -360° ~ 360°
 
void resetRotateAngle ()
 重置当前图片的旋转角度,图片恢复为初始角度展示
 
void clear ()
 清除当前展示的图片,包括存储的图片实例及文件路径
 
void centerOn (qreal x, qreal y)
 以传入坐标为中心展示图片
 
QRect visibleImageRect () const
 返回当前展示图片的几何信息,包含在图片上的坐标,显示大小,可用于图片裁剪、定位等
 
Q_SLOT void scaleAtPoint (QPoint pos, qreal factor)
 在设置坐标位置缩放图片,将在当前缩放比例基础上持续缩放
 
void beginCropImage ()
 设置开始裁剪图片,在界面显示裁剪工具,允许拖拽锚点调整裁剪区域
 
void endCropImage ()
 设置结束裁剪图片,隐藏裁剪工具,根据裁剪区域调整显示图片
 
void resetCropImage ()
 复位裁剪图片,恢复图片大小
 
void setCropAspectRatio (qreal w, qreal h)
 设置裁剪工具宽高比,例如16:9/4:3等,设置后,裁剪工具会按比例调整大小,尽可能包含当前展示图片内容
 
QRect cropImageRect () const
 获取当前图片裁剪矩形,此矩形对应图片的像素坐标
 

Protected 成员函数

void mouseMoveEvent (QMouseEvent *event) Q_DECL_OVERRIDE
 
void wheelEvent (QWheelEvent *event) Q_DECL_OVERRIDE
 
bool event (QEvent *event) Q_DECL_OVERRIDE
 

属性

QImage image
 
QString fileName
 
qreal scaleFactor
 
int rotateAngle
 

详细描述

DImageViewer 提供基础的图片浏览功能。

提供图片浏览的控件,通过传入QImage或文件路径加载展示图片,通过键鼠或触摸屏进行拖拽、缩放等交互。

构造及析构函数说明

◆ DImageViewer() [1/3]

Dtk::Widget::DImageViewer::DImageViewer ( QWidget *  parent = nullptr)
explicit

构造 DImageViewer 实例,并指定父控件

参数
[in]parent作为实例的父控件

◆ DImageViewer() [2/3]

Dtk::Widget::DImageViewer::DImageViewer ( const QImage &  image,
QWidget *  parent = nullptr 
)
explicit

构造 DImageViewer 实例,并指定默认展示图片及父控件

参数
[in]image展示的图片
[in]parent作为实例的父控件

◆ DImageViewer() [3/3]

Dtk::Widget::DImageViewer::DImageViewer ( const QString &  fileName,
QWidget *  parent = nullptr 
)
explicit

构造 DImageViewer 实例,并指定默认展示图片文件及父控件

参数
[in]fileName展示的图片文件路径
[in]parent作为实例的父控件

成员函数说明

◆ autoFitImage()

void Dtk::Widget::DImageViewer::autoFitImage ( )

自动切换图片缩放比例,当图片大小小于控件大小时,保持原始大小;当前图片大于控件大小时,使图片适配控件大小展示

参见
DImageViewer::fitToWidget
DImageViewer::fitOriginalImageSize

◆ beginCropImage()

void Dtk::Widget::DImageViewer::beginCropImage ( )

设置开始裁剪图片,在界面显示裁剪工具,允许拖拽锚点调整裁剪区域

参见
DImageViewer::endCropImage

◆ centerOn()

void Dtk::Widget::DImageViewer::centerOn ( qreal  x,
qreal  y 
)

以传入坐标为中心展示图片

参数
[in]xx轴坐标
[in]yy轴坐标

◆ cropImageChanged

void Dtk::Widget::DImageViewer::cropImageChanged ( const QRect &  rect)
signal

图片裁剪矩形变更信号,图片裁剪完成后触发

参数
rect图片裁剪矩形

◆ cropImageRect()

QRect Dtk::Widget::DImageViewer::cropImageRect ( ) const

获取当前图片裁剪矩形,此矩形对应图片的像素坐标

返回
图片裁剪矩形

◆ endCropImage()

void Dtk::Widget::DImageViewer::endCropImage ( )

设置结束裁剪图片,隐藏裁剪工具,根据裁剪区域调整显示图片

参见
DImageViewer::beginCropImage

◆ fileName()

QString Dtk::Widget::DImageViewer::fileName ( ) const

获取当前展示的图片文件路径,若图片并未通过文件路径加载时,返回空值

返回
图片文件路径

◆ fileNameChanged

void Dtk::Widget::DImageViewer::fileNameChanged ( const QString &  fileName)
signal

图片文件路径变更信号,通过 setFileName 设置文件路径后触发

参数
fileName图片文件路径

◆ image()

QImage Dtk::Widget::DImageViewer::image ( ) const

返回当前展示图片实例,当未设置图片时,返回空值

通过 setFileName() 加载时,根据不同图片类型,返回的图片实例不同。动态图返回首帧图片实例,SVG图片根据默认大小构造图片实例返回。

返回
图片实例

◆ imageChanged

void Dtk::Widget::DImageViewer::imageChanged ( const QImage &  image)
signal

图片变更信号,展示图片实例变更后触发

参数
image图片实例

◆ rotateAngleChanged

void Dtk::Widget::DImageViewer::rotateAngleChanged ( int  angle)
signal

当展示图片旋转时触发,旋转角度为90°的倍数,范围在 -360° ~ 360°

参数
angle图片旋转角度
参见
DImageViewer::rotateClockwise
DImageViewer::rotateCounterclockwise
DImageViewer::resetRotateAngle

◆ scaleAtPoint()

void Dtk::Widget::DImageViewer::scaleAtPoint ( QPoint  pos,
qreal  factor 
)

在设置坐标位置缩放图片,将在当前缩放比例基础上持续缩放

参数
[in]pos坐标
[in]factor图片缩放比例
参见
DImageViewer::scaleImage

◆ scaleFactor()

qreal Dtk::Widget::DImageViewer::scaleFactor ( ) const

获取当前图片缩放比例系数

返回
图片缩放比例系数

◆ scaleFactorChanged

void Dtk::Widget::DImageViewer::scaleFactorChanged ( qreal  scaleFactor)
signal

图片缩放比例系数变更信号,通过界面交互或 setScaleFactor 设置缩放比例系数后触发

参数
scaleFactor图片缩放比例系数

◆ scaleImage()

void Dtk::Widget::DImageViewer::scaleImage ( qreal  factor)

按缩放比例系数缩放当前图片,在已有缩放比例上累加

参数
[in]factor图片缩放比例系数
注解
根据此系数调整图片展示效果,使用键鼠操作时,缩放比例系数范围为 0.02 ~ 20

◆ setCropAspectRatio()

void Dtk::Widget::DImageViewer::setCropAspectRatio ( qreal  w,
qreal  h 
)

设置裁剪工具宽高比,例如16:9/4:3等,设置后,裁剪工具会按比例调整大小,尽可能包含当前展示图片内容

参数
[in]w相对宽度比例
[in]h相对高度比例

◆ setFileName()

void Dtk::Widget::DImageViewer::setFileName ( const QString &  fileName)

设置当前展示的图片文件路径,若为有效图片,将在内部调用 autoFitImage()

参数
[in]fileName图片文件路径

◆ setImage()

void Dtk::Widget::DImageViewer::setImage ( const QImage &  image)

设置当前展示图片实例,若为有效图片,将在内部调用 autoFitImage()

参数
[in]image图片实例

◆ setScaleFactor()

void Dtk::Widget::DImageViewer::setScaleFactor ( qreal  factor)

设置当前图片缩放比例系数

参数
[in]factor图片缩放比例系数
注解
根据此系数调整图片展示效果,使用键鼠操作时,缩放比例系数范围为 0.02 ~ 20

◆ visibleImageRect()

QRect Dtk::Widget::DImageViewer::visibleImageRect ( ) const

返回当前展示图片的几何信息,包含在图片上的坐标,显示大小,可用于图片裁剪、定位等

返回
展示图片的集合信息

该类的文档由以下文件生成: