12.1 formatter -- Formattatore generico per l'output

Questo modulo supporta definizioni di interfacce, ciascuna con implementazioni multiple. L'interfaccia di formatter viene utilizzata dalla classe HTMLParser del modulo htmllib e l'interfaccia writer viene richiesta dall'interfaccia di formatter.

Gli oggetti formattatori trasformano un flusso astratto di eventi di formattazione in uno specifico evento di scrittura sugli oggetti scrittori. I formattatori gestiscono molteplici strutture stack per permettere a varie proprietà di un oggetto scrittore di essere modificate e ripristinate; gli scrittori non necessitano di poter gestire i cambiamenti relativi né nessun tipo di operazione ``change back'' (NdT. modifiche all'indietro). Proprietà specifiche degli scrittori che devono essere controllate dagli oggetti formattatori sono allineamento orizzontale, font ed indentazione del margine sinistro. Un meccanismo fornito supporta la fornitura arbitraria, di stili non esclusivi di configurazioni anche in uno scrittore. Interfacce addizionali facilitano gli eventi di formattazione che non sono reversibili, come la separazione dei paragrafi.

Gli oggetti scrittori incapsulano le interfacce dei dispositivi. I dispositivi astratti, come formati di file, vengono supportati così come i dispositivi fisici. Tutte le implementazione fornite lavorano con i dispositivi astratti. L'interfaccia rende disponibili dei meccanismi per impostare le proprietà che gli oggetti formattatori gestiscono e l'inserimento di dati nell'output.



Subsections
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.