我正在使用 Dart 开发个人白板 Chrome 应用程序,有时能够快速复制和粘贴图像(例如演示文稿中的幻灯片、图表或讲义)很有用,以便我可以在图像上添加注释在上课或做演讲时。
如何将存储在剪贴板上的图像粘贴到 Dart 中的画布元素上?
实际上,这个对 JS 相同问题的回答几乎是直接适用的。Dart 翻译可能类似于:
import 'dart:html';
void main() {
var can = new CanvasElement()
..width = 600
..height = 600
;
var con = can.getContext('2d');
document.onPaste.listen((e) {
var blob = e.clipboardData.items[0].getAsFile();
var reader = new FileReader();
reader.onLoad.listen((e) {
var img = new ImageElement()
..src = (e.target as FileReader).result;
img.onLoad.listen((_) {
con.drawImage(img, 0, 0);
});
});
reader.readAsDataUrl(blob);
});
document.body.children.add(can);
}