【问题标题】:Convert first page to tif using Magick.NET使用 Magick.NET 将第一页转换为 tif
【发布时间】:2017-12-13 07:58:43
【问题描述】:
按照 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");
}
【问题讨论】:
标签:
c#
imagemagick-convert
graphicsmagick
magick.net
【解决方案1】:
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");
}
您可以通过更改 settings.Density 参数来调整生成的 TIF 的质量(300 dpi 用于高质量胶印/数字印刷,72 dpi 仅适用于监视器屏幕)。
【解决方案2】:
我不是 ImageMagick Magick.NET 专家,但您是否尝试过简单地将 [0] 添加到您的命令中
using (MagickImage image = new MagickImage("source.pdf[0]"))
{
image.Write("output.tif");
}
ImageMagick 确实需要安装 Ghostscript 才能读取 PDF 文件,如前所述。