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()