예제 #1
0
            def info():
                texto_a_imprimir = self.texto.get("1.0", "end")
                if self.ruta != "":
                    direccion = self.ruta.split("/")[-1]
                    nombre_archivo = tempfile.mktemp("_{}".format(direccion))
                else:
                    nombre_archivo = tempfile.mktemp(".txt")

                fichero = open(nombre_archivo, "w")
                fichero.write(texto_a_imprimir)

                if sys.version_info >= (3, ):
                    raw_data = bytes(nombre_archivo, "utf-8")
                else:
                    raw_data = nombre_archivo

                hPrinter = win32print.OpenPrinter(
                    combo_lista_impr.selection_get())
                try:
                    hJob = win32print.StartDocPrinter(
                        hPrinter, 1, (nombre_archivo, None, "RAW"))
                    try:
                        win32api.ShellExecute(0, "print", nombre_archivo, None,
                                              ".", 0)
                        win32print.StartPagePrinter(hPrinter)
                        win32print.WritePrinter(hPrinter, raw_data)
                        win32print.EndPagePrinter(hPrinter)
                    finally:
                        win32print.EndDocPrinter(hPrinter)
                finally:
                    win32print.ClosePrinter(hPrinter)

                fichero.close()
def thermalPrinter(base64code):
    
    try:
        raw_str     = str(base64code)
        raw_base    = base64.b64decode(raw_str)
        data        = bytes(raw_base)
        nameprinter = win32print.GetDefaultPrinter()
        
        hPrinter = win32print.OpenPrinter(nameprinter)
        win32print.StartDocPrinter(hPrinter, 1, ("Print data otros pagos", None, "RAW"))

        try:
            win32print.StartPagePrinter(hPrinter)
            win32print.WritePrinter(hPrinter, data)
            win32print.EndPagePrinter(hPrinter)
            win32print.EndDocPrinter(hPrinter)
            win32print.ClosePrinter(hPrinter)

        except Exception as e:

            return jsonify({
                "code":500,
                "message":str(e.message)
            })
    except Exception as e:
        return jsonify({
            "code":500,
            "message":str(e.message)
        })
    return jsonify({
        "code":200,
        "message":"printer!!!"
    })
예제 #3
0
def print_document(filename, printer_name):
    print(printer_name)
    # printer_name = win32print.GetDefaultPrinter()
    if sys.version_info >= (3, ):
        fp = open("./static/UPLOADFOLDER/" + filename, "rb")
        raw_data = bytes("This is a test", "utf-8")
    else:
        fp = open("./static/UPLOADFOLDER/" + filename, "r")
        raw_data = "This is a test"

    data = fp.read()
    print(printer_name)

    hPrinter = win32print.OpenPrinter(printer_name)
    try:
        hJob = win32print.StartDocPrinter(hPrinter, 1, (filename, None, "RAW"))
        try:
            jobInfo = win32print.GetJob(hPrinter, hJob, 1)
            win32print.SetJob(hPrinter, hJob, 1, jobInfo,
                              win32print.JOB_CONTROL_SENT_TO_PRINTER)
            win32print.StartPagePrinter(hPrinter)
            win32print.WritePrinter(hPrinter, data)
            win32print.EndPagePrinter(hPrinter)
        finally:
            win32print.EndDocPrinter(hPrinter)
    finally:
        win32print.ClosePrinter(hPrinter)

    # os.startfile("H:/Projects/College/LanPrint/static/UPLOADFOLDER/"+filename, "print")
    return Response("Printing Document", status=200, mimetype='text/plain')
예제 #4
0
def SendToBP33(fn_bpl, req_confirm = True):

    printers = win32print.EnumPrinters(2)
    for p in printers:
        if p[3] == 'BBP33':
            printer_name = p[2]
            #print('Found printer ' + printer_name)

    if (printer_name):
        cont = 'y'
        if(req_confirm):
            cont = input('Use ' + printer_name + ' to print labels? [y/n]\n')
        if (cont == 'y'):
            f_bpl = open(fn_bpl, "rb")
            hPrinter = win32print.OpenPrinter(printer_name)
            try:
              hJob = win32print.StartDocPrinter (hPrinter, 1, ("Cable labels", None, "RAW"))
              try:
                win32print.StartPagePrinter (hPrinter)
                win32print.WritePrinter (hPrinter, f_bpl.read())
                win32print.EndPagePrinter (hPrinter)
              finally:
                win32print.EndDocPrinter (hPrinter)
            finally:
              win32print.ClosePrinter (hPrinter)
            f_bpl.close()
        else:
