'कोई छवि परिभाषित नहीं' त्रुटि के कारण पीडीएफ को छवि में परिवर्तित नहीं किया जा सकता है


83

मेरे पास निम्न पीडीएफ फाइल है: http://www.fmwcongets.com/misc_tests/pdf_tests/test.pdf

लेकिन जब मैं इसे बदलने की कोशिश कर रहा हूं:

$ convert test.pdf test.png

मैंने निम्नलिखित त्रुटि की है:

convert: no images defined `test.png' @ error/convert.c/ConvertImageCommand/3187.

मेरे पास निम्नलिखित संस्करण हैं:

$ brew info libpng
libpng: stable 1.6.13 (bottled)

$ brew info libjpeg
jpeg: stable 8d (bottled)

$ brew info imagemagick
imagemagick: stable 6.8.9-7 (bottled), HEAD
http://www.imagemagick.org
/usr/local/Cellar/imagemagick/6.8.9-1 (1432 files, 22M) *
  Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/imagemagick.rb
==> Dependencies
Build: xz ✔, pkg-config ✔
Required: libtool ✔
Recommended: jpeg ✔, libpng ✔, freetype ✔
Optional: fontconfig ✔, libtiff ✔, little-cms ✔, little-cms2 ✔, libwmf ✘, librsvg ✘, liblqr ✘, openexr ✘, ghostscript ✘, webp ✘

मैं निम्नलिखित डीबग लॉग है:

$ convert test.pdf test.png -debug all
2014-10-01T15:29:39+01:00 0:00.000 0.000u 6.8.9 Configure convert[58320]: utility.c/ExpandFilenames/944/Configure
  Command line: convert {test.pdf} {test.png} {-debug} {all}
2014-10-01T15:29:39+01:00 0:00.000 0.000u 6.8.9 Configure convert[58320]: configure.c/GetConfigureOptions/679/Configure
  Searching for configure file: "/usr/local/Cellar/imagemagick/6.8.9-1/share/ImageMagick-6/coder.xml"
...
2014-10-01T15:29:39+01:00 0:00.020 0.010u 6.8.9 Module convert[58320]: module.c/OpenModule/1268/Module
  Searching for module "PNG" using filename "png.la"
2014-10-01T15:29:39+01:00 0:00.020 0.010u 6.8.9 Module convert[58320]: module.c/GetMagickModulePath/554/Module
  Searching for coder module file "png.la" ...
2014-10-01T15:29:39+01:00 0:00.020 0.010u 6.8.9 Module convert[58320]: module.c/OpenModule/1277/Module
  Opening module at path "/usr/local/Cellar/imagemagick/6.8.9-1/lib/ImageMagick//modules-Q16/coders/png.la"
2014-10-01T15:29:39+01:00 0:00.020 0.010u 6.8.9 Module convert[58320]: module.c/OpenModule/1304/Module
  Method "RegisterPNGImage" in module "PNG" at address 0x10a9fdb60
2014-10-01T15:29:39+01:00 0:00.020 0.010u 6.8.9 Module convert[58320]: module.c/OpenModule/1318/Module
  Method "UnregisterPNGImage" in module "PNG" at address 0x10aa0785d
2014-10-01T15:29:39+01:00 0:00.020 0.010u 6.8.9 Policy convert[58320]: policy.c/IsRightsAuthorized/574/Policy
  Domain: Path; rights=Read; pattern="test.png" ...
...
2014-10-01T15:29:39+01:00 0:00.020 0.010u 6.8.9 Configure convert[58320]: locale.c/LoadLocaleCache/1186/Configure
  Loading locale configure file "/usr/local/Cellar/imagemagick/6.8.9-1/share/ImageMagick-6/english.xml" ...
2014-10-01T15:29:39+01:00 0:00.020 0.020u 6.8.9 Exception convert[58320]: blob.c/OpenBlob/2657/Exception
  unable to open image `test.png': No such file or directory
