用JavaScript创建/修改图像

时间:2020-03-05 18:58:14  来源:igfitidea点击:

是否可以在JavaScript(客户端)上按像素级别动态创建和修改图像?还是使用基于服务器的语言(例如PHP)来完成此操作?

我的用例如下:

  • 用户打开网页并加载本地存储的图像
  • 显示图像预览
  • 用户可以使用一组滑块修改图像(像素级操作)
  • 最后,他可以将映像下载到本地HDD

在网络上搜索时,我发现了有关使用IE过滤方法的帖子,但没有找到有关JavaScript中图像编辑功能的任何信息。

解决方案

回答

这必须在服务器端完成。我们可能要看的一件事是允许所有编辑都在客户端进行,然后最后将最终图像(通过AJAX)发布到服务器,以使其以正确的MIME类型返回给我们,并且正确打包。

回答

一些浏览器支持画布:
http://developer.mozilla.org/En/Drawing_Graphics_with_Canvas

回答

我们可以想象有一组JS工具,这些工具将允许用户定义他要执行的转换类型,但是转换的最后工作必须在服务器端完成。出于安全原因,客户端JS无法创建文件。

回答

尝试Allicorn的Image Retargetter,听起来这就是我们想要的。

回答

JavaScript中的本地图像操作应该可以看一下Favicon的Defender。 ;-)问题是如何将原始图像从文件系统获取到页面中(除了首先将HTTP上传到服务器外,我不知道其他任何方法)。

回答

我们可能想查看Processing.js。 jQuery成名的John Resig编写了它。它支持像素处理,不幸的是只有Firefox 3才能充分处理它。

回答

还要看一下数据URI(不幸的是,低于8的IE版本不支持它们!)