예제 #5
0
def printer(raw_data):
    default_printer = win32print.GetDefaultPrinter()
    h = win32print.OpenPrinter(default_printer)
    win32print.StartDocPrinter(h, 1, ("", "", "RAW"))
    win32print.WritePrinter(h, raw_data)
    win32print.EndDocPrinter(h)
    win32print.ClosePrinter(h)
예제 #6
0
def do(filename):
    filename = filename.read()
    # word wrap the log, so that it completely is on page
    formatted_log = '\r\n'.join(textwrap.wrap(filename, width=75, replace_whitespace=False))
    if platform.system() == 'Windows':  # if we are on windows, print via this section
        import sys
        import win32print  # as this module is only available under windows, import it here to prevent errors
        printer_name = win32print.GetDefaultPrinter()
        #
        # raw_data could equally be raw PCL/PS read from
        #  some print-to-file operation
        #
        if sys.version_info >= (3,):
            raw_data = bytes(formatted_log)
        else:
            raw_data = formatted_log

        h_printer = win32print.OpenPrinter(printer_name)
        try:
            _ = win32print.StartDocPrinter(h_printer, 1, ("Log File Printout", None, "RAW"))
            try:
                win32print.StartPagePrinter(h_printer)
                win32print.WritePrinter(h_printer, raw_data)
                win32print.EndPagePrinter(h_printer)
            finally:
                win32print.EndDocPrinter(h_printer)
        finally:
            win32print.ClosePrinter(h_printer)

    else:  # if we are on a unix-like, print via this section
        import subprocess
        lpr = subprocess.Popen("/usr/bin/lpr", stdin=subprocess.PIPE)
        lpr.stdin.write(formatted_log)
예제 #7
0
def print_raw_win32print(content, printer_name, job_description):
    """ Start a print job and send raw data to the printer.

    Args:
        content: The raw data to print.
        printer_name: The printer's name.
        job_description: A description of the job.

    Returns:
        None

    References:
        * http://timgolden.me.uk/python/win32_how_do_i/print.html
        * http://timgolden.me.uk/pywin32-docs/win32print.html
            Even Tim Golden recommends just calling `print <filename> /d:<printer>` on the shell.
        * https://docs.microsoft.com/en-us/windows/win32/printdocs/using-the-printing-functions
            (For C++ applications).
        * http://www.icodeguru.com/WebServer/Python-Programming-on-Win32/ch10.htm
    """
    import win32print
    p = win32print.OpenPrinter(printer_name)
    job = win32print.StartDocPrinter(p, 1, (job_description, None, "RAW"))
    win32print.StartPagePrinter(p)
    win32print.WritePrinter(p, content)
    win32print.EndPagePrinter(p)
    win32print.EndDocPrinter(p)
    win32print.ClosePrinter(p)
예제 #8
0
    def printer1(self, img):  #调用打印机,请事先把默认打印机,纸张格式等参数从电脑上调好
        print('start print ' + img)
        printer_name = win32print.GetDefaultPrinter()
        #
        # raw_data could equally be raw PCL/PS read from
        #  some print-to-file operation
        #
        if sys.version_info >= (3, ):
            raw_data = bytes(a, "utf-8")
        else:
            raw_data = "This is a test"

        hPrinter = win32print.OpenPrinter(printer_name)
        try:
            hJob = win32print.StartDocPrinter(hPrinter, 1, (img, None, "RAW"))
            print('here1' + img)
            try:
                win32print.StartPagePrinter(hPrinter)
                win32print.WritePrinter(hPrinter, raw_data)
                win32print.EndPagePrinter(hPrinter)
                print('here2')
            finally:
                win32print.EndDocPrinter(hPrinter)
                print('here3')
        finally:
            win32print.ClosePrinter(hPrinter)
            print('here4')
예제 #9
0
 def print_document(self, document):
     raw_data = document.cut_if_uncut().encoded
     win_printer = win32print.GetDefaultPrinter()
     printer = win32print.OpenPrinter(win_printer)
     win32print.StartDocPrinter(printer, 1, ('CASHDRAWERPRINT', None, None))
     win32print.WritePrinter(printer, raw_data)
     win32print.EndDocPrinter(printer)
     win32print.ClosePrinter(printer)
