# QPictureBox **Repository Path**: kokokala/qpicturebox ## Basic Information - **Project Name**: QPictureBox - **Description**: 替代QLabel 的Qt图像显示控件,使用OpenGL渲染,可解决使用QLabel显示在高刷新率大画幅下渲染速度慢的问题 - **Primary Language**: C/C++ - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 5 - **Created**: 2023-12-19 - **Last Updated**: 2023-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # QPictureBox #### 介绍 ##### 本项目的主要目的: Qt Widgets中缺少专门用于显示图片的控件,我们一般使用QLabel来显示图片。使用QLabel显示图片时,Qt调用CPU对画面进行渲染,当控件的size较大时,会占用相当高的CPU,出现界面卡顿现象。使用该控件显示图片能有效的解决CPU占用高和界面卡顿的问题。 ##### 主要功能 基于OpenGL实现的Qt图片显示控件,使用GPU进行渲染,能够有效解决大分辨率情况下使用QLabel显示图像占用CPU高和卡顿的问题。 ##### 使用说明 1. 只需要将QPictureBox的头文件和源文件添加到工程中, 在界面中包含qpicturebox.h头文件,实例化QPictureBox对象并将其插入到你的窗口中即可; 2. 可以通过setImage设置需要显示的图像,该函数包含以下两种重载形式: ``` c++ setImage(QImage &image); // 从QImage中读取显示图片 setImage(const QString &filename); // 从文件中读取填充图像; ``` 3. 可以通过setScaleType(QPictureBox::ScaleType)函数设置图像的填充形式,图像在控件中的缩放分为三种类型 fitXY(拉伸填充),fitCenter(等比例中间填充),CenterCorp(裁剪填充) 4. 控件的默认背景色为黑色,可以通过setBackGround(QColor color)函数设置控件的背景颜色;