FitPlot 3.5 Printer Companion Logo ©2006-2011 Pamarcu

[home] [back]


Compattamento

Con il comando compattamento Compattamento ho cercato di introdurre un semplice algoritmo di ottimizzazione degli spazi.
Cliccando sul comando nella barra strumenti (oppure da menu Strumenti->Compatta…, possiamo ottenere un compattamento delle immagini presenti sul foglio verso l'alto della pagina.

Il comando compatta… (cmd - enter) mostra questo dialogo:

Dialogo compattamento


Ci sono tre tipi di compattamento:
  1. Aggiungi pagine necessarie (ideale per stampanti a foglio singolo)
  2. Espandi / contrai area di stampa (adatto a plotters con alimentazione a rotolo)
  3. Compatta in area (definita dall'utente)

Aggiungi pagine: In questo caso l'algoritmo cerca di riempire la pagina attuale dall'alto verso il basso. Quando non c'è più spazio, una nuova pagina è generata e il riempimento continua su questa e così via fino a che l'ultima immagine non è a posto. Alla fine, se sono state necessarie più pagine, il cassetto laterale delle pagine viene aperto.

Espandi / contrai: Le immagini sono distribuite su un'unica pagina che verrà adattata sfruttando la larghezza massima possibile (ampiezza del rotolo) ed usando la lunghezza minima necessaria.
Per questo particolare compito (autoridimensionamento del foglio), 4 nuovi campi si sono resi necessari nel dialogo di impostazione margini, contenenti i valori minimi e massimi che il foglio può assumere per la stampante in uso.
Con queste informazioni l'algoritmo può regolarsi su come espandere / ridurre il foglio per una massima ottimizzazione della disposizione delle immagini sul foglio [vedi nota a fondo pagina].

Compatta in area: Le immagini vengono disposte all'interno di un'area che sta all'utente definire: all'uscita del dialogo viene mostrato il messaggio:
A questo punto dovremo definire con il mouse un rettangolo (clic e trascina) da riempire con le immagini da compattare. Possiamo servirci, prima di cominciare, dello zoom della finestra, di un suo scorrimento e di tutto quel che occorre per poter tracciare agevolmente l'area.

Al rilascio del mouse, se possibile, le immagini da impacchettare saranno raccolte nell'area definita.

Le altre opzioni presenti nel dialogo sono descritte di seguito:

Disclaimer: l'algoritmo di compattamento da me implementato in FitPlot è lungi dall'esser perfetto. Questo tipo di problemi è noto in informatica come 2D bin packing problem o problema dei pacchi, in due dimensioni. Sfortunatamente non esiste una soluzione certa a meno di non enumerare tutte le combinazioni possibili, pagando il conto con tempi di calcolo che incrementano in maniera fattoriale con il numero delle immagini da sistemare! L'algoritmo usato da FitPlot è molto veloce e funzionerà bene nella maggior parte dei casi. Ci possono tuttavia essere delle situazioni dove una nostra semplice occhiata può intravedere una disposizione migliore di quella trovata dal programma. Spero di poter migliorare in futuro questa funzionalità. Ogni suggerimento da esperti sul tema è bene accetto.

Impostazione margini per compattamento

Dal menu Strumenti->Imposta Margini… riempi i campi in basso:

Dialogo compattamento

Per quel che riguarda le dimensioni minime, puoi vedere nei formati disponibili per il plotter / stampante in questione (nel menu Formato di Stampa…) e scegli il più piccolo della lista.
Per le dimensioni massime, invece, la larghezza dovrebbe corrispondere alla larghezza del rotolo / foglio caricato (24", 36", 42" ecc.), l'altezza può essere un valore arbitrariamente lungo (io ho impostato [e stampato] 6 metri sul mio HP 500 PS).
NOTA: Se tutti i campi di minima e massima dim. del foglio sono lasciati (o reimpostati) a 0, non saranno considerati dall'algoritmo di compattamento.

[home] [back] [top]