def printer(raw_data):
    hPrinter = win32print.OpenPrinter(printer_name)
    hJob = win32print.StartDocPrinter(hPrinter, 1,
                                      ("test of raw data", None, "RAW"))
    win32print.StartPagePrinter(hPrinter)
    win32print.WritePrinter(hPrinter, raw_data)
    win32print.EndPagePrinter(hPrinter)
    win32print.EndDocPrinter(hPrinter)
    win32print.ClosePrinter(hPrinter)
예제 #11
0
    def printCobrar(self):
        printFinal = ''

        qsFinal = self.request.data.get('qsFinal')
        qsTotal = self.request.data.get('qsTotal')
        folio = self.request.data.get('folio')
        mesero = self.request.data.get('mesero')
        mesa = self.request.data.get('mesa')

        qsFinal.pop(0)
        for orden in qsFinal:
            for platillo in orden:
                _platillo = platillo.get('platillo')
                if 'B-' in _platillo:
                    _platillo = 'Bebida {0}'.format(
                        platillo.get('platillo').split('-')[1])
                elif 'Q-' in _platillo:
                    _platillo = 'Quesadilla {0}'.format(
                        platillo.get('platillo').split('-')[1])

                printFinal += '\n{0} {1} \n\t\t\t\t ${2}'.format(
                    platillo.get('cantidad'), _platillo,
                    platillo.get('precio'))

        print_final_caja = """
        \t FOLIO: {folio}
         MIXTAS EL COSTEÑO
         Mesero: {mesero}
         Mesa # {mesa}
        \r ----------------
        Ordenes:
        {printFinal}
        \t\t\t---- \t
            \t\t\t $ {total} \t

        \n\tDesarollado por TEAM-ANYOAN\n\t   [email protected]
        """.format(folio=folio,
                   mesero=mesero,
                   mesa=mesa,
                   printFinal=printFinal,
                   total=qsTotal)

        # Epson Bebidas y Caja
        printer = win32print.OpenPrinter('EPSON TM-T88V 1')
        jid = win32print.StartDocPrinter(printer, 1, ('TEST DOC', None, 'RAW'))
        bytes = win32print.WritePrinter(printer, print_final_caja)
        win32print.EndDocPrinter(printer)
        win32print.ClosePrinter(printer)

        # Cortar
        hDC = win32ui.CreateDC()
        hDC.CreatePrinterDC('EPSON TM-T88V 1')
        hDC.StartDoc("Test doc")
        hDC.StartPage()
        hDC.EndPage()
        hDC.EndDoc()
예제 #12
0
def index():
    printer_data = request.form['printer_data']
    p = win32print.OpenPrinter(PRINTER_NAME)
    job = win32print.StartDocPrinter(p, 1, ("DOTMATRIX", None, "RAW"))
    win32print.StartPagePrinter(p)
    win32print.WritePrinter(p, printer_data.encode())
    win32print.EndPagePrinter(p)

    out = {'status': 'OK'}
    return jsonify(out)
예제 #13
0
def winPrint(text, name):
    import win32print  #is this how I multiplatform?
    pname = win32print.GetDefaultPrinter()
    printer = win32print.OpenPrinter(pname)
    job = win32print.StartDocPrinter(printer, 1, (name, None, "RAW"))
    win32print.StartPagePrinter(printer)
    win32print.WritePrinter(printer, text)
    win32print.EndPagePrinter(printer)
    win32print.EndDocPrinter(printer)
    win32print.ClosePrinter(printer)
예제 #14
0
    def _printout(self, rawdata):
        if self.printerParam['connectionMethod'] == 'network':
            self.printer.sendall(rawdata)
            self._closeNetworkPrinter()

        if self.printerParam['connectionMethod'] == 'usb':
            hJob = win32print.StartDocPrinter(self.printer, 1,
                                              ("Test print", None, "RAW"))
            win32print.WritePrinter(self.printer, rawdata)
            win32print.EndPagePrinter(self.printer)
            win32print.ClosePrinter(self.printer)
예제 #15
0
        def _raw(self, msg):
            """ Print any command sent in raw format

            :param msg: arbitrary code to be printed
            :type msg: bytes
            """
            if self.printer_name is None:
                raise Exception("Printer not found")
            if self.hPrinter is None:
                raise Exception("Printer job not opened")
            win32print.WritePrinter(self.hPrinter, msg)
