Gli innumerevoli dispositivi digitali che siamo soliti utilizzare hanno portato nel tempo alla nascita di nuovi formati per poter rappresentare le immagini a schermo. Alla base di ogni progetto moderno c’è, almeno in parte, il Windows Metafile un formato per le immagini progettato originariamente negli anni 90 per il neo uscito Microsoft Windows. Inizialmente il formato era dipendente dal dispositivo tramite cui veniva visualizzata l’immagine anche se poteva essere reso adattabili grazie alle indicazioni di posizionamento, come poi avvene nelle future rivisitazioni. Questo avvenne quando i file WMF vennero sostituiti dagli Enhanced Metafiles, stavolta non legati al dispositivo. La peculiarità del Windows Metafile sta proprio nella sua natura visto che è in grado di combinare sia grafica vettoriale che componenti bitmap. Un qualcosa di rivoluzionario per l’internet di qualche tempo fà, una novità che fino ad allora era stata proposta in modo similare solo dai file in SVG.
Diverse tipologie di Metafile
Fino ad ora abbiamo parlato di Metafile come se fosse ovvio sapere come essi lavorano a livello grafico ma per molti non è affatto così. Essenzialmente, un metafile memorizza una lista di record composta da comandi di disegno, definizioni di proprietà e oggetti grafici per visualizzare un’immagine sullo schermo. I comandi di disegno utilizzati sono strettamente correlati ai comandi dell’API Graphics Device Interface (GDI) utilizzata per visualizzare il risultato in Microsoft Windows. Principalmente i metafile possono essere di tre tipi:
– il WMF, un formato a 16 bit introdotto con Windows 3.0. È il formato vettoriale nativo per le applicazioni incluse in Microsoft Office come Word, PowerPoint e Publisher. Dal 2017, il Windows Metafile Format e disponibile per la lettura ed il download nel più attuale formato PDF;
– I file EMF, che hanno sostituito quelli WMF, funzionano sullo stesso principio solo che è un formato di file a 32 bit che consente anche l’incorporamento di dati personalizzabili all’interno del record “commento”;
– EMF+, un’estensione dei file EMF incorporata in questi record di commento, che consente di visualizzare immagini e testo utilizzando comandi, oggetti e proprietà simili ai classici offerti da Windows GDI+.
La composizione di un metafile
I file WMF, EMF e EMF+sono tutti composti da una serie di record che vengono riprodotti per produrre output grafici ad esempio sul monitor del proprio computer. Ci sono diversi record specifici come, ad esempio, quelli che regolano come la grafica debba essere rappresentata o come alcuni punti possono essere modificati per adattarsi alle diverse necessità. Tutta una serie di strumenti, o se preferiamo oggetti, che vengono memorizzati all’interno del metafile, che ne traccia l’utilizzo durante l’elaborazione dei vari dati. Possiamo dire quindi che la tabella degli oggetti è un array associativo di indici a strutture grafiche di proprietà, definiti all’interno del metafile. C’è da dire però che i file WMF e EMF gestiscono l’elaborazione degli oggetti in modo diverso dai record EMF+ nei file EMF. I primi infatti, quando elaborano un file, leggono i record solo quando l’oggetto viene definito e lo eliminano una volta che viene cancellato dalla tabella; mentre l’identificatore può essere ancora usato. Questo differisce per i file EMF+, che usano anche un array associativo, tramite un hashmap, che registra l’oggetto insieme ad un identificatore che lo contraddistingue. In questo caso l’oggetto non può essere eliminato ma solamente sostituito nella tabella da uno nuovo.