bhe io sulla prima domanda...domando anch'io...su linux in caso posso usare samba per stampare? (ovvero cups o lpd sfruttano samba x le stampanti in remoto),
sulla seconda...penso proprio di no...devi mandare comandi alla stampante...
per quanto riguarda la terza...nel manuale sta scritto quanto riguarda su get_optiont e set_options con quelli puoi recuperare la dimensione del foglio e altro...
ad es se ti interessa stampare 1000 record...calcoli quanto e grande un record in altezza...calcoli quanto e grande una pagina...e mandi in stampa un num X di record per pagina
non dovrebbe essere difficile
PS: la stampante a quanto pare converte tutto in DOTS (punti) prima di mandare in stampa...devi trovare qualche funzione che calcola l'altezza del font e te la restituisce in punti o in pixel per poi convertirla in punti...
il numero di righe dipende da quello che ci scrivi dentro...ad es se scrivi con un arial a 10 le righe saranno maggiori di un courier new a 14...non si può calcolare già in partenza quante righe ha una stampantexo puoi calcolarlo dopo in base ai font che usi e a tutto il resto...
es:
se devi stampare in ogni pagina una intestazione, e i margini sono X e Y e abbastanza semplice...
recuperi la dimensione della pagina, sottrai i margini, e fai il calcolo di quante pagine devi stampare e di quanti record entrano per pagina...dopo di che un ciclo for nel quale metti che stamperà sempre l'intestazione e poi i record![]()