diff options
author | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-11-06 23:26:25 +0100 |
---|---|---|
committer | Stefan Israelsson Tampe <stefan.itampe@gmail.com> | 2018-11-06 23:26:25 +0100 |
commit | 4d4de6eecb3917e19a0af616790630a683b43767 (patch) | |
tree | 84f4e249a986928dfcba616d32a269900804772c /modules/language/python/module/email/mime/#image.py# | |
parent | 9f1bcefabfbfb28cd913b363285675d98e9c622c (diff) |
python repo install
Diffstat (limited to 'modules/language/python/module/email/mime/#image.py#')
-rw-r--r-- | modules/language/python/module/email/mime/#image.py# | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/modules/language/python/module/email/mime/#image.py# b/modules/language/python/module/email/mime/#image.py# new file mode 100644 index 0000000..5346dac --- /dev/null +++ b/modules/language/python/module/email/mime/#image.py# @@ -0,0 +1,49 @@ +module(email,mime,image) + +# Copyright (C) 2001-2006 Python Software Foundation +# Author: Barry Warsaw +# Contact: email-sig@python.org + +"""Class representing image/* type MIME documents.""" + +__all__ = ['MIMEImage'] + +import imghdr + +import email.encoders as encoders +from email.mime.nonmultipart import MIMENonMultipart + + + +class MIMEImage(MIMENonMultipart): + """Class for generating image/* type MIME documents.""" + + def __init__(self, _imagedata, _subtype=None, + _encoder=encoders.encode_base64, *, policy=None, **_params): + """Create an image/* type MIME document. + + _imagedata is a string containing the raw image data. If this data + can be decoded by the standard Python `imghdr' module, then the + subtype will be automatically included in the Content-Type header. + Otherwise, you can specify the specific image subtype via the _subtype + parameter. + + _encoder is a function which will perform the actual encoding for + transport of the image data. It takes one argument, which is this + Image instance. It should use get_payload() and set_payload() to + change the payload to the encoded form. It should also add any + Content-Transfer-Encoding or other headers to the message as + necessary. The default encoding is Base64. + + Any additional keyword arguments are passed to the base class + constructor, which turns them into parameters on the Content-Type + header. + """ + if _subtype is None: + _subtype = imghdr.what(None, _imagedata) + if _subtype is None: + raise TypeError('Could not guess image MIME subtype') + MIMENonMultipart.__init__(self, 'image', _subtype, policy=policy, + **_params) + self.set_payload(_imagedata) + _encoder(self) |