问题标签 [qpixmap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 减小 QPixmap 的文件大小
当我使用 scaledToHeight 调整 QPixmap 的大小然后将其转换为 QByteArray 时,此 ByteArray 的大小正是未缩放 QPixmap 的 ByteArray 的大小。是否有可能缩小像素大小和文件大小的 QPixmap?
最好的祝福
c++ - Qt 屏幕分辨率闪屏
我有一个使用 splash.showFullScreen() 显示的初始屏幕图像,但它不会将其大小调整为屏幕分辨率,因此根据显示器的不同,它要么是平铺的,要么是大的。我已经尝试了我能想到的一切,但没有任何效果。这听起来可能是一个愚蠢的问题,但我找不到答案,所以如果有的话可以帮助我解决这个问题?如果它有所作为,我使用名为 pixmap 的 QPixmap 作为初始图像。顺便说一句,我希望将图像拉伸到屏幕分辨率。
qt - Qt:使用二维数组值更新像素图网格布局
我正在使用 Visual Studio 2010 和 Qt 4.7(两个窗口)中的 c++ 组合进行游戏。该游戏是战舰的克隆,基于控制台输入。我已经创建了我想要的 gui,在 Qt 设计器的 Qt 端,我的 gui 包含一个 10x10 的网格布局,使用标签来保存游戏单元的像素图:
我煞费苦心地命名每个标签来表示它在二维数组中的位置(即车队地图 => F_00
=> F[0,0]
=> F[i],[j]
)。我可以使用属性编辑器手动选择我想显示的像素图,但我想要一些动态的。
我使用更新地图板类在玩家开火后重新绘制游戏板,它继续存储在一个 char 数组上。我想使用通用的 getupdatearray 类型函数为每个更新我的像素图。当我们遍历数组时,它将更新当前与各个标签关联的像素图,以匹配数组中的表兄弟。(比如说F[5][6] = 'X'
命中,然后当循环到达数组中的那个位置时,它会将 F_56 处的像素图网格更新为等于hit.png,替换empty.png。
我有一个想法如何制作可以完成此任务的循环,但不确定如何让每个标签的像素图更符合运行时功能而不是现在的编译时(静态)功能。我读过关于 QPainter 和另一个处理图像的 Qt 类,但仍然很难做到。
对你们任何人的问题,我如何根据二维数组更新这些像素图?
- 循环结构-我可以弄清楚
- 条件语句 - 我可以弄清楚
- qt 处理标签的特定语法 - 新手所以不知道 atm。
这是我试图用 map.h 做的那种事情的一些伪代码:
然后在我的 mainwindow.cpp 中,我包含 map.h 并说:
提前致谢
更新:
我已经到了可以用按钮交换像素图的地步,但我想创造一些更动态的东西。我想使用一个Qstring,通过使用以下方法附加xy值来放置我想要更改的标签的名称:
当我尝试使用以下方法调用它时:
……这显然行不通。有没有办法输入大小写,或者使用字符串的内容作为 Qlabel 名称?
pyqt4 - 如何使用 QPixmap 捕获 Maya 3d 视图?
我为玛雅制作了一个屏幕截图脚本。所以,我处理 QPixmap 类的工作。
我就是这样写剧本的。
但是,它不能抓取 3Dview,所以它不能工作。
qt - 继承 QMovie 和 QPixmap 函数的类
是否有任何 Qt 类继承了 QMovie 和 QPixmap 的所有内容?
python - 线程:在 GUI 线程之外使用像素图是不安全的
我正在构建一个音乐播放器,它使用 SqueezePlay 来检查状态,这是一个 SqueezeBox 控制器应用程序。长话短说,我使用线程每 5 秒检查一次 Squeezeplay 的状态。如果歌曲标题发生变化,我让它更新标签(Qlabel,专辑插图(QPixmap)等。但是,当我要求它通过线程更新它时,我得到在GUI线程之外使用像素图是不安全的.
如何进行线程处理但仍设置 QPixmap?
示例代码:
非常感谢!
更新: 我用 Emit 尝试了以下操作,但它不起作用,有人可以看看我做错了什么吗?
c++ - 将 Leptonica Pix 对象转换为 QPixmap(或其他图像对象)
我正在使用 Leptonica 库来处理一些图片。之后我想在我的 QT GUI 中显示它们。Leptonica 使用他们自己的图像格式 Pix,而 QT 使用他们自己的格式 QPixmap。目前对我来说唯一的方法是将处理后的图片保存为文件(如 bmp ),然后使用 QT 函数调用再次加载它们。现在我想在我的代码中转换它们,所以我不需要绕道将它们保存在文件系统上。任何想法如何做到这一点?
最好的祝福
// 编辑:
好的,正如已经建议的那样,我尝试将 PIX* 转换为 QImage。PIX* 的定义如下:
http://tpgit.github.com/Leptonica/pix_8h_source.html
而 QImage 为我提供了这样的方法:
http://developer.qt.nokia.com/doc/qt-4.8/qimage.html#QImage-7
我假设在调用构造函数时我不能只将数据从 PIX 复制到 QImage。我想我需要逐个像素地填充 QImage 像素,但实际上我不知道怎么做?我需要遍历所有坐标吗?我如何看待位深?这里有什么想法吗?
c++ - Qt Phonon & QPixmap::GrabWidget
我已经工作了几天从声子媒体对象中抓取帧。我的目标是以用户指定的某个间隔捕获帧。我首先尝试为与 Phonon::MediaObject 关联的滴答信号实现一个插槽。然而,由于第一次发出滴答信号,有时时差可能会有所不同......并不是说它不是一个可行的解决方案,但我仍然进一步调查并尝试了 seek 和 grabWidget 的组合,但它出现了该搜索需要一些时间才能完成,并且在视频再次正常运行时无法通知应用程序,这会导致类似的代码
90% 的时间保存黑色图像,但在剩余时间正确抓取帧。
我的问题是我能对这两个想法中的任何一个做些什么来让它们对我更好地工作,还是我在错误的树上大声吠叫而我完全错过了一个更明显的东西?
提前致谢!
qt - 如何从 QGraphicsPixmapItem 显示像素位置和颜色
我正在使用 QGraphicsScene/View 开发一个自定义小部件,但我之前没有这方面的经验。
自定义小部件是一个图像查看器,需要跟踪鼠标移动并向其父对话框/窗口发送信号。信号将是鼠标光标下像素的位置及其颜色(RGB)。状态栏将使用该信息。
我使用 QGraphicsPixmapItem 来显示我从场景中的文件加载的图像。
谢谢。
qt - 在 QLabel 上显示 char* 位图的最快方法
我正在开发一个图像处理应用程序,它从 IDS uEye 驱动程序获取图像数据作为原始char*
缓冲区。我需要向用户展示这张图片。(据我了解Qt,QLabel
该类应该用于此目的)。我还应该说明图像处理算法,我认为直接修改char*
缓冲区最快。
我已经看到了很多使用这种方法的代码示例:
其中image
是QImage
从char*
缓冲区构造的。
但是,我在 uEye 演示应用程序源中找到了这段代码:
wherePaintLabel
是 的子类,QLabel
并且显示应该在哪里绘制。rectangle
QRectF
image
我做了一些时间测量,结果发现第二种方法快了大约 1.8 倍(大约 9 毫秒对 16 毫秒)。
所以,我的问题是:有没有其他方法可以char*
更快地显示位图 - 尽可能快?请注意,这只是一个相同的缓冲区,只是它的内容在变化;因此无需为每一帧从头开始重建所有内容 - 只需刷新即可。