#!/usr/bin/python2.7 import os import os.path import time import sys import tempfile PY3 = sys.version_info[0] == 3 READ_SIZE = 8192 total_bytes_read = 0 temp_in_file = "-" if (len(sys.argv) > 6): temp_in_file = sys.argv[6] temp_out_handle, temp_out_fname = tempfile.mkstemp() font = "-I/usr/share/cups/fonts" device = "-sDEVICE=tiffg4 -dMaxStripSize=0 -r204x196 -dNOPAUSE -dBATCH -dSAFER -dPARANOIDSAFER -dSHORTERRORS -dWRITESYSTEMDICT -dGHOSTSCRIPT -sstdout=%stderr -sOutputFile=" + temp_out_fname + " " + temp_in_file gs_command = "/usr/bin/gs" + " " + font + " " + device exit_code = os.system(gs_command) file_len = os.stat(temp_out_fname).st_size if (file_len < READ_SIZE): READ_SIZE = file_len os.close(temp_out_handle) out_handle = open(temp_out_fname, mode='rb') while (total_bytes_read < file_len): data = out_handle.read(READ_SIZE) if PY3: sys.stdout.buffer.write(data) else: sys.stdout.write(data) total_bytes_read += READ_SIZE out_handle.close() os.remove(temp_out_fname) sys.exit(0)