首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ImageMagick:如何将pdf转换成jpg?我收到错误:没有此图像格式的解码委托

ImageMagick:如何将pdf转换成jpg?我收到错误:没有此图像格式的解码委托
EN

Stack Overflow用户
提问于 2021-01-27 13:59:58
回答 1查看 1.2K关注 0票数 0

问题

我需要将一个多页pdf转换成jpg文件,但是ImageMagick总是抛出难以解释的错误。

安装ImageMagick

起初,我使用apt-get安装了它,但由于我可以看到有几个人在这样做时遇到了问题,所以我最终从源代码安装了它。

我的linux发行版( Docker映像):

代码语言:javascript
复制
>lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:        10
Codename:       buster

从源安装ImageMagick:

代码语言:javascript
复制
# Installing build tools and ghostscript
apt update
apt-get install -y build-essential make ghostscript

# Downloading imagemagick
wget https://www.imagemagick.org/download/ImageMagick.tar.gz

# Installing and cleaning up
tar xvzf ImageMagick.tar.gz && cd ImageMagick-7* && ./configure && make && make install && ldconfig /usr/local/lib && cd .. && rm -r ImageMagick-7*

# Checking ImageMagick version
>magick -version
Version: ImageMagick 7.0.10-60 Q16 x86_64 2021-01-25 https://imagemagick.org
Copyright: (C) 1999-2021 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI OpenMP(4.5)
Delegates (built-in): jpeg x xml zlib

转换文件

代码语言:javascript
复制
# Image to image
>convert test.jpg test.png

# PDF to image 
>convert test.pdf test.jpg
convert: no decode delegate for this image format `' @ error/constitute.c/ReadImage/572.
convert: no images defined `test.jpg' @ error/convert.c/ConvertImageCommand/3304.

Ghostscript是问题吗?

对于许多人来说,Ghostscript安装是一个常见的问题,但是Ghostscript似乎运行良好,并产生了一个jpg文件。

代码语言:javascript
复制
# PDF to image with Ghostscript
gs -sDEVICE=pngalpha -sOutputFile=test.jpg test.pdf

我必须要安装更多的代表吗?

这个错误表明我的有限委托有些问题,所以我想先安装所有的依赖项。

代码语言:javascript
复制
# Listing dependencies
>apt update && apt build-dep imagemagick
Reading package lists... Done
E: You must put some 'source' URIs in your sources.list

这就是我被困的地方。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-27 15:37:44

解决方案

让你感到震惊的是,真正失踪的是代表们。我在文档或其他任何地方都没有很好地描述这一点。

注意:代表应该在安装ImageMagick之前安装ImageMagick

下面是我修复的方法:

代码语言:javascript
复制
# Add source URI or uncomment source URI
## Adding URI
echo "deb-src http://deb.debian.org/debian buster main" >> /etc/apt/sources.list
apt update
## Uncommenting URI
sudo sed -Ei 's/^# deb-src /deb-src /' /etc/apt/sources.list
sudo apt update

# Installing dependencies
apt-get build-dep imagemagick

现在我可以把pdf转换成jpg了!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65920674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档