/usr/lib/python3/dist-packages/wand/display.py is in python3-wand 0.3.5-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | """:mod:`wand.display` --- Displaying images
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The :func:`display()` functions shows you the image. It is useful for
debugging.
If you are in Mac, the image will be opened by your default image application
(:program:`Preview.app` usually).
If you are in Windows, the image will be opened by :program:`imdisplay.exe`,
or your default image application (:program:`Windows Photo Viewer` usually)
if :program:`imdisplay.exe` is unavailable.
You can use it from CLI also. Execute :mod:`wand.display` module through
:option:`python -m` option:
.. sourcecode:: console
$ python -m wand.display wandtests/assets/mona-lisa.jpg
.. versionadded:: 0.1.9
"""
import ctypes
import os
import platform
import sys
import tempfile
from .image import Image
from .api import library
from .exceptions import BlobError, DelegateError
__all__ = 'display',
def display(image, server_name=':0'):
"""Displays the passed ``image``.
:param image: an image to display
:type image: :class:`~wand.image.Image`
:param server_name: X11 server name to use. it is ignored and not used
for Mac. default is ``':0'``
:type server_name: :class:`str`
"""
if not isinstance(image, Image):
raise TypeError('image must be a wand.image.Image instance, not ' +
repr(image))
system = platform.system()
if system == 'Windows':
try:
image.save(filename='win:.')
except DelegateError:
pass
else:
return
if system in ('Windows', 'Darwin'):
ext = '.' + image.format.lower()
path = tempfile.mktemp(suffix=ext)
image.save(filename=path)
os.system(('start ' if system == 'Windows' else 'open ') + path)
else:
library.MagickDisplayImage.argtypes = [ctypes.c_void_p,
ctypes.c_char_p]
library.MagickDisplayImage(image.wand, str(server_name).encode())
if __name__ == '__main__':
if len(sys.argv) < 2:
print>>sys.stderr, 'usage: python -m wand.display FILE'
raise SystemExit
path = sys.argv[1]
try:
with Image(filename=path) as image:
display(image)
except BlobError:
print>>sys.stderr, 'cannot read the file', path
|