QImage

来源:互联网 发布:数据库软件都有哪些 编辑:程序博客网 时间:2024/05/17 22:52
支持的图像格式:
BMP ,GIF , JPG , JPEG, PNG, PBM, PGM, PPM, XBM, XPM



//使用给定的大小和格式构造图像
QImage(const QSize &size, Format format)


//使用给定的大小和格式构造图像
QImage(int width, int height, Format format)


//用给定的宽度、高度和格式构造图像,使用一个已有的内存缓冲区、数据。宽度和高度必须指定像素,数据必须是32位对齐,每个扫描线的图像数据中也必须是32位对齐。
QImage(uchar *data, int width, int height, Format format, QImageCleanupFunction cleanupFunction = Q_NULLPTR, void *cleanupInfo = Q_NULLPTR)
QImage(const uchar *data, int width, int height, Format format, QImageCleanupFunction cleanupFunction = Q_NULLPTR, void *cleanupInfo = Q_NULLPTR)
QImage(uchar *data, int width, int height, int bytesPerLine, Format format, QImageCleanupFunction cleanupFunction = Q_NULLPTR, void *cleanupInfo = Q_NULLPTR)
QImage(const uchar *data, int width, int height, int bytesPerLine, Format format, QImageCleanupFunction cleanupFunction = Q_NULLPTR, void *cleanupInfo = Q_NULLPTR)


//从给定的xpm图像构造图像
QImage(const char * const[] xpm)


//从给定的文件名加载图像
QImage(const QString &fileName, const char *format = Q_NULLPTR)


//如果这是灰度图像返回真,否则为假
bool allGray() const


//返回图像位数
int bitPlaneCount() const


//获取图像首地址
uchar *bits()


//获取图像首地址,不进行深度拷贝
const uchar *bits() const


//图像总字节数
int byteCount() const


//图像每行字节数
int bytesPerLine() const


//返回标识该QImage对象的内容数量
qint64 cacheKey() const


//返回颜色表中的颜色
QRgb color(int i) const


//返回颜色表大小
int colorCount() const


//返回图像在颜色表中包含的颜色的列表
QVector<QRgb> colorTable() const


//返回像素首地址,该函数不进行深度拷贝
const uchar *constBits() const


//返回从I开始的指向扫描线的指针
const uchar *constScanLine(int i) const


//返回指定格式的图像
QImage convertToFormat(Format format, Qt::ImageConversionFlags flags = Qt::AutoColor) const
QImage convertToFormat(Format format, const QVector<QRgb> &colorTable, Qt::ImageConversionFlags flags = Qt::AutoColor) const


//返回图像的子区域作为一个新图像
QImage copy(const QRect &rectangle = QRect()) const
QImage copy(int x, int y, int width, int height) const


//按指定格式返回一个遮罩图像
QImage createAlphaMask(Qt::ImageConversionFlags flags = Qt::AutoColor) const


//创建遮罩
QImage createHeuristicMask(bool clipTight = true) const


//根据给定的颜色创建遮罩
QImage createMaskFromColor(QRgb color, Qt::MaskMode mode = Qt::MaskInColor) const


//返回图片深度
int depth() const


//返回图像的设备像素比例
qreal devicePixelRatio() const


//返回X的像素数
int dotsPerMeterX() const


//返回Y的像素数
int dotsPerMeterY() const


//以给定的值填充整个图像
void fill(uint pixelValue)
void fill(const QColor &color)
void fill(Qt::GlobalColor color)


//返回图像格式
Format format() const


//是否有Alpha通道
bool hasAlphaChannel() const


//图像高度
int height() const


//反转图像的像素,只有当图像的深度为32位,给定的反转模式才有意义
void invertPixels(InvertMode mode = InvertRgb)


//如果是灰度图像
bool isGrayscale() const


//图像是否为空
bool isNull() const


//加载图像
bool load(const QString &fileName, const char *format = Q_NULLPTR)
bool load(QIODevice *device, const char *format)


//从第Len个字节的二进制数据加载一个图像
bool loadFromData(const uchar *data, int len, const char *format = Q_NULLPTR)
bool loadFromData(const QByteArray &data, const char *format = Q_NULLPTR)


//返回图像镜像
QImage mirrored(bool horizontal = false, bool vertical = true) const


