File size: 1,260 Bytes
0449894
d7730f8
f21e27b
 
d7730f8
f21e27b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0449894
 
f21e27b
 
 
 
 
0449894
 
0e7c4a1
 
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
import gradio as gr
import os
os.system("pip install PyMuPDF")
import fitz

def pdf_to_zpl(pdf_bytes):
    # Abre el PDF con PyMuPDF
    doc = fitz.open("pdf", pdf_bytes)
    zpl_commands = []

    for page in doc:
        # Extraer texto de cada p谩gina
        text = page.get_text().strip()
        # Convertir el texto a un comando ZPL b谩sico
        # Aqu铆 puedes a帽adir la l贸gica para ajustar la posici贸n y el formato seg煤n tu dise帽o de etiqueta
        zpl_command = (
            f"^XA\n"  # Comienzo del formato de etiqueta
            f"^CF0,60\n"  # Selecciona la fuente y tama帽o
            f"^FO50,50^FD{text}^FS\n"  # Campo de datos (posici贸n y texto)
            f"^XZ"  # Fin del formato de etiqueta
        )
        zpl_commands.append(zpl_command)
    
    # Cierra el documento PDF
    doc.close()

    # Une todos los comandos ZPL en un solo string
    zpl_result = '\n'.join(zpl_commands)
    return zpl_result

iface = gr.Interface(
    fn=pdf_to_zpl,
    inputs=gr.File(type="binary", label="Cargar archivo PDF"),
    outputs=gr.Textbox(label="C贸digo ZPL"),
    title="Conversor de PDF a ZPL",
    description="Esta herramienta intenta convertir un archivo PDF en c贸digo ZPL."
)

if __name__ == "__main__":
    iface.launch()