예제 #16
0
 def printTab(self, printer):
     """
     打印标签
     :param printer: 打印机名称
     :return: None
     """
     hPrinter = win32print.OpenPrinter(printer)
     command = self._getCommend()
     try:
         hJob = win32print.StartDocPrinter(hPrinter, 1,
                                           ('Label', None, 'raw'))
         try:
             win32print.StartPagePrinter(hPrinter)
             win32print.WritePrinter(hPrinter, command)
             win32print.EndPagePrinter(hPrinter)
             win32print.StartPagePrinter(hPrinter)
             win32print.WritePrinter(hPrinter, '^EG'.encode('utf-8'))
             win32print.EndPagePrinter(hPrinter)
         finally:
             win32print.EndDocPrinter(hPrinter)
     finally:
         win32print.ClosePrinter(hPrinter)
예제 #17
0
 def printRaw(self, printer, data, title):
     hPrinter = win32print.OpenPrinter(printer)
     try:
         win32print.StartDocPrinter(hPrinter, 1, (title, None, "RAW"))
         try:
             win32print.StartPagePrinter(hPrinter)
             win32print.WritePrinter(hPrinter, base64.b64decode(data))
             win32print.EndPagePrinter(hPrinter)
         finally:
             win32print.EndDocPrinter(hPrinter)
     finally:
         win32print.ClosePrinter(hPrinter)
     return 0
예제 #18
0
 def sendjob(self, fp, title = "Raw Print Server Job"):
     hprinter = win32print.OpenPrinter(self.printer_name)
     hjob = win32print.StartDocPrinter(hprinter, 1, (title, None, "RAW"))
     try:
         blk = fp.read(8192)
         while blk:
             win32print.WritePrinter(hprinter, blk)
             blk = fp.read(8192)
     except:
         import traceback
         traceback.print_exc(file = sys.stdout)
     win32print.EndDocPrinter(hprinter)
     win32print.ClosePrinter(hprinter)
예제 #19
0
def printer_job(printer_name, printer_file):
    hPrinter = win32print.OpenPrinter(printer_name)
    try:
      hJob = win32print.StartDocPrinter(hPrinter, 1, ("test of raw data", None, "RAW"))
      try:
        win32print.StartPagePrinter(hPrinter)
        # win32print.WritePrinter (hPrinter, raw_data)
        win32print.WritePrinter(hPrinter, printer_file)
        win32print.EndPagePrinter(hPrinter)
      finally:
        win32print.EndDocPrinter(hPrinter)
    finally:
      win32print.ClosePrinter(hPrinter)
def send_document(filename):
    # Try to get printer. If it fails, print out exact error.
    try:
        p = win32print.OpenPrinter(get_online_printer())
        try:
            #open printer, print, close out printer
            win32print.StartDocPrinter(p, 1, ("Printer Test", None, "RAW"))
            win32print.StartPagePrinter(p)
            win32print.WritePrinter(p, filename)
            win32print.EndPagePrinter(p)
        except Exception as e:
            print("Print Error: ", e)
        win32print.ClosePrinter(p)
    except Exception as e:
        print("Could not find printer: ", e)
예제 #21
0
 def _output_win(self, commands):
     if self.queue == 'zebra_python_unittest':
         return
     hPrinter = win32print.OpenPrinter(self.queue)
     try:
         hJob = win32print.StartDocPrinter(hPrinter, 1,
                                           ('Label', None, 'RAW'))
         try:
             win32print.StartPagePrinter(hPrinter)
             win32print.WritePrinter(hPrinter, commands)
             win32print.EndPagePrinter(hPrinter)
         finally:
             win32print.EndDocPrinter(hPrinter)
     finally:
         win32print.ClosePrinter(hPrinter)
예제 #22
0
def printContent(raw_data):
    try:
        printer_name = win32print.GetDefaultPrinter ()
        hPrinter = win32print.OpenPrinter(printer_name)
        try:
            hJob = win32print.StartDocPrinter (hPrinter, 1, ("test of raw data", None, "RAW"))
            try:
                win32print.StartPagePrinter (hPrinter)
                win32print.WritePrinter (hPrinter, raw_data.encode("gbk"))
                win32print.EndPagePrinter (hPrinter)
            finally:
                win32print.EndDocPrinter (hPrinter)
        finally:
            win32print.ClosePrinter (hPrinter)
    except Exception as e: 
        logger.error("printContent error "+e)
    return True
