我需要一个 DLL 或没有 exe 文件的 .NET 代码来制作渐进式无损 jpeg(.jpg,不是 JPEG 2000 或几个浏览器不支持的 JPEG-LS),因为我使用的是共享主机,我可以'不执行 .exe 文件。我正在使用freeImage应该这样做,但它不会产生无损 jpeg(我已经获得了渐进式 jpeg)。
这是我的 freeImage 代码:
image = FreeImage.Load(FREE_IMAGE_FORMAT.FIF_JPEG, inputPath, FREE_IMAGE_LOAD_FLAGS.JPEG_ACCURATE)
FreeImage.Save(FREE_IMAGE_FORMAT.FIF_JPEG, image, outputPath, FREE_IMAGE_SAVE_FLAGS.JPEG_OPTIMIZE Or FREE_IMAGE_SAVE_FLAGS.JPEG_PROGRESSIVE)
假设 FREE_IMAGE_SAVE_FLAGS.JPEG_OPTIMIZE 标志使图像无损,但它不起作用。难道我做错了什么?
使用 exe 文件,我可以使用jpegtran解决问题。要获得无损渐进式 jpeg,您只需从 .NET 应用程序或 Web 执行 shell 命令。
如果执行此命令:
jpegtran -copy none -optimize -progressive inputPath.jpg outputPath.jpg
您将获得渐进式无损 jpeg 文件
我已经使用它并且它可以工作,但是我需要在没有 exe 文件的情况下执行它。