首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用CF8 cfimage标签生成缩略图-图像元数据导致的大文件大小

使用CF8 cfimage标签生成缩略图-图像元数据导致的大文件大小
EN

Stack Overflow用户
提问于 2011-04-02 09:15:01
回答 4查看 1.2K关注 0票数 3

我正在构建一个小的web应用程序,将调整图像大小,以不同的像素尺寸后,他们已经上传。

我试图从一个3mb的jpg图像创建150px X 100px缩略图,但无法获得小于68kb的文件大小(我希望生成一个介于4kb和15kb之间的文件,具体取决于压缩类型等)。

我使用了标记的action=“调整大小”方法&也使用了ImageResize()和imageScaleToFit()函数,但所有这些方法都保持了exif和IPTC元数据的完整性(我假设这就是保持缩略图文件大小的原因)。

如果我使用没有任何元数据的图像,它会按照预期将缩略图调整为较小的文件大小。

有没有什么办法,我可以剥离exif和IPTC元数据的形象,以减少缩略图大小使用CF8的任何内置的形象函数?

EN

回答 4

Stack Overflow用户

发布于 2011-04-05 20:00:08

可以使用Sanselan Java库删除EXIF元数据和IPTC元数据。以下是使用该库中的removeExifMetadata的代码示例:

代码语言:javascript
复制
<cfscript>
// setup and init the Sanselan library
SanselanPath = arrayNew(1);
arrayAppend(SanselanPath, expandPath("sanselan\sanselan-0.97-incubator.jar"));
javaloader = createObject("component", "javaloader.JavaLoader").init(SanselanPath);

// setup your source and destination image
pathToInFile = ExpandPath("myImage.jpg");
pathToOutFile = ExpandPath("MyImagewoEXIF.jpg");
inFile = javaloader.create("java.io.FileInputStream").init(pathToInFile);
outFile = javaloader.create("java.io.FileOutputStream").init(pathToOutFile);

// create the exifRewriter 
exifRewriter = javaloader.create("org.apache.sanselan.formats.jpeg.exifRewrite.ExifRewriter").init();

// call the method removeExifMetadata
exifRewriter.removeExifMetadata(inFile,outFile);
outFile.close();
</cfscript>

您也可以使用iptc.JpegIptcRewriter和removeIPTC方法删除IPTC元数据。您可以使用CF函数ImageGetEXIFMetaData和ImageGetIPTCMetadata验证是否已删除所有内容。

现在我不确定它是否真的会减少文件大小,请让我知道:-)

票数 3
EN

Stack Overflow用户

发布于 2011-04-03 10:13:55

可以创建与缩略图尺寸相同的新图像,然后使用ImagePaste将其粘贴到缩略图中。ColdFusion不会使用粘贴操作保留EXIF数据。

票数 1
EN

Stack Overflow用户

发布于 2011-04-03 01:04:51

如果您愿意,您可以使用@Ciaran Archer在上面链接的帖子中链接的命令行工具,然后编写一个运行该命令的bash命令(*nix/Mac)或bat命令(Windows),然后使用CFExecute运行该命令。我以前从来没有真正使用过CFImage或图像元数据,所以我不能给你正确的代码,但我所说的可能会有最好的性能,因为你将命令导出到文件系统是要做的(处理文件)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5520444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档