Intro

I processi di stampa in Colibri sono gestiti attraverso un insieme di classi:

PRINTER_DRIVER: classe base per la strutturazione dei driver delle stampanti.

La classe mette a disposizione un insieme di metodi e funzioni per la configurazione dell’hardware. Da questa derivano tutti i driver delle stampanti; ad esempio la PRINTER_DRIVER_XF640 che permette di comunicare con la stampante Roland XF640.

PRINTER: questa classe è l’interfaccia standard fra l’applicazione e le stampanti; In pratica un processo di stampa avviene sempre accedendo ad una istanza di PRINTER, lanciando un thread attraverso il metodo PRINTER::StartThread(…), dopo avere configurato la stessa.

Configurare un oggetto PRINTER significa assegnargli un’oggetto derivato da PRINTER_DRIVER ( ad esempio un’istanza di PRINTER_DRIVER_XF640) ed una configurazione (un oggetto PRINTER_CONFIGURATION).

PRINTER_CONFIGURATION: contiene i parametri di configurazione dell’hardware, oltre all’id di un driver.

Tutto il processo di creazione ed inizializzazione, pur complesso, è svolto da un una funzione statica, PRINTER::UseConfig(config_name), che riceve in ingresso un nome di configurazione, estrae dal database la stessa, ricava l’idi del driver, lo genera e assegna a PRINTER,  rimanda un oggetto PRINTER pronto per essere utilizzato.

Per effettuare la stampa occorrerà in seguito chiamare la funzione PRINTER::StartThread(..) che attiva un thread di stampa.

In questo post descriveremo  come il thread di stampa lanciato comunica con il documento da stampare, richiedendo le linee di pixel (separazioni).

%d bloggers like this:
Skip to toolbar