ImageMagick: определите сбои для идентификации изображений XWD

Моя цель состоит в том, чтобы смочь сделать снимок экрана всех меню, независимо от подсказки или X-окна, захватив опускающиеся меню, включая меню звездочки в Ubuntu, например, как это, и аннотировать их в другом инструменте для рисования, таком как Затвор:

screenshot1

И способом, которым я делаю это за пределами Затвора (потому что он на самом деле не захватит то меню, даже при том, что он рекламирует это, он делает), является использование xwd для захвата целого корневого окна преобразуйте его в файл PNG, загрузите его в Затвор и затем обрежьте его вниз. Очень усилие бесполезной траты времени сделать это, но это работало до сих пор до недавнего времени.

На Ubuntu:

drunkard@norehab:~$ lsb_release -r -i
Distributor ID: Ubuntu
Release:    17.04

Я беру полное использование снимка экрана xwd:

drunkard@norehab:~$ xwd -root -out /tmp/xwd.tmp.6821
drunkard@norehab:~$ file /tmp/xwd.tmp.6821
/tmp/xwd.tmp.6821: XWD X Window Dump image data, "xwdump", 3840x1215x24

Я встретился с ошибкой во время преобразования от XWD до формата PNG:

drunkard@norehab:~$ convert /tmp/xwd.tmp.6821 /home/drunkard/screenshot.2017-10-07.08-13-55.PDT.png
convert-im6.q16: no decode delegate for this image format `6821' @ error/constitute.c/ReadImage/504.
convert-im6.q16: no images defined `/home/drunkard/screenshot.2017-10-07.08-13-55.PDT.png' @ error/convert.c/ConvertImageCommand/3258.

У меня есть эта версия, определите:

drunkard@norehab:~$ file /usr/bin/identify
/usr/bin/identify: symbolic link to /etc/alternatives/identify
drunkard@norehab:~$ readlink -f /etc/alternatives/identify
/usr/bin/identify-im6.q16
drunkard@norehab:~$ apt-file search /usr/bin/identify-im6.q16
imagemagick-6.q16: /usr/bin/identify-im6.q16
imagemagick-6.q16hdri: /usr/bin/identify-im6.q16hdri
drunkard@norehab:~$ dpkg --listfiles imagemagick-6.q16 | grep identify
/usr/bin/identify-im6.q16
/usr/share/man/man1/identify-im6.q16.1.gz
drunkard@norehab:~$ apt-cache --no-all-versions show imagemagick-6.q16 
Package: imagemagick-6.q16
Architecture: amd64
Version: 8:6.9.7.4+dfsg-3ubuntu1.2
Multi-Arch: foreign
Priority: optional
Section: graphics
Source: imagemagick
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: ImageMagick Packaging Team <pkg-gmagick-im-team@lists.alioth.debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 644
Provides: imagemagick, imagemagick-6.defaultquantum
Depends: libc6 (>= 2.4), libmagickcore-6.q16-3 (>= 8:6.9.6.8), libmagickwand-6.q16-3 (>= 8:6.9.6.8), hicolor-icon-theme
Recommends: libmagickcore-6.q16-3-extra, ghostscript, netpbm
Suggests: imagemagick-doc, autotrace, cups-bsd | lpr | lprng, curl, enscript, ffmpeg, gimp, gnuplot, grads, graphviz, groff-base, hp2xx, html2ps, libwmf-bin, mplayer, povray, radiance, sane-utils, texlive-base-bin, transfig, ufraw-batch, xdg-utils
Breaks: libmagickcore-dev (<< 8:6.9.2.10+dfsg-2~)
Replaces: imagemagick (<< 8:6.9.2.10+dfsg-2~)
Filename: pool/main/i/imagemagick/imagemagick-6.q16_6.9.7.4+dfsg-3ubuntu1.2_amd64.deb
Size: 423848
MD5sum: 6f06b63767fb5e32d967e4395d4e4f98
SHA1: ba0b8af93fed0e9d1efabe56e79387f1bc4944e5
SHA256: 84ffd5f3eb1c8bdc11955c581fc98f1c1bb37eb40609ef6997c8675f1dfd29d0
Homepage: http://www.imagemagick.org/
Description-en: image manipulation programs -- quantum depth Q16
 ImageMagick is a software suite to create, edit, and compose bitmap images.
 It can read, convert and write images in a variety of formats (over 100)
 including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript,
 SVG, and TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale,
 shear and transform images, adjust image colors, apply various special
 effects, or draw text, lines, polygons, ellipses and Bézier curves.
 All manipulations can be achieved through shell commands as well as through
 an X11 graphical interface (display).
 .
 For working with the SVG, WMF, OpenEXR, DjVu and Graphviz formats,
 you need to install the libmagickcore-6.q16-3-extra package.
 .
 This version of imagemagick is compiled for a channel
 depth of 16 bits (Q16).
Description-md5: e40daf0bbbffd2b9ac49e04c8c3480fe
Task: ubuntu-desktop, ubuntu-usb, print-server, kubuntu-desktop, edubuntu-desktop, edubuntu-usb, xubuntu-core, xubuntu-desktop, mythbuntu-desktop, lubuntu-desktop-share, lubuntu-gtk-desktop, lubuntu-desktop, lubuntu-qt-desktop, ubuntustudio-desktop-core, ubuntustudio-desktop, ubuntu-gnome-desktop, ubuntukylin-desktop, ubuntu-mate-core, ubuntu-mate-desktop, ubuntu-budgie-desktop
Supported: 9m

N: There is 1 additional record. Please use the '-a' switch to see it

Но определите, не может определить его:

drunkard@norehab:~$ identify /tmp/xwd.tmp.6821
identify-im6.q16: no decode delegate for this image format `6821' @ error/constitute.c/ReadImage/504.

Это раньше работало.

2
задан 7 October 2017 в 18:48

2 ответа

Простой способ обойти это возможное ограничение imagemagick состоит в том, чтобы немного изменить Вашу технику для захвата снимка экрана. Вместо того, чтобы использовать Ваши текущие 2 метода шага:

  1. Захват снимок экрана с xwd
  2. Преобразовывает с imagemagick

, используют 'канал' для создания процесса единственная команда :

xwd -root | convert xwd:- test.png

Это работало красиво над моей системой и обойдет проблему, которую Вы испытали. Снимок экрана меня вводящий этот ответ (обрезал немного снимка экрана сообщения), использующий эту технику:

enter image description here

существует намного больше идей для использования xwd с этой целью в ссылках ниже...

Ссылки:

2
ответ дан 2 December 2019 в 03:36

Предоставление его он .xwd расширение файла:

drunkard@norehab:~$ cp /tmp/xwd.tmp.6821 /tmp/xwd.tmp.6821.xwd
drunkard@norehab:~$ identify /tmp/xwd.tmp.6821.xwd
/tmp/xwd.tmp.6821.xwd XWD 3840x1215 3840x1215+0+0 8-bit sRGB 18.67MB 0.000u 0:00.009

, Таким образом, это раньше работало, не требуя .xwd расширение файла. Таким образом, я считаю это ошибкой или пользовательской ошибкой в моих ожиданиях, что она должна была когда-либо работать вообще, но не смысл identify для идентификации содержания изображения независимо от номенклатуры файла ?

0
ответ дан 2 December 2019 в 03:36

Другие вопросы по тегам:

Похожие вопросы: