使用图像处理中的 Web 导出?

Web export in Processing with images?

这可能是一个显而易见的问题,但我还没有看到它在任何地方得到解决,但我想弄清楚为什么我的 Processing 草图的网络导出没有检索保存的图像?我在想我应该将图像与其他文件打包在一起,但只是将图像放在同一文件夹中似乎不起作用。我也知道我导出它是正确的,因为当我导出没有保存图像的草图(只是在程序中创建的形状或文本)时,它工作得很好。

有没有人有这方面的经验?如果这有帮助,下面是代码(真的很简单)。谢谢!

draw.pde

void setup () {
  size(1280,800);
  background(255,255,255);
}

void draw() {
  PImage img;
  img = loadImage("drake.png");
  image(img, mouseX, mouseY);
}

Processing 的Java脚本模式使用异步 图像加载。这意味着图像是在后台加载的,并且在您尝试绘制它时尚未加载。

一个快速修复(你无论如何都应该使用,即使在 Java 模式下)是不要在 draw() 函数中加载你的图像:你将重新加载同一个文件 60 次第二!相反,在草图的开头加载一次。

此外,如果您使用的是 Processing.js,那么您需要在顶部进行预加载。

/* @pjs preload="drake.png"; */

PImage img;

void setup () {
  size(1280,800);
  img = loadImage("drake.png");
  background(255,255,255);
}

void draw() {  
  image(img, mouseX, mouseY);
}

Processing.js 参考文献 here 中的更多信息。