gpt4 book ai didi

image-processing - 如何让 ColdFusion 缩放任何类型的图像?

转载 作者:行者123 更新时间:2023-12-04 05:58:38 24 4
gpt4 key购买 nike

服务器配置:

  • Windows Server 2003
  • IIS 6
  • ColdFusion 8 标准版
  • Java 版本 6 更新 18

  • 我有一个 ColdFusion 应用程序,它允许用户上传将添加到现有 PDF 的图像。当图像添加到 PDF 时,它们必须适合最小/最大高度和宽度,因此需要缩放上传的图像以适合。

    例如,假设给定图像的最小高度和宽度为 100x100,最大高度和宽度为 200x200,并且用户上传了 500x1000 的图像。我使用下面的逻辑将图像缩小而不将图像(它保持其原始形状)倾斜到 100x200。对于小于最小值的图像,它会被放大(在上面的示例中,50x50 的图像将被放大到 100x100)。

    不幸的是,我在用户上传“无效图像”时遇到了很多问题。我知道 ColdFusion 在处理渐进式 JPEG 和 CMYK JPEG 时遇到问题,但即使是某些 TIFF 也会引发错误。此外,一个 3MB 的 TIFF 图像需要超过一分钟的时间来缩放(更不用说发生的分辨率损失,我已将其作为单独的问题提交 here 。)

    我添加了逻辑以防止 ColdFusion 尝试使用 IsImageFile() 处理“无效图像”。功能,但是当用户拥有可以在 PC 上打开和查看的图像时,他们会非常沮丧,但我们无法接受。在线打印公司(即 Shutterfly、Kodak 等)是否存在这些问题?我不记得在这些网站上有过问题(尽管我知道他们可能不一定使用 ColdFusion)。

    关于我可以做些什么来允许使用更多类型的图像(渐进式、CMYK 等)并提高性能的任何想法?

    最佳答案

    您可能不得不使用非 CF 解决方案,就像我们在 CF8 之前所做的那样。这里提到的一些库:https://stackoverflow.com/questions/158756/what-is-the-best-image-manipulation-library

    缩放时间在很大程度上取决于您选择使用的算法。在 ColdFusion 中向 PDF 添加图像充其量是不可预测的。我发现它们经常被夸大,大大增加了 PDF 文件的大小。

    以下是文档中的一些信息:
    http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=functions_in-k_16.html

    支持的图像文件格式

    cfimage 标签对多种不同的文件格式进行操作。要列出部署 ColdFusion 应用程序的服务器上支持的格式,请使用 GetReadableImageFormats 函数和 GetWriteableImageFormats 函数。

    ColdFusion 在 Macintosh、Windows 和 Unix 操作系统上支持以下默认图像格式:

    JPEG

    GIF

    TIFF

    PNG

    BMP

    ColdFusion 不支持以下图像格式:

    动画 GIF

    多页 TIFF

    PSD

    人工智能

    CMYK 支持

    cfimage 标签支持读取和写入 CMYK 图像,但不支持需要转换图像的操作。例如,您可以将 CMYK 图像与读取、写入、writeToBrowser、调整大小、旋转和信息操作一起使用。您不能将 CMYK 图像与转换、验证码和边框操作一起使用。同样的规则适用于图像函数。例如,ImageNew、ImageRead 和 ImageWrite 函数支持 CMYK 图像,但 ImageAddBorder 函数不支持。

    关于image-processing - 如何让 ColdFusion 缩放任何类型的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9198686/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com