我的设置如下:一个带有 Canvas 元素的 HTML 页面显示 Processing JS sketch以及允许使用 JS 函数 Processing.getInstanceById(getProcessingSketchId()).setSomeParam();
将参数传递给草图的表单,效果很好。
用户还应该能够将图像上传到服务器,然后将图像的名称/路径也交给 sketch 来执行 loadImage(String path)
。文件上传(使用来自 here 的 PHP)也工作得很好,但现在问题来了:
如何在服务器上获取上传图片的名称并将其传递给Processing sketch?
如果表单的 action 标签指向不同的 PHP 文件,带有 Canvas 草图的站点将退出(变量 $destination
不可用)或 如果表单的 action 标记指向站点本身(作为 PHP 站点,检查 if(isset($_POST['formSubmitted'])) {
),草图重新启动,丢失所有先前更改的参数。
我还设法将表单提交定位到内部 iframe 并在那里显示上传的图像,但这仍然没有解决我的问题。
非常感谢您提供任何有用的提示!
最佳答案
听起来您已经解决了数据流问题,但由于标准表单上传会导致页面刷新,所以正在苦苦挣扎。
我建议使用 AJAX 将图像发布到特定的 PHP 图像接收服务。 AJAX 上传完成后,javascript 可以调用服务器获取上传的对象并根据需要对其进行操作,而无需刷新页面。
关于javascript - 如何将上传的图片传回 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20883355/