gpt4 book ai didi

c++ - 如何从 QImage (Qt 4.6) 中裁剪多边形(填充多边形图像)

转载 作者:行者123 更新时间:2023-11-28 08:24:29 28 4
gpt4 key购买 nike

操作系统::win xp sp3

Qt::4.6

我正在开发基于 Qt 框架的 PUZZLE 游戏,需要一些帮助。

在项目中包含主图片,需要将其分解为较小的部分(带有属于它们的图像的多边形)。所以我制作图像 QImage image = QImage("someImage.jpg")并希望对该对象进行裁剪图像之类的操作。

我检查了QImage , QPixmap ... 诺基亚网站上的 docu 正在寻找成员(member)功能。类似于裁剪,但发现为零。

需要引用类,我必须使用 ( #include <???> ) 来解决这个问题,然后我会重新检查在线文档。

最佳答案

假设原始图像称为 A。您有一个多边形 P。您想要创建一个较小的图像 B,它基本上是 A 被 P“裁剪”的图像。步骤如下:

  • 创建 B。要知道大小,只需在 P 上使用 QPolygonF::boundingRect。
  • 用透明色或您想要的任何背景色填充 B。
  • 创建一个适用于 B 的新 QPainter
  • 设置painter clip路径为P(多边形可转换路径),见QPainter::setClipPath
  • 用画家画了A

请注意,如果 P 的边界矩形不在原点,您可能会平移画家。

关于c++ - 如何从 QImage (Qt 4.6) 中裁剪多边形(填充多边形图像),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4518361/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com