我正在使用 ImageMagic 库(Nuget 包 Magick.NET-Q16-AnyCPU)将 png 图像转换为 pdf
它可以转换并将pdf保存到目的地而没有任何错误。
下面是将图像转换/调整大小为 pdf 的代码,它工作正常。
public static string ConvertToPdfAndSave(byte[] fileContent)
{
var targetFile = "test.pdf";
using (MagickImage mImage = new MagickImage(fileContent))
{
mImage.Quality = 90;
mImage.Density = new Density(90);
mImage.Resize(1200, 0);
mImage.Write(targetFile);
}
return targetFile;
}
我必须用多个图像来做这件事,然后我必须使用 ImageMagick 阅读这些 pdf,将它们全部合并成一个 PDF。我已经在我的系统上安装了 GhostScript(最初我有 32 位版本,现在有 32 位和 62 位版本的 dll)。
当我尝试使用 ImageMagick 读取任何转换后的 pdf 时,它会抛出以下异常:
尝试读取或写入受保护的内存。这通常表明其他内存已损坏
读取文件的代码:
using (MagickImage mImage = new MagickImage(targetFile))
{
}
奇怪的是,如果我从系统读取任何其他原始文件,这段代码运行良好。它只是不读取转换后的文件。它在构造函数中抛出异常。
我在 64 位 Windows 10 机器上。
任何帮助,将不胜感激。