【发布时间】:2018-01-04 16:48:11
【问题描述】:
我无法通过使用 ImageMagick 将 PDF 转换为图像来获得良好的色彩质量。
MagickReadSettings settings = new MagickReadSettings();
settings.Verbose = true;
settings.Density = new Density(600, 600);
MagickImageCollection images = new MagickImageCollection();
images.Read("C:\\" + Path.GetFileName(fileUrl));
List <string> files = new List<string>();
for (var x = 0; x < images.Count; x++)
{
images[x].Quality = 100;
images[x].BitDepth(24);
images[x].Contrast(true);
images[x].Resize(3675, 2400);
images[x].Write("C:\\websites\\FlyerEditor2\\FlyerEditor\\src\\assets\\" + Path.GetFileNameWithoutExtension(fileUrl) + "-" + (x + 1) + ".jpeg");
files.Add("assets/" + Path.GetFileNameWithoutExtension(fileUrl) + "-" + (x + 1) + ".jpeg");
}
【问题讨论】:
-
请显示输入和输出图像示例,以便我们了解您所说的颜色质量不佳是什么意思。尝试在对比和调整大小后设置质量和位深度。在一张图片上尝试您的代码。那会失败吗?试试等效的命令行代码?那会失败吗?如果是这样,则显示该命令行。
-
好吧,也许我搞砸了,我在上面提供了图片的链接
-
不知道如何自动显示图片
-
@fmw42 我想嵌入图像需要 10 个代表
-
如果您从 PDF 开始,您应该发布指向该 PDF 的链接而不是屏幕截图,以便能够使用您的原始 PDF 进行测试。 ImageMagick 也使用 Ghostscript 来处理 PDF 文件。你的 Ghostscript 是最新的吗?你的 ImageMagick 和 Ghostscript 是什么版本?
标签: pdf imagemagick imagemagick.net