lunedì 4 agosto 2014

Stampare su più pagine

Sono stato contattato privatamente per risolvere una questione di stampa su più pagine, quindi credo che sia meglio affrontare l'argomento della stampa su più pagine. Quando volete stampare è sempre meglio creare un sub-stack apposito, delle dimensioni della pagina da stampare. Dentro questo stack tutte le carte rappresentano le pagine da stampare, quindi la carta numero 1 sarà la prima, la 2 la seconda e così via.
Si comincia a lavorare solo su una card: conviene impostare tra le proprietà della carta "opaque" e come colore del background bianco; in questo modo le pagine hanno lo sfondo bianco.
A questo punto di riempie la card con tutti i campi, le scritte, e tutto quello che vogliamo stampare; se per qualche motivo non ci basta una pagina, si usa:

clone this card

in questo modo la carta (pagina) è clonata. Quando si clona una pagina, si passa ad una copia della carta nello stesso stack. Questa copia ha un numero successivo, ad esempio da 1 passa a 2, e ha tutti gli elementi con gli stessi nomi; tutto ciò rende semplicissimo riempire i dati, poichè non dobbiamo andare a cercare i nuovi nomi dei campi.
Fatto ciò per stampare tutte le pagine basta:

open printing to pdf nomefile
go to card 1
print this stack   
close printing

In questo esempio come dispositivo di stampa ho scelto il PDF, ma potete mandare in stampa sulla stampante che preferite. Notate come il comando go to card 1 serva a riposizionarci sulla prima carta (pagina), le altre carte (pagine) saranno stampate secondo l'ordine del proprio numero.
Quando vogliamo riutilizzare lo stack, ma cancellare tutte le altre pagine eccetto la prima con cui ricominciare, possiamo scrivere:

put the number of cards into temp
repeat with temp2 = temp down to 2
   delete card temp2
end repeat

In questo modo le cancelleremo tutte a parte la prima.