예제 #23
0
def Printer_Process(raw_data):
    printer_name = win32print.GetDefaultPrinter()
    try:
        raw_data = raw_data.encode('gb2312');
    except:
        raw_data = raw_data;
    hPrinter = win32print.OpenPrinter(printer_name)
    try:
        hJob = win32print.StartDocPrinter(hPrinter, 1, ("Sell Receipt", None, "RAW"))
        try:
            win32print.StartPagePrinter(hPrinter)
            win32print.WritePrinter(hPrinter, raw_data)
            win32print.EndPagePrinter(hPrinter)
        finally:
            win32print.EndDocPrinter(hPrinter)
    finally:
        win32print.ClosePrinter(hPrinter)
예제 #24
0
def print_receipt(transactionID, printer_name, jsonObject):
    basedir = jsonObject["RCPT_DIR"]
    if (printer_name == ""):
        printer_name = win32print.GetDefaultPrinter()

    if (os.name != "posix"):
        hPrinter = win32print.OpenPrinter(printer_name)
        f2 = open(os.path.join(basedir, transaction_number), "r")
        text_data = f2.read()
        f2.close()
        # Open a doc, open a page, wirte the page and close page and doc
        hJob = win32print.StartDocPrinter(
            hPrinter, 1, ("Startup Day Receipt", None, "TEXT"))
        win32print.StartPagePrinter(hPrinter)
        win32print.WritePrinter(hPrinter, text_data)
        win32print.EndPagePrinter(hPrinter)
        win32print.EndDocPrinter(hPrinter)
        win32print.ClosePrinter(hPrinter)
예제 #25
0
def print_job(zpl):
    printer = win32print.OpenPrinter('ZDesigner GX420d')
    job = win32print.StartDocPrinter(printer, 1, ('test of raw data', None, "RAW"))

    print(zpl)

    # string= '''
    # ^XA
    # ^FO0,24^A0N,120,96^FB720,1,0,C,0^FDStart^FS
    # ^FO0,180^BQN,2,10,Q,7^FS
    # ^XZ
    # '''

    raw_data = bytes(zpl, 'utf-8')

    win32print.StartPagePrinter(printer)
    win32print.WritePrinter(printer, raw_data)
    win32print.EndPagePrinter(printer)
예제 #26
0
def SpoolPrint(NamePrint, StringBytes):  
    # NamePrint -- Имя принтера
    # StringBytes -- Строка байтов
    # Можно открывать файл как показанно ниже
    # printer_name = win32print.GetDefaultPrinter ()        # Имя принтера по умолчанию в системе 
    # open_file = open('epson_nozzle_check.spl', 'rb')      # Открываем файл 
    # raw_data = open_file.read()                           # Копируем данные в буфер
    # open_file.close()                                     # Закрываем файл

    hPrinter = win32print.OpenPrinter (NamePrint)
    try:
        hJob = win32print.StartDocPrinter (hPrinter, 1, ("Print RAW Data", None, "RAW"))
        try:
            win32print.StartPagePrinter (hPrinter)
            win32print.WritePrinter (hPrinter, StringBytes)
            win32print.EndPagePrinter (hPrinter)
        finally:
            win32print.EndDocPrinter (hPrinter)
    finally:
        win32print.ClosePrinter (hPrinter)
예제 #27
0
def test_raw(printer='MyPSPrinter',
             filename=r'G:/test.txt',
             text=None):
    '''send plain text to a file'''
    if text is None:
        text_data = "This is a test. This is only a test."
    else:
        text_data = text
    job_info = ("Raw File Print", filename, 'RAW')
    h_printer = win32print.OpenPrinter(printer)
    try:
        h_job = win32print.StartDocPrinter(h_printer, 1, job_info)
        try:
            win32print.StartPagePrinter(h_printer)
            win32print.WritePrinter(h_printer, text_data.encode())
            win32print.EndPagePrinter(h_printer)
        finally:
            win32print.EndDocPrinter(h_printer)
    finally:
        win32print.ClosePrinter(h_printer)