//返回图像偏移量
QPoint offset() const


//返回指定坐标像素的RGB
QRgb pixel(const QPoint &position) const
QRgb pixel(int x, int y) const


//返回指定坐标像素的Color
QColor pixelColor(const QPoint &position) const
QColor pixelColor(int x, int y) const


//返回像素格式
QPixelFormat pixelFormat() const


//返回给定位置的像素索引
int pixelIndex(const QPoint &position) const
int pixelIndex(int x, int y) const


//返回图像矩形
QRect rect() const


//红色和蓝色交换,返回交换后的图像
QImage rgbSwapped() const


//使用给定的文件名格式和质量因子,把图像保存到给定文件名中,返回TRUE
bool save(const QString &fileName, const char *format = Q_NULLPTR, int quality = -1) const
bool save(QIODevice *device, const char *format = Q_NULLPTR, int quality = -1) const


//返回缩放后的图像
//Qt::IgnoreAspectRatio 忽略纵横比,拉伸到指定大小
//Qt::KeepAspectRatio 保持纵横比,宽度与矩形对齐
//Qt::KeepAspectRatioByExpanding 保持纵横比,高度与矩形对齐
QImage scaled(const QSize &size, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode = Qt::FastTransformation) const QImage scaled(int width, int height, Qt::AspectRatioMode aspectRatioMode = Qt::IgnoreAspectRatio, Qt::TransformationMode transformMode =Qt::FastTransformation)const


//返回图像缩放副本,该函数会自动按比例缩放宽度
QImage scaledToHeight(int height, Qt::TransformationMode mode = Qt::FastTransformation) const
QImage scaledToWidth(int width, Qt::TransformationMode mode = Qt::FastTransformation) const


//返回扫描线,第一条扫描线在索引0
uchar *scanLine(int i)
const uchar *scanLine(int i) const


//在给定的索引设置颜色
void setColor(int index, QRgb colorValue)


//扩展颜色表的颜色数目
void setColorCount(int colorCount)


//设置颜色表
void setColorTable(const QVector<QRgb> &colors)


//设置设备像素比
void setDevicePixelRatio(qreal scaleFactor)


//定义的纵横比,通过设置在一个物理表中的像素的数目,以适应水平。
void setDotsPerMeterX(int x)
void setDotsPerMeterY(int y)


//设置图像的像素的数目
void setOffset(const QPoint &offset)


//设置像素颜色
void setPixel(const QPoint &position, uint index_or_rgb)
void setPixel(int x, int y, uint index_or_rgb)
void setPixelColor(const QPoint &position, const QColor &color)
void setPixelColor(int x, int y, const QColor &color)


//嵌入字符串
void setText(const QString &key, const QString &text)


//返回图像大小
QSize size() const


//图像互换,该函数比较快
void swap(QImage &other)


//返回与图像关联的文本
QString text(const QString &key = QString()) const


//返回该图像的文本键。
QStringList textKeys() const


//返回使用给定的转换矩阵和转换模式转换的图像的副本。
QImage transformed(const QMatrix &matrix, Qt::TransformationMode mode = Qt::FastTransformation) const
QImage transformed(const QTransform &matrix, Qt::TransformationMode mode = Qt::FastTransformation) const


//如果该坐标有效,返回true
bool valid(const QPoint &pos) const
bool valid(int x, int y) const


//图像宽度
int width() const








Static Public Members
//从size字节开始二进制文本以指定格式构建QImage
QImage fromData(const uchar *data, int size, const char *format = Q_NULLPTR)
QImage fromData(const QByteArray &data, const char *format = Q_NULLPTR)


//转换格式到QImage::Format
QImage::Format toImageFormat(QPixelFormat format)


//转换格式到QPixelFormat 
QPixelFormat toPixelFormat(QImage::Format format)


//返回给定宽度。高度和矩阵的图像的实际矩阵
QMatrix trueMatrix(const QMatrix &matrix, int width, int height)


/返回给定宽度。高度和矩阵的图像的实际矩阵,可以用来透视变换的图像
QTransform trueMatrix(const QTransform &matrix, int width, int height)



Protected Functions
//返回图像的平滑缩放副本
QImage smoothScaled(int w, int h) const




