【QImage类常用函数】

1.构造函数(加载图片)

QImage::QImage(const QString &fileName, const char *format = nullptr)

fileName表示文件路径(好像不能存在中文,图片为中文名字,识别不到),format为图片格式。

2.load()函数

bool QImage::load(const QString &fileName, const char *format = nullptr)

和构造函数相同,fileName为图片路径,farmat为格式(可以为空)。

3.width()函数

int QImage::width() const

返回图像的宽度

4.height()函数

int QImage::height() const

返回图像的高度

5.size() 函数

QSize QImage::size() const

返回图像的尺寸,(宽, 高).

6.sizeInBytes()函数

qsizetype QImage::sizeInBytes() const

返回图像字节大小。 QImage的数据是由uchar*类型进行保存的,其为1个字节大小,每一张图像又有长、宽、通道(RGB或ARGB)三部分组成,因此一张图片的字节数为sizeInBytes() == height * width * channel * 1.

7.bytesPerLine()函数

qsizetype QImage::bytesPerLine() const

返回的是一行像素点的大小。 bytesPerLine() == sizeInBytes() / height().

8.scanLine()函数

uchar *QImage::scanLine(int i)

图像可以看作是一个二维数组,每一个像素点可以看作二维数组中的数值,scanLine(int i)返回的就是第i行像素的首地址。

9.bits()函数

uchar *QImage::bits()

第一个像素点的地址,相当于scanLine(0)。

10.constScanLine()函数

const uchar *QImage::constScanLine(int i) const

11.constBit()函数

const uchar *QImage::constBits() const

5和6两个函数不执行共享像素数据的深度复制,因为返回的数据是常量。

12.setColorCount()函数

void QImage::setColorCount(int colorCount)

调整颜色表的大小以包含colorCount个条目,如果颜色表是可扩展的,所有额外颜色将设置为透明(即qRgba(0,0,0,0))。

13.colorCount()函数

int QImage::colorCount() const

返回图像颜色表的大小。

14.color()函数

QRgb QImage::color(int i) const

返回索引i处颜色表中的颜色。第一种颜色位于索引0处。

图像颜色表中的颜色指定为ARGB四元组(QRgb)。使用qAlpha()、qRed()、qGreen()和qBlue()函数获取颜色值组件。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Qt中,`QImage`有许多构造函数和成员函数,它们有不同的参数用于初始化、操作和获取图像信息。下面是一些常用的`QImage`函数及其参数: 1. **构造函数**: - `QImage(const QSize& size, QImage::Format format = QImage::Format_RGB32)`: 初始化一个指定大小和格式的新图像。`size`是对角线长度的整数元组,`format`可选,默认为RGB32格式。 - `QImage(const uchar* data, int width, int height, int bytesPerLine, QImage::Format format)`: 从内存缓冲区创建图像,传入数据数组、宽度、高度、每行字节数和格式。 - `QImage(const QPixmap &pixmap)`: 从QPixmap对象复制图像数据。 2. **设置图像数据**: - `QImage::setData(const uchar* data, int bytesPerLine, QImage::Format format = QImage::Format_ARGB32_Premultiplied)`: 将新的图像数据设为给定的数据,包括新的数据格式。 - `QImage::load(const QString& fileName)`: 加载本地文件作为QImage。 3. **获取信息**: - `width() const`: 返回图像的宽度。 - `height() const`: 返回图像的高度。 - `format() const`: 获取图像的格式,如QImage::Format_RGB32或QImage::Format_Grayscale8。 4. **显示和绘制**: - `QPainter painter(this)`: 创建一个绘图上下文,在当前图像上绘画。 - `void paint(QPainter *painter, const QRect &rect = QRect())`: 画到指定矩形区域,如果没有提供,则填充整个图像。 - `QPixmap toPixmap() const`: 转换为QPixmap对象,便于显示。 5. **序列化与编码**: - `QByteArray toData() const`: 将图像数据编码成二进制字符串。 - `QString toBase64() const`: 编码为Base64字符串,常用于在线显示。 常用函数还有缩放、旋转等操作,注意每个操作都可能涉及到新的参数。使用前查阅文档了解详细的参数意义是很重要的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值