我想new Image()在我的 QML 檔案(Qt 5.11)中使用。我import ... as用來避免 QML Image 與 JS Image 名稱沖突。但是現在,以下最小示例的結果錯誤是:
ReferenceError:影像未定義
import QtQuick 2.11 as QQ
QQ.Canvas {
width: 200
height: 200
onPaint: {
// this is the javascript part.
var img = new Image();
// ...
}
}
非常感謝任何幫助來解決這個問題。我是否需要在我的作業系統(debian)上安裝任何軟體包才能使其正常作業?
uj5u.com熱心網友回復:
如果要在 a 中繪制影像,則Canvas需要使用loadImage(). 它將異步加載,并且在加載imageLoaded任何新影像時畫布將發出。
drawImage()然后,您可以使用加載的 URL進行繪制并將其傳遞給它:
Canvas {
property string imageUrl: "qrc://images/image.png"
Component.onCompleted: loadImage(imageUrl)
onImageLoaded: requestRepaint()
onPaint: {
var ctx = getContext("2d");
ctx.drawImage(imageUrl);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/462691.html
標籤:javascript 图片 qt qml
