20

有没有人知道如何使用 Flash 调整客户端图像大小。

示例:客户选择一张 1200x800 的图像,在上传之前,flash 会将其变成一半或其他东西。

有什么想法吗?

4

7 回答 7

15

Plupload 是开源的,具有良好的文档并支持多种平台,包括 Gears 和 HTML5!

http://www.plupload.com/index.php
http://www.plupload.com/example_all_runtimes.php

啊,是的,它支持在上传之前调整图像大小。最接近 aurigma 的选项,但免费 :)

于 2011-01-05T22:39:17.660 回答
10

看看我写的脚本: 在客户端调整图像大小

于 2009-08-05T05:32:25.643 回答
4

http://www.shift8creative.com/projects/agile-uploader/index.html

我刚刚完成了这个小项目 - 免费使用。它不会真正允许最终用户选择尺寸,但您可以传递最大宽度和最大高度约束。也许您可以使用不同的选项制作多个页面/嵌入。

于 2010-02-15T21:46:51.037 回答
1

Silverlight、ActiveX 和 Java 可以完全在客户端执行此操作。如果您必须使用 Flash,您将需要使用尚未流行的 Flash 10。这是一个将图像上传到 Flash 然后从 Flash Cafe 在客户端上调整其大小的示例。

Flash 8 或 9 中的其他选项将涉及服务器端大小调整脚本,在大多数情况下都无法达到目的。

于 2009-01-10T16:17:39.567 回答
1

您需要创建一个转换矩阵,然后使用它将原始位图绘制成新的位图。这是我刚刚输入但尚未测试的内容中的想法:

function resize(obm:BitmapData, scale:Number): BitmapData {
   var resizeMatrix:Matrix = new Matrix();
   resizeMatrix.scale(scale, scale);

   var rbm:BitmapData = new BitmapData(obm.width * scale, obm.height * scale);
   rbm.draw(obm, resizeMatrix);

   return rbm;
}

然而,我没有对结果的质量提出任何要求。我想我记得过去尝试过这个,不喜欢结果,然后下注......

于 2009-01-16T07:22:33.950 回答
1

我正在使用来自http://www.resize-before-upload.com的 Flash 上传器,效果很好:)

于 2010-05-04T08:41:58.883 回答
0

最新版本的SwfUpload 进行客户端图像大小调整(使用 Flash)。一个非常有用的工具,尽管显示上传进度之类的附加功能可能会有些繁琐。

http://code.google.com/p/swfupload/

于 2011-09-19T04:28:16.420 回答