gpt4 book ai didi

image - 如何在 dart 的 canvas2d 中缓存稍后要绘制的图像?

转载 作者:行者123 更新时间:2023-12-03 23:24:23 25 4
gpt4 key购买 nike

所以,我了解了如何使用 dart 在 Canvas 中绘制图像,它是这样的:

    ///create the image element with given source
ImageElement myImage = new ImageElement(src:"myImage.png");

///load the image
myImage.onLoad.listen((event){
///when the image is loaded, draw it
myContext.drawImage(myImage, 0, 0);
});

但是,您如何在以后绘制图像?

例如,假设我有一个图像列表:

    List<ImageElement> myImageList;

然后我想在给定源的情况下一个一个地加载我所有的图像元素。完成后,只要我愿意,我就可以走了:

    myContext.drawImage(myImageList[i], x, y);

这段代码不在 onLoad.listen 方法中。

最佳答案

您可以使用 Future.wait在每张图片上等待 onLoad :

Future.wait(myImageList.map((e) => e.onLoad.single)).then((_){
myContext.drawImage(myImageList[i], x, y);
// or call function that assumes that images are loaded
});

关于image - 如何在 dart 的 canvas2d 中缓存稍后要绘制的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19089291/

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