java - 上传图片缩略图到服务器,无需上传整张图片

标签 java javascript flash actionscript canvas

据我所知,我在这里问的是不可能的,但我想无论如何我都会问,以防我遗漏了什么。

假设您想让用户上传 JPG 图片,这些图片被缩放成更小的图标,并且原始图片总是被丢弃,再也不需要了。有没有什么方法可以在大多数现代浏览器中普遍使用,让用户在他们的硬盘上选择一个图像,在本地将其转换为缩略图并将创建的缩略图上传到服务器?

在服务器只需要一张小图片的情况下,继续上传整张图片并立即丢弃它会浪费用户时间和服务器资源。最好只在客户端上扩展它。

我可以想象三种选择。只是简单的 HTML/Javascript,使用 Flash 或使用 Java。如果 Flash 可以做到这一点,那似乎是最好的选择。但是阅读 flash.net.FileReference 文档,似乎您可以从 HD 上传文件,是的,但您无法查看正在上传的文件内部。另一方面,如果在 Flash 发布选项中启用“可以访问本地文件”,则似乎您无法再访问网络,因此不起作用。

使用 HTML/Javascript,可以加载图像并在 <canvas> 上显示它们,但如果您尝试访问这些图像的像素,就会违反安全规定,因此这似乎行不通。

我对使用 Java 犹豫不决,因为只有 96.52% 的用户安装了它,而且我看到用 Java 实现的文件上传对话框(例如在 Facebook)效果不佳(界面无响应)。我想知道是否只有 Java 允许调整本地高清图像的大小?

最佳答案

"If this were possible with Flash, that would seem like the best option."

据我了解,使用 Flash Player 10 是可能的。

这是一个例子:

http://blog.kukiel.net/2009/02/file-manipulation-client-side-with.html

Flash Player 10 目前的总体市场渗透率约为 85-90%,因此,如果您因为只有 96.52% 的用户安装了 Java 而对使用 Java 犹豫不决,我猜您也不会想要安装 Flash Player 10 .

关于java - 上传图片缩略图到服务器,无需上传整张图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1344131/

相关文章:

java - 如何读取 Hibernate 映射

java - 正则表达式在被 [] 包围时拆分/除外

java - jvm 的默认垃圾收集器

javascript - 我可以使用 jQuery 的 deferred.pipe 方法修改提供给已解决/失败回调的参数吗?

flash - 如何在 Chrome 中安装 Flash 调试播放器?

asp.net-mvc - ASP.NET MVC - SWF 文件未加载

java - Android 中 Mimetype 的单元测试用例

javascript - 输入值更改时更新 UI

javascript - 如何更改 Firefox 25 的网络信息弹出窗口?

flash - 如何在 ActionScript 中的大写字母前添加空格?