2014-10-01T15:29:39+01:00 0:00.020 0.020u 6.8.9 Cache convert[58320]: cache.c/DestroyPixelCache/962/Cache
  destroy 
2014-10-01T15:29:39+01:00 0:00.020 0.020u 6.8.9 Policy convert[58320]: policy.c/IsRightsAuthorized/574/Policy
  Domain: Coder; rights=Read; pattern="PNG" ...
2014-10-01T15:29:39+01:00 0:00.030 0.020u 6.8.9 Coder convert[58320]: png.c/ReadPNGImage/4015/Coder
  Enter ReadPNGImage()
2014-10-01T15:29:39+01:00 0:00.030 0.020u 6.8.9 Policy convert[58320]: policy.c/IsRightsAuthorized/574/Policy
  Domain: Path; rights=Read; pattern="test.png" ...
2014-10-01T15:29:39+01:00 0:00.030 0.020u 6.8.9 Exception convert[58320]: blob.c/OpenBlob/2657/Exception
  unable to open image `test.png': No such file or directory
2014-10-01T15:29:39+01:00 0:00.030 0.020u 6.8.9 Exception convert[58320]: png.c/ReadPNGImage/4021/Exception
  unable to open file `test.png'

लेकिन कुछ भी स्पष्ट नहीं दिखा रहा है। और ऐसा लगता है कि यह डिबग लॉग बिना की तुलना में पूरी तरह से अलग व्यवहार करता है -debug, क्योंकि मूल त्रुटि नहीं है। पूरा लॉग देखें ।

Http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=22466 पर इसी तरह का एक मुद्दा है , लेकिन मुझे इसका समाधान नहीं मिला।

जवाबों:


91

आप वैकल्पिक घोस्टस्क्रिप्ट निर्भरता को याद कर रहे हैं gs- यदि आप पीडीएफ फाइल को बदलना चाहते हैं तो यह वैकल्पिक नहीं है।

यदि which gsआप घोस्टस्क्रिप्ट बाइनरी का समाधान नहीं करते हैं (जैसे आपके पास एक ही नाम के साथ एक उपनाम है), तो घोस्टस्क्रिप्ट को पथ संपादित करें delegates.xml


1
मेरे मामले में मैंने घोस्टस्क्रिप्ट को स्थापित किया था लेकिन gsकमांड को एक स्क्रिप्ट द्वारा छिपाया गया था जिसे मैंने लिखा था git status। क्या ImageMagick को gsबाइनरी के पूर्ण पथ को खिलाने का एक तरीका है ताकि मुझे अपनी स्क्रिप्ट (या उपनाम) को निकालना न पड़े?
श्रीधर सरनोबत

2
आपको फ़ाइल प्रतिनिधियों को संपादित करना होगा। xml और वैकल्पिक स्थान निर्दिष्ट करना होगा।
dlemstra

डेबियन / ubuntu: apt-get install ghostscript
नादिर

69

आप भी करने की कोशिश कर सकते हैं:

  1. brew uninstall ghostscript
  2. brew install ghostscript

उसने मेरे लिए इसे हल कर दिया।


यही किया चाल!
O

-1

मुझे भी ऐसी ही समस्या का समाधान करना पड़ा था। उपरोक्त सुधारों ने मेरे लिए कुछ नहीं किया, लेकिन ऐसा लगता है कि ImageMagick html2psआंतरिक रूप से उपयोग कर रहा था ।

इसलिए, समाधान यह स्थापित करना था। मैं ओएस एक्स पर नहीं हूं, इसलिए मेरे लिए समाधान था:

apt install html2ps

उम्मीद है कि इससे किसी को मदद मिलेगी।


aptया apt-get?
kenorb

1
उपयुक्त यदि आपके पास है। यह उपयुक्त पाने के लिए प्रतिस्थापन है।
mlissner

ImageMagick यहाँ पीडीएफ से png में बदलने के लिए आंतरिक रूप से html2ps का उपयोग कर रहा था?
रॉगरडपैक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.