我正在嘗試Dart Language和HTML5 Canvas元素,但我遇到了一個問題。我不知道如何在Dart中加載圖片。我可以得到CanvasRenderingContext2D,並且可以調用fillText()和fillRect()以及一切正常,但我試圖弄清楚如何加載圖像並使用drawImage進行繪製。如何在飛鏢中加載圖像
7
A
回答
10
創建並加載圖像
ImageElement image = new ImageElement(src: "my_image.png");
image.onLoad.listen((e) {
// Draw once the image is loaded
});
畫在畫布上的上述圖像加載它
context.drawImage(image, destX, destY);
9
較新的圖像的onload語法後:
readFile() {
ImageElement image = new ImageElement(src: "plant.png");
document.body.nodes.add(image);
image.onLoad.listen(onData, onError: onError, onDone: onDone, cancelOnError: true);
}
onData(Event e) {
print("success: ");
}
onError(Event e) {
print("error: $e");
}
onDone() {
print("done");
}
1
我知道這個問題是舊的,但也許這可以幫助別人。還有另一種方式來做到這一點:
void main() {
ImageElement image = new ImageElement(src: "pic.png");
img.onLoad.listen(onData);
img.onError.listen(onError);
}
void onData(Event e) {
print("Load success");
}
void onError(Event e) {
print("Error: $e");
}
相關問題
- 1. 如何旋轉飛鏢中的圖像?
- 2. 飛鏢如何上傳圖像
- 3. 如何使用飛鏢生成圖像
- 4. 如何開始飛鏢圖像處理?
- 5. 在飛鏢中動態加載課程
- 6. 在飛鏢中處理圖像
- 7. 使用飛鏢動態加載飛鏢腳本
- 8. 飛鏢中未定義的新圖像()
- 9. 如何在飛鏢中同步加載着色器文件
- 10. 如何在飛鏢中使用Lasily/Dynamicaly加載類?
- 11. 飛鏢Web_Audio飛鏢1.6
- 12. 飛鏢中的飛鏢websocket:io and dart:html
- 13. 如何獲得飛鏢中所有加載庫的列表?
- 14. 如何爲飛鏢中的網頁製作預加載器
- 15. 將圖像添加到飛鏢中的SVG元素
- 16. 如何使用angular2_material飛鏢
- 17. 在飛鏢編輯器中自動生成飛鏢
- 18. 飛鏢中的urlencoding
- 19. net :: ERR_UNSAFE_PORT在飛鏢
- 20. 如何引用飛鏢聚合物組件的圖像
- 21. 在飛鏢中解析plist
- 22. 飛鏢,反射和源圖?
- 23. @飛鏢代碼
- 24. 飛鏢 - NumberFormat的
- 25. 飛鏢基準?
- 26. 與飛鏢PointerLock
- 27. 飛鏢:干將
- 28. 如何刪除飛鏢中的cookie
- 29. 如何替換飛鏢中的聽衆?
- 30. 如何在角度飛鏢視圖中選擇聚合物飛鏢自定義元素
您好,我是新來的鏢,當我嘗試了image.on.load.add功能我得到一個錯誤,指出「負荷」是不是成員活動。代碼提示對此也不是很有幫助。我使用Dart編輯器版本0.4.2_r20259和Dart SDK版本0.4.2.8_r20259。 – 2013-03-22 15:24:01
好吧,我發現原因:dartlang核心有一個更新... [Dart News&Updates](http://news.dartlang.org/2013/01/new-dom-event-streams-api.html) 。現在「image.on.load.add」應該寫爲「image.onLoad.listen」。 – 2013-03-22 19:03:38
由於Dart的M1被釋放,語法已經改變,在文件名之前添加「src:」(新的ImageElement(src:「my_image.png」);),否則這會導致運行時錯誤。 – daftspaniel 2013-05-06 18:31:19