gpt4 book ai didi

c++ - Qt Qml中的圆形图像

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:51:00 30 4
gpt4 key购买 nike

我想在 Qt Qml 中实现圆形图像。我在以下代码中使用图像元素。

Rectangle {
id: mask
anchors.centerIn: parent
width: 200
height: 200
radius: 100
clip:true
}

Image {
id: image
anchors.fill: mask
source: "test.jpg"
}

但它不起作用。如果您对此有任何想法,请帮助我。谢谢。

最佳答案

剪裁总是应用于项目的矩形边界框。因此,您不能使用带裁剪的矩形来生成圆形图像。

但是您可以使用 OpacityMask去实现你想要的。在链接的文档中可以找到一个很好的例子。

或者你可以使用这个:

import QtQuick 2.7
import QtQuick.Window 2.0
import QtGraphicalEffects 1.0

Window {
id: root
width: 1024
height: 800
visible: true

Image {
id: img
source: 'ImageSource...'
width: 500
height: 500
fillMode: Image.PreserveAspectCrop
layer.enabled: true
layer.effect: OpacityMask {
maskSource: mask
}
}

Rectangle {
id: mask
width: 500
height: 500
radius: 250
visible: false
}
}

关于c++ - Qt Qml中的圆形图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42432456/

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