我正在使用 ColdFusion 9.0.1 来处理我们所有的图像大小调整。除了某些 CMYK 或具有特定 ICC 配置文件的 jpeg 之外,它工作得很好。
我正在尝试一个 java 解决方案。
imgscalrPath = ExpandPath( "imgscalr-lib-4.2.jar" );
loader = New javaloader.javaLoader( [ imgscalrPath ] );
Scalr = loader.create( "org.imgscalr.Scalr" );
mode = loader.create( "org.imgscalr.Scalr$Mode" );
method = loader.create( "org.imgscalr.Scalr$Method" );
sourceImage = ImageNew( "DSC01040.jpg" );
bufferedImage = ImageGetBufferedImage( sourceImage );
smallerImage = Scalr.resize( bufferedImage,method.SPEED,mode.FIT_TO_WIDTH,250,[] );
ImageWrite( ImageNew( smallerImage ),"hello.jpg" );
问题是 ColdFusion 会抛出一个错误,该错误以 imageNew 方法开头,说明文件类型无效。那么是否有任何 Java 方法可以用于下面的两行代码?
sourceImage = ImageNew( "source.jpg" );
bufferedImage = ImageGetBufferedImage( sourceImage );
解决方案不能是 .dll 文件(安全不接受)。在 64 位机器上运行