JPEG Base64 Image String (Python)


This short code lets you create a base64 encoded image string, that you can copy and paste into your Python program code to display relatively small embedded images.

For a typical application see:

# base64 encoding converts binary data to plain text
# it stores each group of three binary bytes as a group of four characters from the text set:
#     ABCDEFGHIJKLMNOPQRSTUVWXYZ  abcdefghijklmnopqrstuvwxyz  0123456789+/
#     the = character is used for padding at the end of the data stream
# this way an image file can be represented as a string to transmit or
# a short image can be embedded in code as a string, you can insert newlines at
# convenient locations into this embedded string, they will be ignored when
# decoding with for instance   jpg1 = base64.b64decode(jpg1_b64)
# tested with Python24       vegaseat     06oct2005

import base64

# pick a jpeg file you have and want ...
jpgfile = "halloween3.jpg"

# note: binary read "rb" is required!
# this gives a one line string ...
#jpg_text = 'jpg1_b64 = \\\n"""' + base64.b64encode(open(jpgfile,"rb").read()) + '"""'
# another option, inserts newlines about every 76 characters, easier to copy and paste!
jpg_text = 'jpg1_b64 = \\\n"""' + base64.encodestring(open(jpgfile,"rb").read()) + '"""'

print jpg_text

# optionally save to a text file
filename = "jpg1_b64.txt"
    fout = open(filename, "w")
except IOError:
    print "File %s could not be saved!" % filename
Isn't it about time forums rewarded their contributors?

Earn rewards points for helping others. Gain kudos. Cash out. Get better answers yourself.

It's as simple as contributing editorial or replying to discussions labeled or OP Kudos

This is an OP Kudos discussion and contributors may be rewarded
Start New Discussion
Tags Related to this Article