예제 #28
0
def print_windows(details):
    try:
        import win32print
        printer = win32print.OpenPrinter(details['printer_name'])
        try:
            print_job = win32print.StartDocPrinter(
                printer, 1, (details['description'], None, "RAW"))
            try:
                win32print.StartPagePrinter(printer)
                win32print.WritePrinter(printer,
                                        details['print_code'].encode('utf-8'))
                win32print.EndPagePrinter(printer)
                r = requests.get(
                    f'https://{HOST}/gateway/print_end'
                    f'/{details["print_id"]}/{details["print_secret"]}')
            finally:
                win32print.EndDocPrinter(printer)
        finally:
            win32print.ClosePrinter(printer)
    except ImportError:
        pass
예제 #29
0
    def send(self, quantity=1):
        """ Replace label tags with values """
        populated_label_zpl = self.replace_tags(self.__content,
                                                self.REPLACE_LIST)

        printed_quantity = 0
        while printed_quantity < quantity:
            if self.interface == 'tcp':
                print('Sending label to : ' + str(self.ip_address) + ':' +
                      str(self.port) + ' ...')
                with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
                    s.connect((self.ip_address, self.port))
                    s.send(populated_label_zpl.encode())
            elif self.interface == 'usb':
                print("Sending label through USB")

                if sys.version_info >= (3, ):
                    raw_data = bytes(populated_label_zpl, "utf-8")
                else:
                    raw_data = populated_label_zpl

                hPrinter = win32print.OpenPrinter(self.name)
                try:
                    hJob = win32print.StartDocPrinter(
                        hPrinter, 1, ("Shard Label", None, "RAW"))
                    try:
                        win32print.StartPagePrinter(hPrinter)
                        win32print.WritePrinter(hPrinter, raw_data)
                        win32print.EndPagePrinter(hPrinter)
                    finally:
                        win32print.EndDocPrinter(hPrinter)
                finally:
                    win32print.ClosePrinter(hPrinter)
            else:
                print("Interface not defined")

            printed_quantity = printed_quantity + 1

        print('Sent')
예제 #30
0
    def on_bt_print_clicked(self):
        """
        Slot documentation goes here.
        """     
        a = "^XA^FX #^CF0,60^FO20,30^FDMILKPLAN^FS^CF0,30^FO620,55^FDRnD_CODES^FS^FO20,85^GB750,1,3^FS^FX #"
        b = "^CFA,28^FO50,120^FD"+"AITHSH KOPHS:"+self.line_1.text()+"^FS"
        c ="^FO50,160^FD"+"ENTOLH: "+self.line_2.text()+"^FS"
        d = "^FO50,200^FD"+"TOMEAS: "+self.line_3.text()+"^FS"
        e = "^FO50,240^FD"+"DELIVERY DATE:"+self.line_5.text()+"^FS"
        e1 = "^FO50,280^FD"+"NAME:"+self.line_6.text()+"^FS"
        e2 = "^FO50,320^FD"+"DELIVERY PLACE:"+self.line_7.text()+"^FS"
        f = "^CFA,25^FO20,450^FDCOMMENTS:^FS^FX Fourth section (the two boxes on the bottom)."
        g = "^FO20,480^GB750,100,5^FS^CF0,40^FO50,510^FD"+self.data_paratirisis.text()+"^FS^XZ"

        message = a+b+c+d+e+e1+e2+f+g
#        hitzebra = win32print.OpenPrinter("\\\\Polyzoudis-pc\\Ετικέτες")
#        hitzebra = win32print.SetDefaultPrinter()
        hitzebra = win32print.OpenPrinter(self.name)
        filename = "2222.txt"
        s = bytes(message, "utf-16")
        print(type(s))
        print(s)
        print(hitzebra)
        posot=int(self.data_posothta.text())
        print(posot) 
        try:
            hJob = win32print.StartDocPrinter(hitzebra, 1, ('PrintJobName', None, 'RAW'))
            try:
#                win32api.ShellExecute(0, "print", filename, None, ".", 0)
             for i in range(posot):
                win32print.StartPagePrinter(hitzebra)
                win32print.WritePrinter(hitzebra, s)  # Instead of raw text is there a way to print PDF File ?
                win32print.EndPagePrinter(hitzebra)
                 
            finally:
                win32print.EndDocPrinter(hitzebra)
        finally:
#            win32print.ClosePrinter("\\\\Polyzoudis-pc\\Ετικέτες")
             pass