C# 将ImageMagick和GhostScript与nuget一起使用
我发现大多数关于将ImageMagick与ghostscript结合使用的文档都说只需声明ghostscript dll的路径,就像C# 将ImageMagick和GhostScript与nuget一起使用,c#,.net,azure,imagemagick,ghostscript,C#,.net,Azure,Imagemagick,Ghostscript,我发现大多数关于将ImageMagick与ghostscript结合使用的文档都说只需声明ghostscript dll的路径,就像 MagickNET.SetGhostscriptDirectory(AppDomain.CurrentDomain.BaseDirectory); 然后使用MagickImage,如: using (var image = new MagickImage(streamToConvert)) { image.Write(outputStream); }
MagickNET.SetGhostscriptDirectory(AppDomain.CurrentDomain.BaseDirectory);
然后使用MagickImage,如:
using (var image = new MagickImage(streamToConvert))
{
image.Write(outputStream);
}
现在我有一个azure站点,无法创建这样的路径
我想进口
Visual Studio中的Ghostscript.NET nuget包,但我不知道如何继续,那就是向MagickImage声明在哪里可以找到Ghostscript。如何执行此操作?只需将Ghostscript DLL复制到项目中,并使用“始终复制”设置。然后,在发布时,您的重影脚本文件将位于正确的文件夹中
现在,在Azure中,当在桌面上开发时,事情并不像您所期望的那样,所以在继续之前,请先看看这一点 最后导入了nuget包Ghostscript.NET,并使用Ghostscript方法创建了图像的“屏幕截图”,然后将其放入MagickImage
_lastInstalledVersion =
GhostscriptVersionInfo.GetLastInstalledVersion(
GhostscriptLicense.GPL | GhostscriptLicense.AFPL,
GhostscriptLicense.GPL);
_rasterizer = new GhostscriptRasterizer();
_rasterizer.Open(streamToConvert, _lastInstalledVersion, true);
ConvertWithGhostscript(streamToConvert, ghostStream);
ConvertWithImageMagick(ghostStream, outputStream, image.Extension);
image.Write(outputStream);
您还需要对照AGPL v3检查您的使用情况,以确保您的使用与该许可证兼容。