enum QImage::Format
QImage::Format_Invalid 图像无效
QImage::Format_Mono 存储使用1位每像素的图像,字节填充最重要位第一
QImage::Format_MonoLSB 存储使用1位每像素的图像,字节填充不显著位第一
QImage::Format_Indexed8 图像存储使用8位指标转化成Colormap
QImage::Format_RGB32 存储使用32位RGB格式的图像(0xffrrggbb)
QImage::Format_ARGB32 存储使用32为ARGB格式的图像(0xaarrggbb)
QImage::Format_ARGB32_Premultiplied 图像存储使用一个自左乘32位ARGB格式
QImage::Format_RGB16 图像存储使用5-6-5 16位RGB格式
QImage::Format_ARGB8565_Premultiplied 图像存储使用一个自左乘24位ARGB格式8-5-6-5
QImage::Format_RGB666 图像存储使用6-6-6 24位RGB格式,未使用的最重要的位总是为零
QImage::Format_ARGB6666_Premultiplied 图像存储使用一个自左乘24位ARGB格式6-6-6-6
QImage::Format_RGB555 图像存储使用16位RGB格式(5-5-5),位置用的最重要的始终为零
QImage::Format_ARGB8555_Premultiplied 图像存储使用一个自左乘24位ARGB格式8-5-5-5
QImage::Format_RGB888 图像存储使用8-8-8 24位RGB格式
QImage::Format_RGB444 图像存储使用16位RGB格式(4-4-4)未使用的位始终为零
QImage::Format_ARGB4444_Premultiplied 图像存储使用一个自左乘16位ARGB格式4-4-4-4
QImage::Format_RGBX8888 图像存储使用32位字节命令RGB(x)格式8-8-8-8
QImage::Format_RGBA8888 存储使用32位字节命令RGBA格式(8-8-8-8)的的图像
QImage::Format_RGBA8888_Premultiplied 图像存储使用一个自左乘32位字节命令RGBA格式8-8-8-8
QImage::Format_BGR30 存储使用32位BGR格式(x-10-10-10)的的图像
QImage::Format_A2BGR30_Premultiplied 图像存储使用32位自左乘abgr格式2-10-10-10
QImage::Format_RGB30 存储使用32位RGB格式(x-10-10-10)的的图像
QImage::Format_A2RGB30_Premultiplied 图像存储使用2-10-10-10 32位自左乘ARGB格式
QImage::Format_Alpha8 该图像是使用一个8位的阿尔法格式存储
QImage::Format_Grayscale8 图像是使用一个8位灰度格式存储



enum QImage::InvertMode
QImage::InvertRgb  反转RGB通道,a通道变
QImage::InvertRgba 反转所有通道
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 腰椎盘突出脚麻怎么办 水泡破了化脓了怎么办 泰迪口臭很严重怎么办 狗狗的嘴巴好臭怎么办 2岁宝宝有口臭怎么办 2岁半宝宝口臭怎么办 胃热引起的口臭怎么办 脑梗右手不能动怎么办 脑梗右手不灵活怎么办 冒冷汗头晕想吐怎么办 脸中风嘴歪了怎么办 耳朵里疱疹破了怎么办 吃了变质的米饭怎么办 吃了变质的蛋糕怎么办 吃了变质的饭怎么办 颈椎病犯了头晕恶心怎么办 感冒引起的耳朵疼怎么办 感冒了左耳朵疼怎么办 受风引起的面瘫怎么办 两边的脸不一样大怎么办 脖子扭到怎么办快速好 卡马西平片过量怎么办 天冷眼睛神经跳怎么办 每天失眠怎么办要疯了 老是失眠是怎么办才好 汗毛又多又长怎么办 脸上出油毛孔粗大黑头怎么办 毛长在皮肤里怎么办 腰韧带拉伤怎么办恢复快 脚扭伤伤了韧带怎么办 膝关节韧带拉伤怎么办恢复快 脚踝韧带拉伤怎么办恢复快 脚扭伤一年没好怎么办 脚扭伤半年还疼怎么办 脚崴过有后遗症怎么办 脚扭伤脚面肿了怎么办 腰突然扭了好痛怎么办 腰扭伤了怎么办最有效 腰扭伤了不能动怎么办 前交叉韧带增粗怎么办 膝盖前交叉韧带损伤怎么办