以下 gm convert 命令将source.pdf 的第一页转换为 output.tif
convert source.pdf[0] output.tif
我想知道如何使用 Magick.NET 库来做到这一点?以下代码对我不起作用。
using (MagickImage image = new MagickImage("source.pdf"))
{
image.Write("output.tif");
}
以下 gm convert 命令将source.pdf 的第一页转换为 output.tif
convert source.pdf[0] output.tif
我想知道如何使用 Magick.NET 库来做到这一点?以下代码对我不起作用。
using (MagickImage image = new MagickImage("source.pdf"))
{
image.Write("output.tif");
}
ImageMagick 无法自行处理 PostScript 和 PDF 文件,为此它使用名为 Ghostscript 的第三方软件。
因此,您需要先安装最新版本的GhostScript,然后才能使用 Magick.NET 转换 pdf。
安装 GhostScript 后,使用以下代码将第一页提取到 TIF 文件。
using (MagickImageCollection image = new MagickImageCollection())
{
MagickReadSettings settings = new MagickReadSettings();
settings.Density = new Density(300, 300); // Settings the density to 300 dpi will create an image with a better quality
settings.FrameIndex = 0; // First page
settings.FrameCount = 1; // Number of pages
image.Read(@"source.pdf", settings);
image.Write(@"output.tif");
}
您可以通过更改参数来调整生成的 TIF 的质量settings.Density
(300 dpi 用于高质量胶印/数字印刷,72 dpi 仅适用于监视器屏幕)。
我不是 ImageMagick Magick.NET 专家,但您是否尝试过简单地将 [0] 添加到您的命令中
using (MagickImage image = new MagickImage("source.pdf[0]"))
{
image.Write("output.tif");
}
ImageMagick 确实需要安装 Ghostscript 才能读取 PDF 文件如前所述。