WYSIWYG编辑器输出的自动图像缩放器?

时间:2010-04-08 20:12:45

标签: php html wysiwyg

使用WYSIWYG编辑器(如CKEditor)为最终用户构建内容管理系统时的一个常见问题是,用户可以在编辑器中上传图像,嵌入它们,然后调整它们的大小。

保存内容后,嵌入的(原始)图片网址需要由正确调整大小的对应网址替换。想象一下,用户上传的3000 x 3000照片,在WYSIWYG编辑器中手动调整为300 x 300像素 - 需要自动调整大小以防止加载巨大的源文件。

任务很简单,我已经多次实现了(虽然有正则表达式,这就是为什么我要找替换:) - 遍历DOM,搜索图像,看是否图像源文件的大小与img标记中指定的大小不同,如果是,则用自动调整大小的文件替换原始图像。

一路上有一些小怪癖(一些WYWSIYG编辑喜欢使用width="300",其他人则使用width: 300px CSS版本等等。

我的问题是,是否有一个现成的,高质量的PHP解决方案可以做到这一点,并考虑到这个怪癖?

2 个答案:

答案 0 :(得分:2)

尝试使用此图像缩放器:http://shiftingpixel.com/2008/03/03/smart-image-resizer/

我在开发过程中使用它,您可以上传图像文件并根据任何大小或裁剪部分生成缓存文件,以获得最佳性能,而无需实际更改原始图像文件。

示例:

<img src="/image.php/coffee-bean.jpg?width=200&amp;height=200&amp;image=/wp-content/uploads/2008/03/coffee-bean.jpg" alt="Coffee Bean" />

你可以在我上面提到的网站下载image.php文件并将目标图像名称作为参数传递到image.php文件中,然后它会为它生成缓存文件,请确保你的图像文件夹权限已经准备好执行和更改。

答案 1 :(得分:0)

至于我:我使用tinymce编辑器安装了插件ImageManager。所以在配置php你可以配置输出缩略图图像的大小。如果上传的图像大于该尺寸,您将看到小拇指(您可以配置调整大小的css样式,以便您可以使用一些jquery插件来显示大图像。如厚盒)