2017-03-07 86 views
0

我很难过。如何读取灰度8bit原始图像并转换为无损JPEG?这个代码我要读的原始图像,但它与的ImageMagick.MagickMissingDelegateErrorExceptionMagick.NET读取原始和写入无损JPEG

MagickReadSettings settings = new MagickReadSettings(); 
settings.Width = 1000; 
settings.Height = 800; 
MagickImage image = new MagickImage("c:/users/rfonseka/desktop/image.raw", settings); 

运行时异常失败,我不知道如何将其转换为JPEG2000无损格式。我想在内存中转换它,所以我可以输出字节到HTTP。

+0

只是一个猜测;设置有一个代表你应该设置?或者这种方法没有完全实施? – BradleyDotNET

+0

如果你想要无损,为什么不使用'PNG'? –

回答

1

当需要读取原始文件时,您需要将可执行文件dcraw.exe放入包含Magick.NET dll的目录中。您可以从http://www.imagemagick.org/script/binary-releases.php#windows下载的zip文件ImageMagick-7.X.X-X-Q16-x86-windows.zip包含此文件。

如果您使用的是AnyCPU版本的Magick.NET,您将需要配置缓存目录并将dcraw.exe文件放在该目录中。

MagickAnyCPU.CacheDirectory = @"C:\MyProgram\MyTempDir"; 

如果你不想这样做,你将需要添加包含可执行您%PATH%的文件夹。