01.06.2013 Views

manipolazione di file in formato PDF median - The e-Lite Research ...

manipolazione di file in formato PDF median - The e-Lite Research ...

manipolazione di file in formato PDF median - The e-Lite Research ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

POLITECNICO DI TORINO<br />

Facoltà <strong>di</strong> Ingegneria<br />

Corso <strong>di</strong> Diploma <strong>in</strong> Ingegneria Informatica<br />

Tesi <strong>di</strong> Diploma<br />

Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> <br />

me<strong>di</strong>ante libreria iText<br />

Relatore<br />

prof. Fulvio Corno<br />

Luglio 2002<br />

Can<strong>di</strong>dato<br />

Cecconetto Ermano


Sommario<br />

La tesi si <strong>in</strong>serisce nell'ambito delle attività <strong>di</strong> sviluppo e <strong>di</strong> sperimentazione<br />

legate al sito Appunti.Net. La tesi opera nel contesto dell'automazione dei flussi<br />

produttivi legati al mondo dell'e<strong>di</strong>toria on-l<strong>in</strong>e. In tali contesti, il "prodotto" è<br />

rappresentato da un documento <strong>in</strong> forma elettronica, ed è necessario riprodurre,<br />

me<strong>di</strong>ante un flusso puramente elettronico, tutte le fasi <strong>di</strong> lavorazione <strong>di</strong> un<br />

prodotto tra<strong>di</strong>zionalmente cartaceo quale potrebbe essere una rivista, un<br />

documento, un libro. In particolare si esam<strong>in</strong>erà un flusso produttivo basato sullo<br />

standard <strong>PDF</strong> (TM Adobe), grazie all'enorme <strong>di</strong>ffusione <strong>di</strong> tale <strong>formato</strong> e della<br />

sua naturale can<strong>di</strong>datura quale rappresentazione naturale degli e-book. Per la<br />

progettazione e l’implementazione delle varie fasi produttive, a partire da un<br />

documento “grezzo” f<strong>in</strong>o al documento “f<strong>in</strong>ito”, si è scelto <strong>di</strong> lavorare con la<br />

libreria <strong>di</strong> <strong>manipolazione</strong> iText, che offre, grazie alla sua sufficiente completezza<br />

e versatilità, la funzionalità necessaria per svolgere questa implementazione. Tale<br />

libreria si basa sul l<strong>in</strong>guaggio <strong>di</strong> programmazione Java.<br />

Il flusso <strong>di</strong> lavorazione è il più possibile automatizzato, att<strong>in</strong>gendo ai parametri<br />

specifici <strong>in</strong> alcune fasi <strong>di</strong> lavorazione da un database contenente le <strong>in</strong>formazioni<br />

specifiche su ciascun documento, mentre per la creazione del documento<br />

<strong>in</strong>terme<strong>di</strong>o si è preferito lasciare alcuni parametri <strong>di</strong> co<strong>di</strong>ficazione fissi all’<strong>in</strong>terno<br />

della procedura.<br />

La tesi è descritta <strong>in</strong> 5 capitoli


Il primo capitolo contiene l’<strong>in</strong>troduzione e descrive gli obiettivi e le soluzioni<br />

adottate all’<strong>in</strong>terno del lavoro.<br />

Il secondo capitolo descrive i concetti generali del commercio elettronico ed i<br />

problemi ad esso relativi, nonché le tecnologie riguardanti l’e<strong>di</strong>toria elettronica.<br />

Il terzo capitolo riporta le caratteristiche del <strong>formato</strong> <strong>PDF</strong>, del l<strong>in</strong>guaggio Java e<br />

della libreria iText .<br />

Il quarto capitolo contiene la struttura e l’architettura dell’applicazione Java,<br />

nonché i problemi e le soluzioni adottate nello sviluppo del progetto.<br />

Il qu<strong>in</strong>to elabora le conclusioni e i possibili sviluppi.


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

INDICE<br />

Capitolo 1 Introduzione _________________________________________ 3<br />

1.1 Obiettivi ________________________________________________ 4<br />

1.2 Risultati ________________________________________________ 5<br />

Capitolo 2 Commercio ed e<strong>di</strong>toria elettronica________________________ 7<br />

2.1 E-Generation ____________________________________________ 7<br />

2.1.1 E-Bus<strong>in</strong>ess ______________________________________________ 7<br />

2.1.2 Def<strong>in</strong>izione e tipi <strong>di</strong> E-Commerce ____________________________ 8<br />

2.1.3 Obiettivi e vantaggi dell’ E-Commerce _______________________ 10<br />

2.2 Problemi relativi al commercio elettronico___________________ 11<br />

2.2.1 Software e sicurezza______________________________________ 11<br />

2.2.2 Spe<strong>di</strong>zioni ed affidabilità __________________________________ 11<br />

2.3 E<strong>di</strong>toria Elettronica______________________________________ 12<br />

2.3.1 Cenni storici: tecnologie e<strong>di</strong>toriali ___________________________ 13<br />

2.3.2 Il <strong>formato</strong> <strong>di</strong>gitale e le nuove tecnologie ______________________ 14<br />

2.3.3 Passaggio da carta a <strong>di</strong>gitale________________________________ 16<br />

2.3.4 Copyright ______________________________________________ 17<br />

2.4 E-Book ________________________________________________ 18<br />

2.4.1 EBX __________________________________________________ 18<br />

2.4.2 E-Book reader devices ____________________________________ 20<br />

2.4.3 Reader Software _________________________________________ 21<br />

2.4.4 Il futuro degli e-Book nella carta riscrivibile? __________________ 22<br />

Capitolo 3 - <strong>PDF</strong>TM , Java e iText _________________________________ 24<br />

3.1 <strong>PDF</strong> _________________________________________________ 24<br />

3.1.1 Caratteristiche del <strong>formato</strong> <strong>PDF</strong>_____________________________ 24<br />

3.1.2 <strong>PDF</strong> e l<strong>in</strong>guaggio PostScript _______________________________ 28<br />

Figura 1.1 Sud<strong>di</strong>visioni <strong>di</strong> un <strong>PDF</strong> _____________________________ 28<br />

3.1.3 Adobe Acrobat TM Reader __________________________________ 29<br />

3.1.4 Adobe SDK ____________________________________________ 30<br />

Figura 1.2 Acrobat Layer ____________________________________ 31<br />

Figura 1.3 Document Object Interrelationship ____________________ 32<br />

Figura 1.4 File I/O Object Interrelationships _____________________ 33<br />

3.2 Java ___________________________________________________ 33<br />

3.2.1 Introduzione al l<strong>in</strong>guaggio Java _____________________________ 33<br />

3.2.2 Programmare <strong>in</strong> Java _____________________________________ 35<br />

Figura 1.5 Concetto <strong>di</strong> Classe _________________________________ 36<br />

Figura 1.6 Def<strong>in</strong>izione <strong>di</strong> una classe ____________________________ 37<br />

Figura 1.7 Creazione <strong>di</strong> un oggetto _____________________________ 37<br />

3.3 iText __________________________________________________ 37<br />

Figura 1.8 Logo della libreria iText ____________________________ 37<br />

Pag<strong>in</strong>a 1


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

3.3.1 Utilizzo <strong>di</strong> iText _________________________________________ 38<br />

Capitolo 4 Problemi e soluzioni nella realizzazione del progetto ________ 40<br />

4.1 Appunti.net ____________________________________________ 40<br />

4.2 Def<strong>in</strong>izione problemi nella creazione dei documenti ___________ 41<br />

Figura 1.9 Schema creazione documenti_________________________ 41<br />

Figura 1.10 Documento grezzo ________________________________ 42<br />

4.2.1 Creazione Master ________________________________________ 42<br />

Figura 1.11 Schema creazione Master___________________________ 43<br />

4.2.2 Creazione Copert<strong>in</strong>a ______________________________________ 43<br />

4.2.3 Creazione Ven<strong>di</strong>bile ______________________________________ 44<br />

Figura 1.12 Schema creazione Ven<strong>di</strong>bile ________________________ 44<br />

4.2.4 Creazione Omaggio ______________________________________ 44<br />

Figura 1.13 Schema creazione Omaggio_________________________ 45<br />

4.2.5 Creazione Anteprima _____________________________________ 45<br />

Figura 1.14 Schema creazione Anteprima________________________ 45<br />

4.3 Soluzioni adottate: classe AppuntiNet_______________________ 46<br />

4.3.1 Copert<strong>in</strong>a e Copyright ____________________________________ 46<br />

Figura 1.15 Copert<strong>in</strong>a da <strong>in</strong>serire ______________________________ 47<br />

4.3.2 Metodo Crea Master______________________________________ 47<br />

Figura 1.16 Copert<strong>in</strong>a documento Master________________________ 48<br />

Figura 1.17 Intestazione e piè pag<strong>in</strong>a documento Master ____________ 49<br />

4.3.3 Metodo CreaVen<strong>di</strong>bile ____________________________________ 49<br />

Figura 1.18 Documento Ven<strong>di</strong>bile _____________________________ 50<br />

4.3.4 Metodo CreaAnteprima ___________________________________ 50<br />

Figura 1.19 Documento Anteprima_____________________________ 52<br />

4.3.5 Metodo CreaOmaggio ____________________________________ 52<br />

Figura 1.20 Documento Omaggio ______________________________ 53<br />

Capitolo 5 Conclusioni_________________________________________ 54<br />

Pag<strong>in</strong>a 2


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Capitolo 1 Introduzione<br />

Lo sviluppo tecnologico degli ultimi anni ha permesso alle persone <strong>di</strong> avere a<br />

<strong>di</strong>sposizione una f<strong>in</strong>estra sul mondo, <strong>di</strong>rettamente da casa propria, grazie alla rete<br />

Internet. Inizialmente pensato per permettere la comunicazione e lo scambio <strong>di</strong><br />

dati <strong>in</strong> qualunque luogo me<strong>di</strong>ante una l<strong>in</strong>ea telefonica, Internet, grazie alla sua<br />

rapida popolarità e <strong>di</strong>ffusione, si è sviluppato anche su altri supporti sfruttando<br />

connessioni satellitari e canali ad alta velocità, quali le fibre ottiche, oggi <strong>in</strong><br />

commercio, permettendo il collegamento <strong>di</strong> utenti da ogni parte del mondo.<br />

Grazie alla sua natura, programmi e dati sono facilmente <strong>di</strong>stribuibili e si può<br />

sfruttare qualunque risorsa elettronica permettendo lo sviluppo <strong>di</strong> un commercio<br />

<strong>in</strong> rete, legale e illegale, <strong>di</strong> tali risorse. Le aziende si affacciano ora con maggior<br />

impegno, anche se con ancora qualche timore, negli spazi e-bus<strong>in</strong>ness offerti dalla<br />

rete, aprendo al pubblico propri spazi e negozi virtuali dove offrono i loro servizi<br />

permettendo spesso l’acquisto, da parte dell’utente, <strong>di</strong> svariati prodotti. Con lo<br />

sviluppo <strong>di</strong> tale commercio è sorto un problema <strong>di</strong> tempi <strong>di</strong> attesa dei prodotti,<br />

ovviamente legato al fatto che l’acquisto avviene imme<strong>di</strong>atamente, ma l’arrivo<br />

della merce or<strong>di</strong>nata è soggetto ai tempi legati alla spe<strong>di</strong>zione, utilizzando mezzi<br />

terrestri, oltre ad un aumento del costo congiunto appunto a tale spe<strong>di</strong>zione. Se<br />

alla cosa non è possibile ovviare nel caso l’utente acquisti beni prettamente<br />

materiali, come ad esempio un componente hardware per il proprio personal<br />

computer, è sorta la domanda se era possibile trasformare altri oggetti fisici <strong>in</strong> dati<br />

e <strong>in</strong>trodurli nella rete, rendendo così il commercio più veloce e flessibile. É il caso<br />

dell’acquisto <strong>di</strong> un CD au<strong>di</strong>o: l’acquisto dell’oggetto fisico da un sito web<br />

comporterebbe tempi <strong>di</strong> spe<strong>di</strong>zione <strong>di</strong> alcuni giorni e aumento del costo, dovuto<br />

<strong>in</strong>fatti alle spese <strong>di</strong> trasporto, mentre la tecnologia oggi permetterebbe la<br />

<strong>di</strong>stribuzione della musica dal negozio all’utente <strong>in</strong> poco tempo, grazie ai nuovi<br />

meto<strong>di</strong> <strong>di</strong> compressione sempre <strong>in</strong> evoluzione.<br />

In questo contesto si <strong>in</strong>serisce anche lo sviluppo del commercio elettronico <strong>di</strong><br />

libri; per loro natura sono strettamente materiali, ma grazie ai numerosi formati<br />

elettronici <strong>di</strong> testo presenti nella rete, sviluppano la compraven<strong>di</strong>ta <strong>in</strong> un sistema<br />

Pag<strong>in</strong>a 3


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

più veloce e pratico, annullando praticamente i costi <strong>di</strong> spe<strong>di</strong>zione. All’<strong>in</strong>terno <strong>di</strong><br />

questo ambito si sviluppa la tesi, sfruttando il l<strong>in</strong>guaggio <strong>di</strong> programmazione Java;<br />

tale l<strong>in</strong>guaggio è ampiamente usato <strong>in</strong> Internet per la sua natura universale, non<br />

legato ossia alla piattaforma operativa su cui lavora, che gli permette un utilizzo<br />

maggiore. Implementando con apposite librerie il pacchetto base <strong>di</strong> Java, è<br />

possibile consentire la <strong>manipolazione</strong>, <strong>in</strong> tempo reale, <strong>di</strong> <strong>file</strong> contenenti testi<br />

elettronici.<br />

1.1 Obiettivi<br />

Nell’ambito dell’utilizzo sempre maggiore della rete da parte dell’utente<br />

universitario e non, spesso come base <strong>di</strong> ricerca per materiale <strong>in</strong>terente ai propri<br />

stu<strong>di</strong>, si è portati all’ausilio <strong>di</strong> Internet come fonte per la <strong>di</strong>ffusione e reperibilità<br />

<strong>di</strong> materiale <strong>di</strong>dattico; si è pensato, qu<strong>in</strong><strong>di</strong>, <strong>di</strong> sviluppare il progetto <strong>di</strong> raccolta e<br />

<strong>di</strong>stribuzione <strong>di</strong> appunti universitari. È necessario, da un lato, garantire la facilità<br />

con cui reperire le <strong>in</strong>formazioni riguardanti l’argomento desiderato e le loro<br />

consultazioni, mentre occorre altresì tutelare l’autore degli scritti da eventuali<br />

violazioni dei <strong>di</strong>ritti <strong>di</strong> copyright. Inoltre, solitamente, il testo <strong>di</strong>gitale che viene<br />

<strong>in</strong>viato per la pubblicazione on-l<strong>in</strong>e dagli autori è allo stato grezzo, ossia non<br />

contiene tutte le <strong>in</strong>formazioni tali da poter essere immesso nella rete al<br />

ricevimento dello stesso; occorrerà, qu<strong>in</strong><strong>di</strong> mo<strong>di</strong>ficarlo, aggiungendo, ad esempio,<br />

l’<strong>in</strong>testazione o il piè pag<strong>in</strong>a, al f<strong>in</strong>e <strong>di</strong> renderlo un oggetto completo. Tale<br />

procedura non dovrà essere complicata e lunga, <strong>in</strong> modo da pesare troppo sul<br />

costo dell’elaborato; per sveltire ulteriormente questa elaborazione del testo da<br />

<strong>in</strong>viare, si è deciso <strong>di</strong> privilegiare l’aspetto <strong>di</strong> automazione del progetto per<br />

alleggerire il lavoro umano nella catena <strong>di</strong> produzione dei prodotti f<strong>in</strong>ali,<br />

garantendo la personalizzabilità dei risultati <strong>in</strong> base alle richieste, me<strong>di</strong>ante<br />

l’utilizzo <strong>di</strong> apposite librerie che creano la copia <strong>in</strong> tempo reale del prodotto. I<br />

passi da compiere <strong>in</strong> questo proce<strong>di</strong>mento vanno dall’elaborazione della copia<br />

grezza all’impag<strong>in</strong>azione del documento f<strong>in</strong>o alla protezione dello stesso da<br />

accessi <strong>in</strong>desiderati. La copia grezza dovrà essere impag<strong>in</strong>ata secondo certe regole<br />

per rendere il prodotto simile ad un libro e facilmente consultabile creando così un<br />

Pag<strong>in</strong>a 4


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

documento master che rappresenta l’essenza <strong>di</strong>gitale della copia cartacea. Per<br />

sopperire alle esigenze <strong>di</strong> copyright si elaborerà ulteriormente il documento prima<br />

della spe<strong>di</strong>zione al s<strong>in</strong>golo studente <strong>in</strong>teressato; egli potrà visionare la buona<br />

fattura del prodotto, prima del pagamento, sia <strong>in</strong> term<strong>in</strong>i <strong>di</strong> e<strong>di</strong>toria che <strong>di</strong><br />

contenuti e valutarne così l’acquisto. La realizzazione <strong>di</strong> tali passi viene resa<br />

automatica dall’<strong>in</strong>tegrazione <strong>di</strong> ambienti esistenti con applicazioni scritte ad hoc<br />

alleggerendo così le competenze <strong>di</strong> chi gestirà l’<strong>in</strong>tera struttura.<br />

1.2 Risultati<br />

La scelta della soluzione implementata è stata con<strong>di</strong>zionata dalla facilità d’uso e<br />

completezza della libreria su cui operare e dalla sua <strong>in</strong>tegrabilità con sistemi<br />

esterni appropriati. Poiché la scelta dell’e<strong>di</strong>toria elettronica fatta si basava su<br />

tecnologia <strong>PDF</strong> (Portable Document Format), <strong>formato</strong> che, oltre ad essere<br />

portabile, ha una struttura robusta che si adatta bene alle esigenze della rete, ci si è<br />

trovati <strong>di</strong> fronte a numerose librerie, create appositamente per la <strong>manipolazione</strong> e<br />

la creazione <strong>in</strong> tempo reale <strong>di</strong> documenti; ci si è qu<strong>in</strong><strong>di</strong> orientati verso la scelta <strong>di</strong><br />

un prodotto versatile e <strong>in</strong> cont<strong>in</strong>uo aggiornamento, che garantisca una migliore<br />

possibilità <strong>di</strong> sviluppo futuro; dopo una fase <strong>in</strong>iziale <strong>di</strong> analisi <strong>di</strong> queste librerie, si<br />

è pensato <strong>di</strong> sviluppare il progetto utilizzando le librerie <strong>di</strong> iText. La società che<br />

ha ideato queste librerie, fornisce agli sviluppatori la versione gratuita delle stesse,<br />

grazie alla quale si è potuto personalizzare ed ampliare le possibilità offerte dagli<br />

ambienti <strong>di</strong> sviluppo esistenti, realizzando un prodotto f<strong>in</strong>ito e specifico per il<br />

nostro scopo. Le fasi <strong>di</strong> sviluppo e mo<strong>di</strong>fica del documento grezzo comprendono<br />

il passaggio al documento master <strong>in</strong> cui viene aggiunta una copert<strong>in</strong>a, recante il<br />

titolo e gli autori, nonché il logo e l’<strong>in</strong><strong>di</strong>rizzo web del sito <strong>in</strong>formatico; viene<br />

altresì aggiunto il co<strong>di</strong>ce identificativo del documento e le <strong>in</strong>formazioni sul<br />

copyright. Su ogni pag<strong>in</strong>a è aggiunta un’<strong>in</strong>testazione, recante il titolo,<br />

eventualmente tronco, e il sito, oltre ad un piè <strong>di</strong> pag<strong>in</strong>a, <strong>in</strong> cui sono riportati il<br />

progressivo <strong>di</strong> pag<strong>in</strong>a e il nome dell’autore, oltre al co<strong>di</strong>ce del documento. Altre<br />

funzioni sono relative alla creazione <strong>di</strong> documenti ridotti <strong>in</strong> numero <strong>di</strong> pag<strong>in</strong>e per<br />

Pag<strong>in</strong>a 5


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

permettere la visione dell’elaborato a chi è <strong>in</strong>teressato, oppure <strong>di</strong> copie<br />

<strong>di</strong>stribuibili a scopo pubblicitario.<br />

A livello <strong>di</strong> sicurezza, si è voluto proteggere il prodotto <strong>di</strong>stribuibile <strong>in</strong> modo da<br />

evitare la mo<strong>di</strong>fica sia accidentale che maliziosa dei contenuti; per questo motivo<br />

si prevede anche la possibilità <strong>di</strong> proteggere <strong>in</strong> modo <strong>di</strong>versificato i vari<br />

documenti.<br />

I dati relativi alla creazione del documento master possono essere o forniti da un<br />

operatore, o reperiti attraverso un database, mentre le altre procedure vengo<br />

eseguite <strong>in</strong> automatico, recuperando le <strong>in</strong>formazioni necessarie dal database,<br />

contenente autori, titolo, co<strong>di</strong>ce del prodotto, ecc.<br />

Ciò al f<strong>in</strong>e <strong>di</strong> rendere più automatica e veloce possibile la procedura che consente<br />

la creazione e ven<strong>di</strong>ta dei documenti <strong>in</strong> rete, poichè <strong>in</strong> questo caso il costo<br />

maggiore per l’utente è appunto il tempo <strong>di</strong> attesa che passa dall’acquisto al<br />

ricevimento del <strong>file</strong> voluto.<br />

Pag<strong>in</strong>a 6


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Capitolo 2 Commercio ed e<strong>di</strong>toria<br />

elettronica<br />

Con l’appellativo “Commercio Elettronico” (e-Commerce) si identifica<br />

comunemente la possibilità <strong>di</strong> acquistare beni, <strong>di</strong> <strong>di</strong>versa natura, attraverso<br />

Internet. Tuttavia l’e-Commerce è un’attività articolata e complessa con obiettivi<br />

precisi. Esso non è qu<strong>in</strong><strong>di</strong> propriamente un servizio <strong>di</strong> Internet o <strong>di</strong> una qualsiasi<br />

rete telematica, ma nel suo <strong>in</strong>sieme è un’attività umana "tradotta" <strong>in</strong> un l<strong>in</strong>guaggio<br />

<strong>di</strong>fferente da quello "materiale", ma i vantaggi che ne emergono possono essere<br />

enormi e sono <strong>in</strong>tr<strong>in</strong>sechi nel nuovo sistema. Le possibilità offerte sono talmente<br />

flessibili da aver permesso lo sviluppo che oggi ve<strong>di</strong>amo sulla rete ed hanno anche<br />

trasc<strong>in</strong>ato l’economia verso nuove soluzioni.<br />

2.1 E-Generation<br />

L’esplosione <strong>di</strong> questo fenomeno segna simbolicamente una tappa importante<br />

nell’evoluzione della società umana: il raggiungimento <strong>di</strong> un grado <strong>di</strong> sviluppo<br />

tecnologico tale da poter accogliere e gestire <strong>in</strong> un sistema virtuale un sistema<br />

reale. In questa trasposizione, con perfetta analogia, si hanno soggetti, regole,<br />

or<strong>di</strong>namenti, servizi, strutture, prodotti e relazioni.<br />

2.1.1 E-Bus<strong>in</strong>ess<br />

L’e-Bus<strong>in</strong>ess esiste concettualmente da qualche anno e racchiude al suo <strong>in</strong>terno<br />

tutte quelle attività come il commercio elettronico che possono essere svolte<br />

me<strong>di</strong>ante <strong>in</strong>frastrutture <strong>in</strong>formatiche.<br />

L’e-Commerce si amplia verso i servizi f<strong>in</strong>anziari nel virtual bank<strong>in</strong>g e può<br />

estendersi verso tutta la catena del valore che contrad<strong>di</strong>st<strong>in</strong>gue la nascita, la<br />

produzione, la <strong>di</strong>stribuzione e ven<strong>di</strong>ta <strong>di</strong> un bene.<br />

Ancora, appartenenti all’e-Bus<strong>in</strong>ess possiamo collocare:<br />

Pag<strong>in</strong>a 7


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

l’<strong>in</strong>formazione<br />

l’<strong>in</strong>trattenimento<br />

la <strong>di</strong>dattica<br />

tre settori molto promettenti <strong>in</strong> quanto veicolano beni immateriali particolarmente<br />

adatti alla virtualizzazione.<br />

2.1.2 Def<strong>in</strong>izione e tipi <strong>di</strong> E-Commerce<br />

Il commercio elettronico è costituito da operazioni che co<strong>in</strong>volgono imprese e<br />

<strong>in</strong><strong>di</strong>vidui, mirate allo scambio <strong>di</strong> beni materiali o immateriali a cui è assegnato un<br />

valore, attraverso un’<strong>in</strong>frastruttura <strong>in</strong>formatica o una rete <strong>di</strong> telecomunicazione.<br />

In generale il commercio elettronico si estr<strong>in</strong>seca attraverso lo scambio <strong>di</strong><br />

<strong>in</strong>formazione che può essere co<strong>di</strong>ficata <strong>in</strong> qualsiasi modo ed <strong>in</strong>serita <strong>in</strong> una<br />

procedura <strong>di</strong> acquisto, che prevede una transazione economica; le parti che<br />

partecipano ad un’operazione <strong>di</strong> commercio elettronico def<strong>in</strong>iscono la tipologia <strong>di</strong><br />

quest’ultimo.<br />

Non vi è un’unica forma <strong>di</strong> Commercio Elettronico, perché gli ambienti nei quali<br />

si svolge l’attività commerciale e i soggetti co<strong>in</strong>volti possono avere natura<br />

<strong>di</strong>versa, ad esempio si può rivolgere al cliente f<strong>in</strong>ale, all’agente, alla filiale<br />

<strong>in</strong>ternazionale o al fornitore. È evidente che le esigenze da sod<strong>di</strong>sfare <strong>di</strong>pendono<br />

<strong>in</strong> modo significativo dalle <strong>di</strong>namiche commerciali e dalla tipologia dei soggetti<br />

che si vuole co<strong>in</strong>volgere, e ciò f<strong>in</strong>isce anche per <strong>in</strong>fluenzare la scelta degli<br />

strumenti tecnologici che un’azienda adotta per fare commercio on-l<strong>in</strong>e.<br />

Questa precisazione ci porta a identificare quattro tipi fondamentali <strong>di</strong> Commercio<br />

Elettronico:<br />

• Bus<strong>in</strong>ess to Bus<strong>in</strong>ess.<br />

Nella categoria B-to-B (Bus<strong>in</strong>ess to Bus<strong>in</strong>ess) rientrano tutte quelle<br />

transazioni nelle quali i soggetti co<strong>in</strong>volti siano due o più aziende.<br />

Tipicamente un’impresa potrebbe utilizzare la rete per <strong>in</strong>oltrare or<strong>di</strong>ni ai<br />

propri fornitori, acquisire documentazione sui prodotti, ricevere o<br />

Pag<strong>in</strong>a 8


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

effettuare pagamenti. È il tipo <strong>di</strong> commercio che esite da più tempo, come<br />

precedentemente citato.<br />

• Bus<strong>in</strong>ess to Consumer.<br />

La categoria B-to-C (Bus<strong>in</strong>ess to Consumer) comprende, <strong>in</strong>vece, i processi<br />

<strong>di</strong> ven<strong>di</strong>ta al dettaglio. I soggetti co<strong>in</strong>volti sono l’azienda, che offre i<br />

propri prodotti, ed il consumatore f<strong>in</strong>ale; l’esplosione <strong>di</strong> questa tipologia <strong>di</strong><br />

Commercio Elettronico ha co<strong>in</strong>ciso con la capillare <strong>di</strong>ffusione <strong>di</strong> Internet<br />

negli uffici, nelle case, nelle scuole e se da un lato questo nuovo me<strong>di</strong>a ha<br />

permesso ad aziende <strong>di</strong> tutto il mondo, <strong>di</strong> entrare <strong>in</strong> contatto <strong>di</strong>retto con<br />

consumatori altrimenti <strong>di</strong>fficilmente raggiungibili, dall’altro, per i<br />

consumatori stessi, si è aperta la possibilità <strong>di</strong> avere accesso ad una offerta<br />

straor<strong>di</strong>nariamente ampia <strong>di</strong> prodotti, stando comodamente seduti davanti<br />

al proprio computer.<br />

• Consumer to Consumer.<br />

Questa è una forma più recente <strong>di</strong> Commercio Elettronico, salita alla<br />

ribalta dell’attenzione e della popolarità grazie al forte sviluppo sulla Rete<br />

dei siti <strong>di</strong> aste on-l<strong>in</strong>e. Su questi siti gli utenti della Rete possono<br />

scambiare tra loro prodotti secondo il modello dell’asta.<br />

• Intra-Bus<strong>in</strong>ess.<br />

È questo il caso che co<strong>in</strong>volge un’azienda con se<strong>di</strong> <strong>di</strong>stribuite sul territorio<br />

o un <strong>in</strong>sieme <strong>di</strong> aziende appartenenti allo stesso gruppo. In tali situazioni le<br />

esigenze <strong>di</strong> scambio <strong>di</strong> beni e servizi all’<strong>in</strong>terno delle unità della struttura<br />

possono essere sod<strong>di</strong>sfatte attraverso la Rete ed essere accompagnate da un<br />

ren<strong>di</strong>conto economico. Le pr<strong>in</strong>cipali caratteristiche del commercio <strong>in</strong>traaziendale<br />

sono molto simili a quelle del B-to-B con la restrizione che <strong>di</strong><br />

norma il gruppo <strong>di</strong> soggetti co<strong>in</strong>volti è rigorosamente chiuso, la<br />

classificazione dei prodotti è già data e la transazione economica passa <strong>in</strong><br />

secondo piano (può essere eseguita a <strong>di</strong>stanza <strong>di</strong> tempo, a consuntivo).<br />

Pag<strong>in</strong>a 9


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

2.1.3 Obiettivi e vantaggi dell’ E-Commerce<br />

L’obiettivo pr<strong>in</strong>cipale dell’e-Commerce è quello <strong>di</strong> sv<strong>in</strong>colare totalmente il<br />

mercato da fattori temporali e spaziali con le relative conseguenze, ossia il<br />

compratore non è più v<strong>in</strong>colato ad orari predef<strong>in</strong>iti e non si deve più preoccupare<br />

<strong>di</strong> raggiungere fisicamente il luogo dove avviene la ven<strong>di</strong>ta: può accedere <strong>in</strong><br />

qualsiasi momento da casa propria o dall’ufficio teoricamente a qualsiasi bene.<br />

Il primo risultato è che il problema relativo alla go<strong>di</strong>bilità <strong>di</strong> un bene <strong>in</strong> relazione<br />

alla <strong>di</strong>sponibilità sul territorio si risolve, poiché Internet è un mondo senza conf<strong>in</strong>i<br />

la cui metrica non ammette la <strong>di</strong>mensione spaziale.<br />

L’acquirente che compra attraverso Internet può accedere ad <strong>in</strong>siemi <strong>di</strong><br />

<strong>in</strong>formazioni che, a volte, sono <strong>di</strong>fficilmente reperibili nel caso <strong>di</strong> commercio<br />

tra<strong>di</strong>zionale e può avvalersi <strong>di</strong> servizi personalizzati, più confacenti alle proprie<br />

aspettative, che si riflettono anche nell’assistenza pre e post-ven<strong>di</strong>ta. Inoltre<br />

l’acquirente, data l’ampia offerta, ha la possibilità <strong>di</strong> monitorare e selezionare i<br />

prezzi più convenienti <strong>in</strong> assoluto. A questi vantaggi per il compratore,<br />

specularmente, emergono vantaggi anche per il produttore/ven<strong>di</strong>tore <strong>di</strong> beni;<br />

<strong>in</strong>fatti possiamo identificare due benefici: il primo co<strong>in</strong>volge la razionalizzazione<br />

dei processi tra<strong>di</strong>zionali, mentre il secondo <strong>in</strong>troduce nuovi elementi <strong>di</strong><br />

competizione.<br />

La maggiore conoscenza delle esigenze dei clienti, <strong>di</strong>sponibile dai meccanismi<br />

dell’e-Commerce, fa sì che l’impresa possa personalizzare sempre <strong>di</strong> più l’offerta<br />

e la padronanza <strong>di</strong> processi produttivi <strong>di</strong>venti più agile e flessibile.<br />

Tutto ciò produce un aumento <strong>di</strong> competitività ed una teorica riduzione dei prezzi<br />

all’utente f<strong>in</strong>ale. Inf<strong>in</strong>e, ma forse elemento più importante, l’e-Commerce riduce<br />

drasticamente il livello <strong>di</strong> <strong>in</strong>gresso nei vari mercati ri<strong>di</strong>mensionando l’aspetto<br />

f<strong>in</strong>anziario a favore <strong>di</strong> quello <strong>di</strong> market<strong>in</strong>g e <strong>di</strong> prodotto. In altre parole esso<br />

attenua drasticamente il livello <strong>di</strong> rischio nel raggiungere e operare <strong>in</strong> nuovi<br />

mercati.<br />

Pag<strong>in</strong>a 10


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

2.2 Problemi relativi al commercio elettronico<br />

Il flusso <strong>di</strong> dati che è andato via via aumentando <strong>in</strong> Rete, anche grazie al<br />

commercio elettronico, ha causato reali problemi sulla gestione <strong>di</strong> tale attività, sia<br />

<strong>in</strong> term<strong>in</strong>i <strong>di</strong> sicurezza per l’utente, che <strong>di</strong> affidabilità dei sistemi <strong>in</strong>formatici da<br />

parte delle aziende che vi operano. Non si vuole certo scrivere un elogio a tale<br />

sistema <strong>di</strong> scambi, bensì presentarne obiettivamente vantaggi e svantaggi ed<br />

analizzare le problematiche.<br />

2.2.1 Software e sicurezza<br />

Uno dei problemi più rilevanti relativi a questo riguarda il software da utilizzare e<br />

la sicurezza che esso garantisce. Tenendo conto che sulla rete e sul server del sito<br />

<strong>in</strong> esame sono presenti <strong>in</strong>formazioni riguardanti i clienti, bisogna garantire<br />

riservatezza ed impossibilità <strong>di</strong> accessi non desiderati. Si richiede qu<strong>in</strong><strong>di</strong> software<br />

<strong>di</strong> gestione delle transazioni, sistemi operativi ed applicazioni fault tolerant<br />

<strong>in</strong>attaccabili da pirati <strong>in</strong>formatici. Proprio per la <strong>di</strong>fficile risoluzione <strong>di</strong> questi<br />

problemi ancora non ci si fida completamente ad utilizzare la carta <strong>di</strong> cre<strong>di</strong>to<br />

come mezzo <strong>di</strong> pagamento attraverso la rete; ciò è dovuto anche alle <strong>in</strong>trusioni <strong>di</strong><br />

alcuni hacker che tendono a violare siti della Rete, a volte per puro <strong>di</strong>vertimento,<br />

altre come obiettivo <strong>di</strong>struttivo, <strong>di</strong>mostrando quanto sia <strong>di</strong>fficile garantire la totale<br />

immunità del sistema. Le soluzioni adottate sono molteplici e spaziano dal<br />

semplice pagamento al corriere, utilizzabile <strong>in</strong> caso <strong>di</strong> spe<strong>di</strong>zione fisica <strong>di</strong><br />

materiale, all’utilizzo <strong>di</strong> tessere prepagate che limitano i danni <strong>in</strong> caso <strong>di</strong><br />

carpimento del co<strong>di</strong>ce <strong>di</strong> utilizzo, f<strong>in</strong>o all’uso <strong>di</strong> transazioni sicure con crittografia<br />

e firma <strong>di</strong>gitale che si appoggiano <strong>di</strong>rettamente alla banca del cliente.<br />

2.2.2 Spe<strong>di</strong>zioni ed affidabilità<br />

Un altro punto critico relativo al suddetto <strong>di</strong>scorso riguarda le spe<strong>di</strong>zioni fisiche <strong>di</strong><br />

beni materiali acquistati <strong>in</strong> rete e la velocità <strong>di</strong> ricevimento; considerata la<br />

lentezza delle spe<strong>di</strong>zioni terrestri, molte volte si è propensi a consultare la Rete<br />

Pag<strong>in</strong>a 11


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

per avere nozioni sul prezzo, oppure <strong>in</strong>formazioni tecniche, e verificare la<br />

<strong>di</strong>sponibilità nel proprio territorio dell’oggetto, piuttosto che aspettare la<br />

tempistica delle spe<strong>di</strong>zioni or<strong>di</strong>narie; altrimenti, per ottenere il bene <strong>in</strong> tempi<br />

brevi, occorre aggiungere al costo base, spese ulteriori per mezzi più veloci,<br />

rendendo poco competitivo il prezzo. Questi deterrenti non si presentano <strong>in</strong>vece<br />

nel commercio <strong>di</strong> beni <strong>in</strong>teramente <strong>di</strong>gitali, come programmi, musica e<br />

documentazione, che possono venire spe<strong>di</strong>ti grazie ai servizi Internet.<br />

Un punto chiave per sviluppare questo commercio è garantire affidabilità; a causa<br />

della vastità ed eterogeneità della rete, potrebbero sorgere, come già si ricorda,<br />

negozi virtuali fantasma de<strong>di</strong>ti solo a rubare <strong>in</strong>formazioni personali dei clienti e<br />

numeri vali<strong>di</strong> <strong>di</strong> carte <strong>di</strong> cre<strong>di</strong>to. Chiaramente il requisito fondamentale <strong>di</strong> un<br />

negozio virtuale è guadagnarsi e mantenere la fiducia del cliente.<br />

La possibilità <strong>di</strong> muoversi su mercati globali e qu<strong>in</strong><strong>di</strong> <strong>di</strong> <strong>di</strong>sporre <strong>di</strong> un gran<br />

numero <strong>di</strong> prodotti equivalenti tra cui scegliere, magari irreperibili nei negozi a<br />

causa <strong>di</strong> fattori geografici o economici avversi, è il grande vantaggio del<br />

commercio elettronico; esso però deve avere requisiti <strong>di</strong> sicurezza ed affidabilità,<br />

superiori ad un esercizio <strong>di</strong> vecchia concezione, molto <strong>di</strong>fficili da ottenere, a causa<br />

dell’impersonalità del contatto col pubblico.<br />

2.3 E<strong>di</strong>toria Elettronica<br />

Uno sguardo attento si deve volgere allo sviluppo dell’e<strong>di</strong>toria elettronica, poiché<br />

grazie alla sua facile trasformazione dal supporto cartaceo tra<strong>di</strong>zionale, al mezzo<br />

elettronico, ne fa uno dei migliori can<strong>di</strong>dati all’e-Commerce. Mezzi <strong>di</strong><br />

<strong>in</strong>formazione tramite stampa e supporti elettronici, coesistono da svariati anni;<br />

dallo stu<strong>di</strong>o sull'andamento del mercato non sembra ci siano segnali sostanziali <strong>di</strong><br />

riduzione per la stampa, mentre la forbice dei ritmi <strong>di</strong> crescita dei due settori si sta<br />

allargando sempre più. Il <strong>formato</strong> elettronico, però, non sembra a breve scadenza<br />

poter <strong>in</strong>taccare il ruolo primario <strong>di</strong> quello stampato, a causa <strong>di</strong> vantaggi <strong>in</strong>tr<strong>in</strong>seci<br />

quali como<strong>di</strong>tà, portabilità, familiarità. A fronte <strong>di</strong> questi punti <strong>di</strong> forza l'e<strong>di</strong>toria<br />

elettronica si propone con altrettante peculiarità <strong>in</strong>teressanti e perlopiù alternative<br />

sull'uso e nei contenuti.<br />

Pag<strong>in</strong>a 12


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Grazie all'estrema semplicità <strong>di</strong> <strong>di</strong>ffusione su Internet e WWW, recentemente<br />

un'altra questione sta assumendo una consistenza che va oltre al semplice<br />

formalismo: la certificazione della qualità e/o l'identificazione della fonte <strong>di</strong><br />

<strong>in</strong>formazioni.<br />

Quest'ultimo punto con l'esplosione delle pubblicazioni su WWW sta assumendo<br />

sempre una crescente importanza; <strong>in</strong>fatti essendo ogni utente <strong>di</strong> Internet un<br />

potenziale e<strong>di</strong>tore, l'autorevolezza e l'autentificazione del fornitore <strong>di</strong><br />

<strong>in</strong>formazioni pone sempre più problemi <strong>di</strong> certificazione e <strong>di</strong> competenza.<br />

Lo scenario dell'e<strong>di</strong>toria on-l<strong>in</strong>e su Internet presenta tre possibili contesti <strong>di</strong><br />

produzione:<br />

• E<strong>di</strong>toria tra<strong>di</strong>zionale<br />

Rappresentano la maggior parte dell'e<strong>di</strong>toria elettronica, dove un<br />

precedente prodotto già esistente su supporto cartaceo tra<strong>di</strong>zionale viene<br />

riprodotto <strong>in</strong> <strong>formato</strong> <strong>di</strong>gitale.<br />

• Organizzazioni Interme<strong>di</strong>arie<br />

Sono delle società il cui scopo è quello <strong>di</strong> realizzare servizi e<strong>di</strong>toriali<br />

elettronici partendo da dati forniti da un e<strong>di</strong>tore tra<strong>di</strong>zionale. Lo scopo è<br />

quello <strong>di</strong> realizzare dei prodotti sofisticati, tramite specifiche competenze<br />

tecniche e organizzative, evitando l'onere all'e<strong>di</strong>tore tra<strong>di</strong>zionale.<br />

• E<strong>di</strong>toria multime<strong>di</strong>ale<br />

Sono i nuovi soggetti che pensano al prodotto esclusivamente <strong>in</strong> funzione<br />

del supporto utilizzato, sfruttando completamente tutte le nuove capacità.<br />

La vera <strong>di</strong>fferenza che separa questo genere <strong>di</strong> e<strong>di</strong>toria da quella cartacea è<br />

l'<strong>in</strong>gegnerizzazione dei contenuti e del flusso <strong>di</strong> produzione.<br />

2.3.1 Cenni storici: tecnologie e<strong>di</strong>toriali<br />

L'era della stampa a livello <strong>di</strong> processo <strong>in</strong>dustriale <strong>in</strong>iziò con la creazione del<br />

tedesco Johann Gutemberg dell'omonimo torchio. La novità essenziale <strong>di</strong> questo<br />

sistema consisteva nell'utilizzare caratteri mobili nella costruzione della matrice <strong>di</strong><br />

Pag<strong>in</strong>a 13


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

stampa, anziché essere costituita da un unico modulo. Solo nel 1814 la macch<strong>in</strong>a<br />

per la stampa <strong>di</strong> Koen<strong>in</strong>g apportò una prima sostanziale mo<strong>di</strong>fica utilizzando<br />

l'energia termica al posto della fatica umana. Nel 1866 la prima macch<strong>in</strong>a rotativa<br />

(dal nome Walter) entrò <strong>in</strong> funzione nella tipografia del Times <strong>di</strong> Londra. La sua<br />

novità consisteva nell'utilizzare una matrice cil<strong>in</strong>drica per la stampa, <strong>in</strong> maniera da<br />

realizzare un processo cont<strong>in</strong>uo <strong>di</strong> riproduzione con movimento rotatorio,<br />

enormemente più produttivo del precedente metodo.<br />

Nel 1886 la macch<strong>in</strong>a denom<strong>in</strong>ata “l<strong>in</strong>otypè” cambierà la maniera <strong>di</strong> comporre<br />

tipograficamente le pag<strong>in</strong>e: il proce<strong>di</strong>mento, totalmente manuale, <strong>di</strong> reperimento<br />

ed <strong>in</strong>serimento dei s<strong>in</strong>goli caratteri <strong>di</strong>venta meccanicamente automatico me<strong>di</strong>ante<br />

l'uso <strong>di</strong> una apposita tastiera.<br />

Il successivo passo è costituito dalla nascita della fotocomposizione <strong>in</strong>torno al<br />

1950. In tale processo il tipografo agisce ancora su <strong>di</strong> una apposita tastiera che<br />

però, <strong>in</strong>cide <strong>di</strong>rettamente su una particolare pellicola usando un pr<strong>in</strong>cipio chimico-<br />

fotografico saltando il proce<strong>di</strong>mento meccanico. Con ciò f<strong>in</strong>isce l'età del piombo<br />

fuso e della “lavorazione a caldo” ed <strong>in</strong>izia l'era della “lavorazione a freddo”, <strong>in</strong><br />

cui la composizione viene gestita sempre più tramite l'elaboratore elettronico.<br />

Oggi l'uso <strong>di</strong> tecnologie <strong>in</strong>formatiche è stato esteso all'<strong>in</strong>tero processo <strong>di</strong><br />

produzione del giornale; si è così ottenuto il passaggio del modello produttivo da<br />

quello tipografico a quello redazionale. Questo significa cioè <strong>in</strong>tegrare la<br />

produzione <strong>in</strong> un unico flusso, ovvero non dover scrivere i pezzi giornalistici <strong>in</strong><br />

redazione e qu<strong>in</strong><strong>di</strong> rivederli a posteriori per motivi <strong>di</strong> impag<strong>in</strong>azione <strong>in</strong> sede<br />

tipografica, ma creare il <strong>formato</strong> f<strong>in</strong>ale <strong>di</strong> impag<strong>in</strong>azione ed i relativi testi<br />

<strong>di</strong>rettamente a partire dai giornalisti <strong>in</strong> redazione, <strong>in</strong> maniera <strong>in</strong>terattiva ed<br />

autonoma, riducendo costi e tempi.<br />

2.3.2 Il <strong>formato</strong> <strong>di</strong>gitale e le nuove tecnologie<br />

La fornitura <strong>di</strong> servizi <strong>in</strong>formativi on l<strong>in</strong>e su Internet è <strong>in</strong>iziata negli Stati Uniti,<br />

con l'e<strong>di</strong>toria telematica <strong>in</strong> varie forme nelle modalità e nei contenuti.<br />

Un primo livello <strong>di</strong> <strong>di</strong>ffusione <strong>di</strong> e<strong>di</strong>toria telematica è costituito tecnicamente dalle<br />

newsletter, ovvero e-mail <strong>di</strong>ffuse perio<strong>di</strong>camente, a pagamento o meno,<br />

Pag<strong>in</strong>a 14


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

dall'e<strong>di</strong>tore ad una lista <strong>di</strong> utenti abbonati (mail<strong>in</strong>g list); spesso le mail<strong>in</strong>g list<br />

vengono affiancate da servizi Gopher. In quest’ultimo modo cambia la modalità <strong>di</strong><br />

<strong>di</strong>ffusione: non è più l'<strong>in</strong>formazione che viene effettivamente spe<strong>di</strong>ta all'utente<br />

registrato su <strong>in</strong>iziativa dell'e<strong>di</strong>tore, ma è l'utente che richiede i dati (<strong>in</strong> maniera<br />

registrata o meno) nei tempi e nei mo<strong>di</strong> che risultano a lui più congeniali.<br />

Questa modalità <strong>di</strong> <strong>di</strong>ffusione delle <strong>in</strong>formazioni su Internet tecnicamente può<br />

essere realizzata essenzialmente attraverso tre strumenti pr<strong>in</strong>cipali e cioè <strong>in</strong> or<strong>di</strong>ne<br />

<strong>di</strong> creazione cronologica con:<br />

• File Transfer Protocol<br />

• Gopher<br />

• World Wide Web (WWW)<br />

La pubblicazione tramite quest'ultimo sistema permette qu<strong>in</strong><strong>di</strong> <strong>di</strong> avere i vantaggi<br />

dell'architettura WWW quali essenzialmente la multime<strong>di</strong>alità e la possibilità <strong>di</strong><br />

<strong>in</strong>teragire, come ad esempio nelle <strong>in</strong>terrogazioni su <strong>di</strong> un archivio o, più<br />

generalmente, con qualsiasi altra funzione realizzabile dal fornitore.<br />

Secondo Philip Barker, professore dell'Interactive System <strong>Research</strong> Group<br />

dell'Università <strong>di</strong> Tesside <strong>in</strong> Inghilterra, i pr<strong>in</strong>cipali limiti che può accusare<br />

l'e<strong>di</strong>toria cartacea tra<strong>di</strong>zionale rispetto a quella elettronica sono:<br />

• la <strong>di</strong>fficoltà <strong>di</strong> riproduzione<br />

• i costi <strong>di</strong> <strong>di</strong>ffusione<br />

• l'impossibilità <strong>di</strong> con<strong>di</strong>visione <strong>di</strong> s<strong>in</strong>gole copie<br />

• la <strong>di</strong>fficoltà <strong>di</strong> aggiornamento<br />

• l'<strong>in</strong>gombro fisico<br />

• la fragilità del supporto<br />

• la mancanza <strong>di</strong> reattività sui contenuti<br />

• l'impossibilità <strong>di</strong> usare suoni ed animazioni<br />

Pag<strong>in</strong>a 15


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

• l'<strong>in</strong>capacità <strong>di</strong> monitorare <strong>di</strong>rettamente l'attività del lettore e <strong>di</strong> giu<strong>di</strong>carne<br />

il livello <strong>di</strong> comprensione<br />

• l'impossibilità d'autoconfigurarsi rispetto all'utente.<br />

A fronte <strong>di</strong> questi limiti brillano i vantaggi dell'e<strong>di</strong>toria elettronica che possono<br />

essere elencati essenzialmente <strong>in</strong>:<br />

• multime<strong>di</strong>alità<br />

• enorme durata nel tempo<br />

• abbattimento dei costi <strong>di</strong> <strong>di</strong>ffusione<br />

• tempestività <strong>di</strong> <strong>di</strong>ffusione per le <strong>in</strong>formazioni on-l<strong>in</strong>e<br />

• <strong>in</strong>terattività.<br />

Nell'ultimo importante punto possiamo r<strong>in</strong>tracciare tutte le funzionalità aggiuntive<br />

che può sviluppare l'<strong>in</strong>formatica su una base <strong>in</strong>formativa (ipertesti - iperme<strong>di</strong>a -<br />

<strong>in</strong>terrogazioni – agenti <strong>in</strong>telligenti).<br />

2.3.3 Passaggio da carta a <strong>di</strong>gitale<br />

In generale, per convertire il documento da <strong>formato</strong> cartaceo ad elettronico, si<br />

hanno due mo<strong>di</strong>: o lo si copia manualmente tramite la tastiera del pc, un lavoro<br />

lungo e noioso, oppure più agilmente si trasferisce un’immag<strong>in</strong>e che rappresenta<br />

la sorgente dei dati, tramite uno scanner ottico. Si deve considerare che<br />

quest’ultimo, pur essendo un proce<strong>di</strong>mento più breve del precedente, presenta<br />

degli <strong>in</strong>convenienti come il bilanciamento della risoluzione dell’immag<strong>in</strong>e ed il<br />

numero <strong>di</strong> livelli <strong>di</strong> grigio con la quantità <strong>di</strong> memoria utilizzata e la qualità<br />

dell'immag<strong>in</strong>e trasferita, oltre al fatto che se il testo è scritto a mano, il<br />

rilevamento dei caratteri spesso non è completo, e qu<strong>in</strong><strong>di</strong> occorre ripassare il<br />

documento per correggere eventuali errori. Se si tiene conto della risoluzione<br />

me<strong>di</strong>a desiderata e si considerano sia la lettura del testo a video sia la stampa si<br />

nota che una risoluzione <strong>di</strong> 300 dpi è sufficiente per leggere bene un documento<br />

da un monitor mentre non lo è se si desidera stamparlo; aumentando la risoluzione<br />

Pag<strong>in</strong>a 16


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

a 1200 dpi migliora notevolmente la qualità <strong>di</strong> stampa a scapito <strong>di</strong> maggiore<br />

occupazione <strong>di</strong> risorse.<br />

Scansioni <strong>di</strong> pag<strong>in</strong>e stampate possono essere sottoposte a tre o quattro filtraggi<br />

spaziali durante l’elaborazione, ma soltanto con prove ripetute si possono evitare<br />

fasti<strong>di</strong>osi pattern <strong>di</strong> Moirè, ne sono un esempio le bitmap che contengono sia<br />

immag<strong>in</strong>i che testo.<br />

Un'altra considerazione importante riguarda il <strong>formato</strong> JPEG che, pur fornendo<br />

elevate percentuali <strong>di</strong> compressione riducendo le componenti ad alta frequenza (i<br />

particolari), non dovrebbe essere utilizzato su bitmap contenenti testo e grafica<br />

poiché si rischia <strong>di</strong> rendere illeggibili le parole.<br />

Non si vuole comunque approfon<strong>di</strong>re tale argomento <strong>in</strong> quanto già ampiamente<br />

trattato da vari applicativi commerciali e qu<strong>in</strong><strong>di</strong> <strong>in</strong>utile ai f<strong>in</strong>i dell’elaborato.<br />

2.3.4 Copyright<br />

Il problema aperto per eccellenza rimane la concezione <strong>di</strong> copyright, <strong>in</strong> particolare<br />

nel campo dell'<strong>in</strong>formazione on-l<strong>in</strong>e, facilmente duplicabile e ri<strong>di</strong>stibuibile. Il<br />

maggiore ostacolo al pieno sviluppo dell'e<strong>di</strong>toria elettronica risiede nella <strong>di</strong>fficoltà<br />

<strong>di</strong> <strong>in</strong><strong>di</strong>viduare criteri <strong>di</strong> tutela della paternità <strong>in</strong>tellettuale <strong>di</strong> opere circolanti sulla<br />

rete. A <strong>di</strong>fferenza <strong>di</strong> quanto avviene con le pubblicazioni a stampa, nell'ambiente<br />

<strong>di</strong>gitale l'<strong>in</strong>formazione può essere catturata, manipolata e alterata senza che <strong>di</strong> ciò<br />

resti traccia, se non si pongono limiti.<br />

Il mondo <strong>di</strong> Internet, riguardo al copyright, è assai <strong>in</strong>certo, sfumato, ricco <strong>di</strong><br />

contrad<strong>di</strong>zioni e f<strong>in</strong>ora non si sono registrati precisi <strong>in</strong>terventi legislativi <strong>in</strong> <strong>di</strong>fesa<br />

<strong>di</strong> un patrimonio culturale così vasto e importante. Ma se è vero che "copiare"<br />

nell'era <strong>di</strong>gitale è più veloce, più economico e più facile che <strong>in</strong> passato, è altresì<br />

vero che autori ed e<strong>di</strong>tori possono esercitare un ruolo "educativo", comunicando<br />

via rete con i propri <strong>in</strong>terlocutori ed <strong>in</strong><strong>di</strong>cando quale è il possibile impiego dei<br />

materiali messi a <strong>di</strong>sposizione: si viene così a stipulare una sorta <strong>di</strong> contratto<br />

morale che permette <strong>di</strong> <strong>in</strong>centivare le prospettive dell'e<strong>di</strong>toria elettronica evitando<br />

un uso scorretto dei documenti.<br />

Pag<strong>in</strong>a 17


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

2.4 E-Book<br />

Sempre maggiormente, nel ramo dell’e<strong>di</strong>toria elettronica, prende campo l’e-Book,<br />

visto come naturale sviluppo <strong>di</strong> questo commercio, tanto che il 19 aprile 2002 ha<br />

visto la nascita della “International eBook Association”, il cui obiettivo sarà <strong>di</strong><br />

supportare la crescita del mercato dell’eBook; <strong>in</strong>fatti la Microsoft Corporation ha<br />

annunciato la nascita della IeBA, una nuova organizzazione con sede <strong>in</strong> Europa<br />

che supporterà la comunità mon<strong>di</strong>ale dell’eBook, promuovendo le crescenti<br />

opportunità e le gran<strong>di</strong> potenzialità offerte dal settore del libro elettronico. La<br />

nuova associazione <strong>in</strong>tende proseguire il lavoro pionieristico svolto dalla<br />

International eBook Award Foundation (IeBAF), che cesserà la propria attività<br />

alla f<strong>in</strong>e <strong>di</strong> aprile. La nuova organizzazione International eBook Association<br />

(IeBA) nasce con l’obiettivo <strong>di</strong> risolvere le criticità che l’e<strong>di</strong>toria elettronica si<br />

trova ad affrontare e facilitare la <strong>di</strong>ffusione del libro elettronico, promuovendo<br />

<strong>in</strong>oltre nuovi riconoscimenti <strong>in</strong>ternazionali per il settore degli eBook. Molto è<br />

anche dovuto al recente Reader realizzato dalla società promotrice, ma la<br />

Microsoft non è la sola società impegnata <strong>in</strong> tal senso, tanto che si è sentita la<br />

necessità <strong>di</strong> un protocollo <strong>di</strong> regolamentazione, sviluppatasi con la creazione<br />

dell’EBX (Electronic Book Exchange). Tale sviluppo ha permesso anche nuove<br />

nascite commerciali on-l<strong>in</strong>e, come ad esempio la EvolutionBook<br />

(www.evolutionbook.com), che dal 1999 opera nel settore degli e-Book, con lo<br />

scopo <strong>di</strong> far nascere anche <strong>in</strong> Italia <strong>in</strong>teresse da parte del pubblico verso il libro<br />

elettronico, costruendo un sito <strong>in</strong>teramente de<strong>di</strong>cato a questo mondo e<strong>di</strong>toriale,<br />

dalla commercializzazione dei semplici testi elettronici, alla descrizione dei<br />

software e hardware <strong>in</strong> commercio per la lettura <strong>di</strong> e-Book, <strong>di</strong>venendo <strong>in</strong> pochi<br />

anni una delle realtà più <strong>di</strong>maniche presenti nel settore. Tratteremo <strong>in</strong> questo<br />

paragrafo brevemente dello standard EBX e <strong>di</strong> alcuni tipi <strong>di</strong> reader.<br />

2.4.1 EBX<br />

Questo standard, è nato pr<strong>in</strong>cipalmente per fornire un supporto sicuro al<br />

commercio elettronico degli e-book. Infatti, <strong>in</strong>corpora al suo <strong>in</strong>terno delle<br />

estensioni al protocollo HTTP, che permettono <strong>di</strong> creare connessioni più sicure tra<br />

Pag<strong>in</strong>a 18


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

due server e, tra un server e un client. Non è assolutamente necessario conoscerlo<br />

per acquistare un e-book, è come <strong>di</strong>re che per navigare <strong>in</strong> <strong>in</strong>ternet bisogna<br />

conoscere <strong>in</strong> dettaglio l'HTTP, il TCP/IP ecc..<br />

Il pr<strong>in</strong>cipio su cui si basa è l'uso <strong>di</strong> una doppia coppia <strong>di</strong> chiavi, una simmetrica<br />

(ovvero la chiave <strong>di</strong> crittazione e quella <strong>di</strong> decrittazione sono identiche) e l'altra<br />

asimmetrica (le due chiavi, una <strong>di</strong> lettura e l'altra <strong>di</strong> scrittura, sono <strong>di</strong>verse e,<br />

avendone una si può risalire alla seconda solo con una serie <strong>di</strong> calcoli che,<br />

attualmente, impegnerebbero i computer più potenti del mondo per migliaia <strong>di</strong><br />

anni). Con la prima viene crittato il contenuto della pubblicazione, la seconda<br />

coppia <strong>di</strong> chiavi viene usata per le transazioni.<br />

Quest'ultime adottano il seguente metodo, il server (o il client) che deve<br />

acquistare il libro, <strong>in</strong>via la richiesta al server che è preposto alla ven<strong>di</strong>ta per quel<br />

tipo <strong>di</strong> server richiedente. Spieghiamo, un server <strong>di</strong> un <strong>di</strong>stributore farà la richiesta<br />

a quello dell'e<strong>di</strong>tore. I server delle librerie onl<strong>in</strong>e, la faranno a quello del<br />

<strong>di</strong>stributore. Inf<strong>in</strong>e, i programmi client che potremo <strong>in</strong>stallare nei nostri PC,<br />

faranno le richieste ai server delle librerie onl<strong>in</strong>e. Ogni passaggio è una<br />

transazione commerciale vera e propria. Ovvero, il <strong>di</strong>stributore acquista<br />

dall'e<strong>di</strong>tore e vende alla libreria onl<strong>in</strong>e e così via.<br />

Ogni volta che viene <strong>in</strong>viata una richiesta, il server (o client) richiedente allega la<br />

propria chiave <strong>di</strong> scrittura (pubblica , cioè tutti possono usarla per crittare<br />

documenti da <strong>in</strong>viargli), con la quale verrà crittata la chiave simmetrica per<br />

decrittare il contenuto dell'ebook. Il richiedente, dopo aver ricevuto l'e-book,<br />

decritta la password simmetrica, utilizzando la sua chiave <strong>di</strong> lettura (privata, ossia<br />

non deve essere mostrata a nessuno, pena la decadenza dei requisiti <strong>di</strong> sicurezza e<br />

qu<strong>in</strong><strong>di</strong> la possibilità <strong>di</strong> ognuno <strong>di</strong> decrittare il <strong>file</strong> senza averlo acquistato). Con la<br />

chiave simmetrica decrittata può decrittare il contenuto dell'ebook e qu<strong>in</strong><strong>di</strong><br />

leggerlo.<br />

L'iter può sembrare complesso, ma rileggendo i passi precedenti, con la dovuta<br />

calma si riesce a capire <strong>in</strong> maniera sufficientemente rapida. Un'ultima nota,<br />

riguarda il voucher (ricevuta) che viene utilizzato per stabilire, tra le altre cose, i<br />

<strong>di</strong>ritti posseduti su un e-book ("ce<strong>di</strong>bile", "prestabile", "stampabile") e lo status<br />

attuale ("posseduto", "prestato" o "preso <strong>in</strong> prestito"). Per esempio, se il mio e-<br />

Pag<strong>in</strong>a 19


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

book è "prestabile" e lo presto ad un mio amico per 10 gg., io avrò, nel mio ebook<br />

reader, una copia dell'e-book ed un voucher con status "prestato". Lui avrà,<br />

nel suo e-book reader un'altra copia dell'e-book ed un voucher con status "preso <strong>in</strong><br />

prestito". Entrambi avremo nel voucher un timeout <strong>di</strong> 10 gg., durante i quali, la<br />

copia presa <strong>in</strong> prestito sarà utilizzabile e la mia no. Allo scadere del tempo accadrà<br />

il viceversa. E chi possedeva la copia <strong>in</strong> prestito non potrà più leggerla a meno<br />

che, non venga fatto un nuovo prestito. Per effettuarlo, ogni volta si deve<br />

compiere un transazione <strong>in</strong> EBX (svolta <strong>in</strong> automatico dai software che che<br />

supportano questo standard e, <strong>in</strong> pochi secon<strong>di</strong>). Se la copia viene ceduta, <strong>in</strong>vece,<br />

verrà cancellata dal nostro ebook reader e trasferita nell'e-book del dest<strong>in</strong>atario<br />

<strong>in</strong>sieme al voucher. L'ultimo <strong>di</strong>ritto è quello <strong>di</strong> stampare. Nel voucher, quando è<br />

presente il permesso "stampabile", c'è scritto il numero <strong>di</strong> copie che si possono<br />

stampare e, se sono copie dell'<strong>in</strong>tero libro, <strong>di</strong> s<strong>in</strong>goli capitoli, paragrafi o pag<strong>in</strong>e.<br />

2.4.2 E-Book reader devices<br />

Dist<strong>in</strong>guiamo pr<strong>in</strong>cipalmente tre tipi <strong>di</strong> reader hardware, ossia strumenti fisici che<br />

permettono la lettura <strong>di</strong> e-book <strong>in</strong> modo maneggievole e portatile:<br />

• Lettori de<strong>di</strong>cati : rappresentano gli eBook reader devices per eccellenza<br />

dato che sono stati concepiti per rispondere alle esigenze <strong>di</strong> lettori <strong>di</strong> testi<br />

<strong>in</strong> <strong>formato</strong> elettronico;<br />

• Palm e PocketPC : tali eBook reader devices <strong>in</strong> realtà sono dei <strong>di</strong>spositivi<br />

la cui natura è quella <strong>di</strong> essere a metà tra un organizer e un computer<br />

portatile. Sono dotati molto spesso <strong>di</strong> (versioni appositamente rivisitate)<br />

sistemi operativi. Il loro prezzo è più elevato rispetto a quello dei<br />

LETTORI DEDICATI.<br />

• Tablet PC : rientrano <strong>in</strong> questa categoria tutti gli eBook reader devices<br />

specificamente progettati per avere un'esperienza completa e multime<strong>di</strong>ale<br />

nella navigazione <strong>in</strong> Internet. Nati nel momento <strong>in</strong> cui si pensava potessero<br />

conquistare il mercato i SET TOP BOX (cioè dei <strong>di</strong>spositivi<br />

esclusivamente pensati per la navigazione su Internet completamente<br />

Pag<strong>in</strong>a 20


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

<strong>in</strong><strong>di</strong>pendenti dal PC, ma con un potenza a volte paragonabile ai NoteBook)<br />

sono stati riconvertiti alla funzione <strong>di</strong> eBook reader (non de<strong>di</strong>cati) per<br />

sfruttare il settore dell'e<strong>di</strong>toria elettronica. Le caratteristiche tecnologiche<br />

presenti sui questi <strong>di</strong>spositivi giustificano un prezzo piuttosto elevato<br />

rispetto alle altre due famiglie <strong>di</strong> lettori eBook.<br />

2.4.3 Reader Software<br />

Sono software nati per i <strong>di</strong>versi <strong>di</strong>spositivi <strong>di</strong> lettura hardware (pc, notebook,<br />

pocket pc, etc.). Tra i più famosi citiamo:<br />

- Microsoft Reader<br />

Il Microsoft Reader risulta essere uno dei lettori software eBook più <strong>in</strong>tuitivi<br />

attualmente presenti sul mercato. Nelle sue varie evoluzioni oggi è giunto alla<br />

versione 2.0 e può essere considerato probabilmente il software più <strong>di</strong>ffuso.<br />

Utilizza la tecnologia ClearType grazie alla quale le parole sullo schermo vengono<br />

visualizzate quasi con la stessa nitidezza delle parole <strong>in</strong> una pag<strong>in</strong>a stampata; la<br />

stessa migliora f<strong>in</strong>o al 300% la risoluzione su schermi LCD per fornire un tipo <strong>di</strong><br />

visualizzazione molto def<strong>in</strong>ita. Il layout è semplice e or<strong>di</strong>nato, i marg<strong>in</strong>i ampi, la<br />

spaziatura, l'<strong>in</strong>terl<strong>in</strong>ea e la crenatura appropriate. Il Microsoft Reader presenta<br />

vantaggi <strong>in</strong> term<strong>in</strong>i <strong>di</strong> portabilità, memorizzazione e altre funzionalità <strong>di</strong>gitali,<br />

quale la capacità <strong>di</strong> trovare una parola o una frase specifica ogni volta che appare<br />

nel testo, nonché un modo semplice per cercare def<strong>in</strong>izioni con rapi<strong>di</strong>tà. In<br />

Microsoft Reader 2.0 per PC e computer portatili per W<strong>in</strong>dows e Pocket PC con<br />

sistema operativo W<strong>in</strong>dows, è possibile memorizzare tanti libri quanti ne può<br />

contenere il <strong>di</strong>spositivo <strong>in</strong> uso. Microsoft Reader consente <strong>in</strong>oltre <strong>di</strong> eseguire le<br />

stesse operazioni che si compiono quando si legge un libro stampato, ad esempio<br />

aggiungere segnalibri e note ai marg<strong>in</strong>i. È qu<strong>in</strong><strong>di</strong> possibile visualizzare<br />

nuovamente <strong>in</strong> un'unica posizione tutte le note ai marg<strong>in</strong>i, quali segnalibri, <strong>di</strong>segni<br />

ed evidenziazioni. La versione corrente <strong>di</strong> Microsoft Reader supporta funzionalità<br />

per testo, immag<strong>in</strong>i e au<strong>di</strong>o. Viene fornito anche il supporto per HTML e<br />

collegamenti HTML. Ulteriori formati, quali flussi video, verranno supportati<br />

Pag<strong>in</strong>a 21


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

nelle versioni successive. Non esistono attualmente progetti <strong>di</strong> sviluppo <strong>di</strong><br />

versioni <strong>di</strong> Microsoft Reader per altre piattaforme (Mac<strong>in</strong>tosh, Palm o L<strong>in</strong>ux).<br />

- Acrobat eBook Reader<br />

L'Acrobat eBook Reader deriva dal precedente lettore Glassbook Reader. Giunto<br />

ormai alla versione 2.2 questo lettore si presta ad essere molto versatile ed<br />

<strong>in</strong>tuitivo. Grazie alla comb<strong>in</strong>azione <strong>di</strong> visualizzazioni per la lettura vivide ed<br />

eleganti e <strong>di</strong> un'<strong>in</strong>terfaccia altamente funzionale, Acrobat eBook Reader fa<br />

assaporare tutto ciò che i libri elettronici hanno da offrire. E' dotato della<br />

tecnologia CoolType per una migliore leggibilità dei "font" e consente il<br />

cosiddetto "riflusso del testo" (caratteristica che permette a seconda della<br />

grandezza della pag<strong>in</strong>a e del fattore <strong>di</strong> zoom adottato, <strong>di</strong> mandare il testo a capo<br />

automaticamente). Questo software <strong>di</strong> lettura consente <strong>di</strong> visualizzare i libri<br />

elettronici completi <strong>di</strong> immag<strong>in</strong>i, grafica e i sofisticati font con la stessa tecnica e<br />

le stesse modalità utilizzate per i libri stampati. Non poteva che essere così visto<br />

che, oltre a ricevere l'ere<strong>di</strong>tà dal lettore software della Glassbook, emula i migliori<br />

pregi del noto programma <strong>di</strong> lettura dei documenti <strong>in</strong> <strong>formato</strong> .pdf : Acrobat<br />

Reader. La versione corrente <strong>di</strong> Acrobat eBook Reader supporta funzionalità per<br />

testo, immag<strong>in</strong>i e au<strong>di</strong>o. Ulteriori formati, quali flussi video, verranno supportati<br />

nelle versioni successive. L'Acrobat eBook Reader può essere <strong>in</strong>stallato su tutti i<br />

<strong>di</strong>spositivi hardware attualmente <strong>in</strong> commercio: PC, portatili (notebook), palmari,<br />

pocket pc.<br />

2.4.4 Il futuro degli e-Book nella carta riscrivibile?<br />

Lo Xerox Palo Alto <strong>Research</strong> Center è un centro <strong>in</strong> cui l'e<strong>di</strong>toria elettronica, fra le<br />

altre cose <strong>in</strong> progetto, farà passi da gigante. L'ultima delle <strong>in</strong>venzioni <strong>di</strong> questo<br />

vulcanico laboratorio è un tipo <strong>di</strong> carta elettronica riusabile: il Gyricon.<br />

Questo nuovo tipo <strong>di</strong> carta sarà, per molti aspetti, simile alla carta che usiamo tutti<br />

i giorni. Avrà uno spessore ed un peso non <strong>di</strong>st<strong>in</strong>guibili da un foglio <strong>di</strong> carta ed<br />

anche il suo costo dovrebbe essere <strong>di</strong> poco superiore. Una <strong>di</strong>fferenza, però, c'è:<br />

questa nuova carta elettronica sarà riscrivibile migliaia <strong>di</strong> volte. Il suo impiego<br />

Pag<strong>in</strong>a 22


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

ideale è per <strong>di</strong>splay per portatili a basso consumo, cartelloni pubblicitari<br />

riscrivibili e naturalmente <strong>di</strong>splay per eBook!<br />

Passando all'aspetto puramente tecnico, possiamo descriverla come una carta<br />

elettronica riusabile (electronic reusable paper) che sfrutta una nuova tecnologia<br />

<strong>di</strong> visualizzazione chiamata Gyricon, appunto. Un foglio Gyricon è uno strato<br />

sottile <strong>di</strong> plastica trasparente, nel quale sono <strong>di</strong>spersi milioni <strong>di</strong> piccoli grani.<br />

Questi grani, ognuno contenuto <strong>in</strong> una cavità riempita d'olio, sono liberi <strong>di</strong> rotare<br />

all'<strong>in</strong>terno della stessa cavità. Sono bicromatici, ovvero sono sfere colorate per<br />

metà con un colore chiaro e per l'altra metà con uno scuro che faccia contrasto<br />

(per esempio, bianco e nero, oppure rosso e bianco). Inoltre, hanno cariche<br />

opposte sulle <strong>di</strong>verse facciate, <strong>in</strong> modo da costituire un <strong>di</strong>polo. Se un voltaggio è<br />

applicato sul foglio Gyricon, essi si <strong>di</strong>spongono presentando una delle loro facce,<br />

a seconda <strong>di</strong> quale carica è stata trasmessa. Ovviamente, può essere esercitato un<br />

voltaggio <strong>di</strong>fferente per ogni zona allo scopo <strong>di</strong> <strong>di</strong>segnare dei motivi. In questo<br />

modo si possono creare testi ed immag<strong>in</strong>i che persistono f<strong>in</strong>o a quando un nuovo<br />

voltaggio verrà applicato. Verrà immesso il Gyricon Pr<strong>in</strong>ter; questo processo <strong>di</strong><br />

creazione <strong>di</strong> immag<strong>in</strong>i può essere fatto manualmente con delle stilo caricate<br />

elettronicamente, oppure tramite <strong>di</strong>spositivi elettronici che possono stampare su<br />

fogli Gyricon usando test<strong>in</strong>e cariche elettronicamente. Alcuni <strong>di</strong> questi <strong>di</strong>spositivi,<br />

che sono stati recentemente progettati, hanno una <strong>di</strong>mensione che dovrebbe<br />

consentirgli <strong>di</strong> stare all'<strong>in</strong>terno <strong>di</strong> borse o portafogli! Un'altra applicazione è quella<br />

<strong>di</strong> sfruttare le matrici elettroniche usate per gli LCD allo scopo <strong>di</strong> produrre <strong>di</strong>splay<br />

a basso consumo e senza bisogno <strong>di</strong> retroillum<strong>in</strong>azione. Una partnership con la<br />

3M ha permesso <strong>di</strong> avviare una produzione dell'electronic reusable paper, <strong>in</strong><br />

quantità tale da essere adatta ad un uso commerciale.<br />

Pag<strong>in</strong>a 23


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Capitolo 3 - <strong>PDF</strong> TM, Java e iText<br />

In questa parte tratteremo, <strong>in</strong> modo generico, del <strong>formato</strong> elettronico <strong>PDF</strong>, poiché<br />

è a larga maggioranza ritenuto il più adatto ad essere mo<strong>di</strong>ficato sotto certe<br />

con<strong>di</strong>zioni, protetto da accessi maliziosi e utilizzabile con applicativi <strong>di</strong>sponibili<br />

gratuitamente per il pubblico; una breve trattazione sul l<strong>in</strong>guaggio Java <strong>in</strong>trodurrà<br />

poi una panoramica sulla libreria iText, citando gli ideatori <strong>di</strong> questo progetto e<br />

quali sono le possibili realizzazioni che permette <strong>di</strong> eseguire me<strong>di</strong>ante le sue<br />

librerie.<br />

3.1 <strong>PDF</strong><br />

Il Portable Document Format è stato progettato per l’<strong>in</strong>terscambio <strong>di</strong> documenti <strong>in</strong><br />

modo che il ricevente veda esattamente il documento come è stato creato<br />

<strong>in</strong><strong>di</strong>pendentemente da <strong>di</strong>verse elaborazioni fatte su <strong>di</strong> esso. La pr<strong>in</strong>cipale<br />

<strong>di</strong>fferenza con gli altri formati è che il <strong>PDF</strong> è concepito come un <strong>formato</strong> <strong>di</strong><br />

descrizione delle pag<strong>in</strong>e; ne risulta che ogni pag<strong>in</strong>a contiene le <strong>in</strong>formazioni utili<br />

alla visualizzazione e può essere isolata dalle altre. Il <strong>PDF</strong> viene generato dal<br />

PostScript ma non ne contiene la complessità per cui una pag<strong>in</strong>a generata da<br />

<strong>di</strong>versi programmi sarà sempre la stessa. Esso è progettato con buone<br />

caratteristiche <strong>di</strong> sicurezza e crittografia e la sua <strong>di</strong>ffusione <strong>in</strong> rete ha fatto nascere<br />

numerosi software freeware che permettano la lettura <strong>di</strong> tale tipo <strong>di</strong> documenti.<br />

3.1.1 Caratteristiche del <strong>formato</strong> <strong>PDF</strong><br />

Per valutare le potenzialità del <strong>PDF</strong> si devono prendere <strong>in</strong> considerazione <strong>di</strong>versi<br />

aspetti legati sia alle caratteristiche <strong>di</strong> alto livello, visibili agli utenti f<strong>in</strong>ali, sia a<br />

quelle <strong>di</strong> basso livello, più strettamente riguardanti gli aspetti implementativi del<br />

<strong>formato</strong> stesso e dei <strong>file</strong> che lo utilizzano. Si possono qu<strong>in</strong><strong>di</strong> <strong>di</strong>st<strong>in</strong>guere:<br />

Pag<strong>in</strong>a 24


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Adobe Imag<strong>in</strong>g Model<br />

È la rappresentazione grafica e testuale utilizzata, che co<strong>in</strong>cide con quella<br />

usata dal l<strong>in</strong>guaggio PostScript. Ne risulta una <strong>di</strong>visione <strong>in</strong> pag<strong>in</strong>e nelle<br />

quali vengono <strong>in</strong>seriti elementi <strong>di</strong> varia natura, che possono essere<br />

caratteri, regioni def<strong>in</strong>ite tramite comb<strong>in</strong>azioni <strong>di</strong> l<strong>in</strong>ee e curve, o<br />

immag<strong>in</strong>i <strong>in</strong> <strong>formato</strong> <strong>di</strong>gitale. Ogni immag<strong>in</strong>e può essere mascherata <strong>in</strong><br />

modo da renderne visibile soltanto una parte. Inizialmente una pag<strong>in</strong>a<br />

viene descritta completamente vuota, successivamente vengono aggiunti<br />

dei marker che delimitano sezioni <strong>di</strong> pag<strong>in</strong>a; ogni marker può essere<br />

sovrapposto ad altri limitandone la visibilità; sono simili a quelli utilizzati<br />

nel Postscript ma non essendo il <strong>PDF</strong> un l<strong>in</strong>guaggio <strong>di</strong> programmazione<br />

viene esclusa la possibilità <strong>di</strong> utilizzare procedure, variabili e strutture <strong>di</strong><br />

controllo. Viene migliorata l’efficienza a scapito della flessibilità<br />

def<strong>in</strong>endo un set <strong>di</strong> operazioni ad alto livello implementate <strong>di</strong>rettamente <strong>in</strong><br />

co<strong>di</strong>ce macch<strong>in</strong>a e non <strong>in</strong> Postscript rendendo più veloce la<br />

visualizzazione e la stampa delle pag<strong>in</strong>e.<br />

Portabilità<br />

Un <strong>PDF</strong> è un <strong>file</strong> b<strong>in</strong>ario <strong>in</strong> cui viene utilizzato l’<strong>in</strong>tero set <strong>di</strong> caratteri a 8<br />

bit. Sfortunatamente alcune applicazioni usano un set <strong>di</strong> caratteri<br />

stampabili a 7 bit, come per esempio alcuni programmi <strong>di</strong> posta, e non<br />

garantiscono la corretta <strong>in</strong>terpretazione <strong>di</strong> certi caratteri come i f<strong>in</strong>e l<strong>in</strong>ea.<br />

Per garantire l’<strong>in</strong>tegrità dei <strong>file</strong> <strong>PDF</strong> li si deve trattare come i <strong>file</strong> b<strong>in</strong>ari;<br />

per fare ciò si <strong>in</strong>seriscono caratteri con co<strong>di</strong>ce ASCII maggiore <strong>di</strong> 127<br />

come header <strong>in</strong>iziale.<br />

Compressione<br />

Per ridurre le <strong>di</strong>mensioni del <strong>file</strong>, il <strong>formato</strong> <strong>PDF</strong> supporta molti standard<br />

<strong>di</strong> compressione:<br />

JPEG per immag<strong>in</strong>i a colori o scala <strong>di</strong> grigio<br />

CCITT Gruppo 3 e 4, LZW (Lempel-Ziv-Welch) e<br />

compressione Run Lenght per immag<strong>in</strong>i monocromatiche<br />

Pag<strong>in</strong>a 25


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

LZW e compressione l<strong>in</strong>eare <strong>di</strong> testo e immag<strong>in</strong>i <strong>in</strong><strong>di</strong>cizzate.<br />

Usando la compressione JPEG si ottiene un fattore <strong>di</strong> compressione<br />

maggiore <strong>di</strong> 10. L’effettiva compressione delle immag<strong>in</strong>i monocromatiche<br />

<strong>di</strong>pende dal filtro utilizzato e dalle proprietà dell’immag<strong>in</strong>e, normalmente<br />

si hanno rapporti che vanno da 2:1 a 8:1. Le compressioni l<strong>in</strong>eari e LZW<br />

del testo raggiungono approssimativamente un rapporto <strong>di</strong> 2:1.Tutti questi<br />

meto<strong>di</strong> <strong>di</strong> compressione producono dati b<strong>in</strong>ari che possono essere<br />

co<strong>di</strong>ficati <strong>in</strong> ASCII base 85 per mantenerne la portabilità.<br />

Font Independence<br />

L’utilizzo dei font è un punto fondamentale nello scambio <strong>di</strong> documenti.<br />

Generalmente chi riceve il <strong>file</strong> dovrebbe avere gli stessi font utilizzati nel<br />

documento orig<strong>in</strong>ale; <strong>di</strong>versamente i font verranno sostituiti con altri <strong>di</strong><br />

default, producendo effetti <strong>in</strong>desiderati a causa delle <strong>di</strong>verse proporzioni,<br />

come il superamento <strong>di</strong> un marg<strong>in</strong>e o la sovrapposizione <strong>di</strong> caratteri.<br />

Si possono <strong>in</strong>cludere i font nel documento provocando un aumento<br />

considerevole delle <strong>di</strong>mensioni, ad esempio un documento <strong>di</strong> due pag<strong>in</strong>e<br />

che utilizza quattro font cresce da 10K a 250K. Un’altra possibilità<br />

consiste nel convertire ogni pag<strong>in</strong>a del documento <strong>in</strong> un immag<strong>in</strong>e a<br />

risoluzione fissa, negando però la possibilità <strong>di</strong> <strong>in</strong>teragire con i contenuti.<br />

Il <strong>PDF</strong> <strong>di</strong>spone <strong>di</strong> una soluzione che rende i documenti <strong>in</strong><strong>di</strong>pendenti dai<br />

font utilizzati per crearli. Per ogni font utilizzato nel documento, viene<br />

creato un font descriptor che contiene il nome del font, le <strong>di</strong>mensioni ed<br />

eventuali <strong>in</strong>formazioni sullo stile. Queste <strong>in</strong>formazioni utili nel caso <strong>in</strong> cui<br />

un font non sia presente sul pc con cui si legge il documento, aggiungendo<br />

tipicamente solo 1-2K alla <strong>di</strong>mensione del documento e utilizzabile per i<br />

font <strong>di</strong> tipo Adobe Type 1 e True Type .<br />

Altri font grafici, quali lo ZapfD<strong>in</strong>gbats, sono già <strong>in</strong>tegrati nell’ambiente<br />

Abode, poichè <strong>in</strong>cludere <strong>in</strong>formazioni aggiuntive simili alle precedenti<br />

sarebbe comunque <strong>in</strong>sufficiente.<br />

Pag<strong>in</strong>a 26


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Accesso casuale<br />

Applicativi che estraggono e visualizzano una determ<strong>in</strong>ata pag<strong>in</strong>a da un<br />

l<strong>in</strong>guaggio Postscript devono analizzare il <strong>file</strong> <strong>in</strong> esame dall’<strong>in</strong>izio, f<strong>in</strong>ché<br />

non viene trovato l’elemento desiderato. In me<strong>di</strong>a, il tempo necessario per<br />

visualizzare una pag<strong>in</strong>a non <strong>di</strong>pende solo dalla sua complessità ma anche<br />

dal loro numero totale all’<strong>in</strong>terno del documento. È un problema per la<br />

visualizzazione <strong>in</strong>terattiva <strong>di</strong> documenti, dove è importante il tempo <strong>di</strong><br />

accesso alla pag<strong>in</strong>a. Ogni <strong>file</strong> <strong>PDF</strong> contiene una tabella <strong>di</strong> riferimenti<br />

<strong>in</strong>crociati, che viene utilizzata per accedere a pag<strong>in</strong>e ed altri oggetti<br />

importanti nel <strong>file</strong>; essa viene memorizzata alla f<strong>in</strong>e <strong>di</strong> quest’ultimo,<br />

permettendo alle applicazioni che generano <strong>PDF</strong> <strong>in</strong> un solo passo <strong>di</strong><br />

scriverla e a quelle che li leggono <strong>di</strong> trovarla <strong>in</strong> modo semplice.<br />

Aggiornamento Incrementale<br />

Certe applicazioni che permettono agli utenti <strong>di</strong> mo<strong>di</strong>ficare documenti<br />

<strong>PDF</strong> contenenti svariate cent<strong>in</strong>aia <strong>di</strong> pag<strong>in</strong>e non dovrebbero far attendere<br />

la riscrittura dell’<strong>in</strong>tero <strong>file</strong> ogni qual volta vengano salvate le mo<strong>di</strong>fiche.<br />

Il <strong>PDF</strong> permette sia la mo<strong>di</strong>fica sia l’aggiunta <strong>in</strong> un <strong>file</strong>, lasciando <strong>in</strong>tatti i<br />

dati orig<strong>in</strong>ali. L’aggiunta <strong>in</strong>crementale contiene solo l’oggetto che è stato<br />

mo<strong>di</strong>ficato o aggiunto e <strong>in</strong>clude una versione aggiornata della tabella dei<br />

riferimenti <strong>in</strong>crociati. Tale sistema permette <strong>di</strong> ottenere salvataggi con<br />

tempi proporzionali ai dati mo<strong>di</strong>ficati <strong>in</strong>vece che alle <strong>di</strong>mensioni del <strong>file</strong>;<br />

<strong>in</strong>oltre, vista la ridondanza dei dati, è possibile riprist<strong>in</strong>are l’orig<strong>in</strong>ale.<br />

Esten<strong>di</strong>bilità<br />

Il <strong>formato</strong> <strong>PDF</strong> è stato progettato per essere esten<strong>di</strong>bile. Sicuramente gli<br />

sviluppatori vorranno aggiungere caratteristiche che non sono ancora state<br />

implementate; per questo motivo è stato progettato <strong>in</strong> modo tale da poter<br />

essere esteso conservando la compatibilità con <strong>in</strong>terpreti antecedenti le<br />

mo<strong>di</strong>fiche.<br />

Pag<strong>in</strong>a 27


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

3.1.2 <strong>PDF</strong> e l<strong>in</strong>guaggio PostScript<br />

Nella sezione precedente sono state accennate le <strong>di</strong>fferenze fra il <strong>PDF</strong> e il<br />

l<strong>in</strong>guaggio Postscript; ci si propone ora <strong>di</strong> elencarle:<br />

• Un <strong>PDF</strong> può contenere oggetti come collegamenti ipertestuali, utili per la<br />

visualizzazione <strong>in</strong>terattiva.<br />

• Per semplificare il processo <strong>di</strong> descrizione delle pag<strong>in</strong>e il <strong>PDF</strong> non<br />

fornisce costrutti <strong>di</strong> programmazione<br />

• Il <strong>PDF</strong> rafforza il concetto <strong>di</strong> struttura <strong>di</strong> <strong>file</strong> e permette alle applicazioni <strong>di</strong><br />

accedere <strong>in</strong> modo casuale a parti del documento.<br />

• Il <strong>PDF</strong> contiene <strong>in</strong>formazioni riguardanti le caratteristiche dei font per<br />

assicurare fedeltà <strong>di</strong> visualizzazione.<br />

Per questi motivi, un <strong>file</strong> <strong>PDF</strong> non può essere <strong>in</strong>viato <strong>di</strong>rettamente ad una<br />

stampante per l’elaborazione. Un <strong>PDF</strong> può essere sud<strong>di</strong>viso <strong>in</strong> quattro parti<br />

<strong>di</strong>st<strong>in</strong>te:<br />

Oggetti<br />

Struttura del File<br />

Struttura del<br />

Documento<br />

Descrittore <strong>di</strong><br />

Pag<strong>in</strong>a<br />

Figura 1.1 Sud<strong>di</strong>visioni <strong>di</strong> un <strong>PDF</strong><br />

• Oggetti: comprende, tranne alcune eccezioni, i tipi base usati nel<br />

l<strong>in</strong>guaggio Postscript, come le strutture <strong>di</strong> dati e gli oggetti <strong>di</strong> base che<br />

essenzialmente danno forma ad un testo.<br />

• Struttura del <strong>file</strong>: determ<strong>in</strong>a come un oggetto è memorizzato <strong>in</strong> un <strong>file</strong><br />

<strong>PDF</strong>, il tipo <strong>di</strong> accesso consentito e le modalità <strong>di</strong> aggiornamento. Questa<br />

struttura è <strong>in</strong><strong>di</strong>pendente dalla semantica <strong>di</strong> un oggetto; si possono<br />

<strong>di</strong>st<strong>in</strong>guere quattro sezioni: header, body, cross-reference table (tabella dei<br />

riferimenti <strong>in</strong>crociati) e trailer.<br />

Pag<strong>in</strong>a 28


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

• Struttura del documento: specifica le modalità <strong>di</strong> utilizzo dei tipi base<br />

per rappresentare i componenti <strong>di</strong> un documento <strong>PDF</strong> come le pag<strong>in</strong>e, le<br />

annotazioni, i collegamenti ipertestuali, i font, ecc...<br />

• Descrittore <strong>di</strong> pag<strong>in</strong>a: pur facendo parte <strong>di</strong> un oggetto pag<strong>in</strong>a, rimane<br />

separato dagli altri e con essi ha una limitata <strong>in</strong>terazione. Questo<br />

semplifica la conversione <strong>in</strong> l<strong>in</strong>guaggio Postscript, può essere considerato<br />

come una sequenza <strong>di</strong> oggetti grafici collocati al suo <strong>in</strong>terno, <strong>in</strong>oltre si<br />

possono sovrapporre e coprire uno con l’altro.<br />

3.1.3 Adobe Acrobat TM Reader<br />

Il pr<strong>in</strong>cipale applicativo utilizzato per la lettura <strong>di</strong> <strong>file</strong> <strong>PDF</strong> viene fornito dalla<br />

Adobe <strong>in</strong> versione freeware, che ne permette una rapida <strong>di</strong>ffusione sia <strong>in</strong> ambito<br />

aziendale che privato; tale caratteristica ne ha permesso la <strong>di</strong>stribuzione <strong>in</strong> mercati<br />

già occupati da <strong>in</strong>terpreti <strong>di</strong> altri formati elettronici (DOC, PS, ecc…).<br />

Fondamentalmente è un’<strong>in</strong>terfaccia <strong>di</strong> visualizzazione dei <strong>file</strong> <strong>PDF</strong> che permette:<br />

• la visualizzazione <strong>in</strong> varie modalità dei documenti: a pag<strong>in</strong>e s<strong>in</strong>gole,<br />

multiple, con vari fattori <strong>di</strong> zoom, con barre <strong>di</strong> navigazione, documenti<br />

multipli e cronologia <strong>di</strong> azioni;<br />

• la stampa dell’<strong>in</strong>tero documento o <strong>di</strong> sue parti;<br />

• la ricerca <strong>di</strong> parole;<br />

• la selezione e la cattura <strong>di</strong> testo ed immag<strong>in</strong>i;<br />

• la visualizzazione <strong>di</strong> m<strong>in</strong>iature (thumbnail) delle pag<strong>in</strong>e, se presenti nel<br />

<strong>PDF</strong>;<br />

• la gestione <strong>di</strong> segnalibri (bookmark);<br />

• la gestione <strong>di</strong> collegamenti ipertestuali nello stesso ed <strong>in</strong> altri documenti;<br />

• opzioni <strong>di</strong> visualizzazione all’<strong>in</strong>terno <strong>di</strong> un browser: si <strong>in</strong>tende la<br />

possibilità <strong>di</strong> <strong>in</strong>tegrarsi all’<strong>in</strong>terno dell’ambiente <strong>di</strong> un browser<br />

estendendone le possibilità;<br />

Pag<strong>in</strong>a 29


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

• la gestione <strong>di</strong> impostazioni <strong>di</strong> protezione: all’atto della creazione <strong>di</strong> un<br />

documento si possono specificare <strong>di</strong>verse impostazioni riguardanti la<br />

visualizzazione, la mo<strong>di</strong>fica e la stampa dei documenti; attraverso <strong>di</strong> esse<br />

si abilitano o si <strong>in</strong>ibiscono alcune delle operazioni descritte<br />

precedentemente.<br />

3.1.4 Adobe SDK<br />

Adobe fornisce un <strong>in</strong>sieme <strong>di</strong> librerie, documentazioni, esempi e template che<br />

permettono la progettazione e lo sviluppo <strong>di</strong> plug-<strong>in</strong> e prodotti perfettamente<br />

<strong>in</strong>tegrati con l’ambiente Acrobat. È stato sviluppato un <strong>in</strong>sieme <strong>di</strong> oggetti che<br />

consentono la creazione, la mo<strong>di</strong>fica e la sostituzione <strong>di</strong> parti del documento o<br />

della sua struttura; ad alto livello questi ultimi possono essere sud<strong>di</strong>visi <strong>in</strong> layer:<br />

• Acrobat Viewer (AV) Layer: i suoi meto<strong>di</strong> permettono ai plug-<strong>in</strong> <strong>di</strong><br />

manipolare i componenti dell’ambiente stesso, come per esempio i menu e<br />

le relative voci.<br />

• Portable Document (PD) Layer: fornisce accesso agli oggetti che<br />

compongono il documento <strong>PDF</strong>, come per esempio le pag<strong>in</strong>e e le<br />

annotazioni; lo si può ulteriormente sud<strong>di</strong>videre <strong>in</strong>:<br />

o <strong>PDF</strong>E<strong>di</strong>t: raggruppa il contenuto delle pag<strong>in</strong>e <strong>in</strong> oggetti <strong>di</strong><br />

cui è possibile mo<strong>di</strong>ficare parametri e attributi; permette ai<br />

plug-<strong>in</strong> <strong>di</strong> leggere, scrivere, mo<strong>di</strong>ficare e creare contenuti e<br />

pag<strong>in</strong>e che possono a loro volta <strong>in</strong>globare font ed immag<strong>in</strong>i.<br />

o PDSE<strong>di</strong>t: riguarda le caratteristiche e le <strong>in</strong>formazioni sulla<br />

struttura del documento, che viene costruita,<br />

<strong>in</strong><strong>di</strong>pendentemente dalla sua rappresentazione fisica, tramite<br />

puntatori.<br />

• Acrobat Support (AS) Layer: fornisce funzioni platform-<strong>in</strong><strong>di</strong>pendent che<br />

riguardano ad esempio la <strong>manipolazione</strong> dei <strong>file</strong> o l’allocazione <strong>di</strong><br />

memoria.<br />

Pag<strong>in</strong>a 30


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

• Cos Layer: garantisce l’accesso ai blocchi <strong>di</strong> basso livello utilizzati per<br />

manipolare i dati, come i <strong>di</strong>zionari e str<strong>in</strong>ghe.<br />

Figura 1.2 Acrobat Layer<br />

Le prime due lettere del nome <strong>di</strong> un oggetto o <strong>di</strong> un metodo <strong>in</strong><strong>di</strong>cano<br />

l’appartenenza ad un determ<strong>in</strong>ato layer; è ora possibile dare una panoramica più<br />

dettagliata <strong>di</strong> tali oggetti e delle loro relazioni. Gli oggetti pr<strong>in</strong>cipali che vengono<br />

utilizzati sono:<br />

• CosDoc: è la rappresentazione <strong>di</strong> un documento <strong>PDF</strong> a basso livello; non<br />

si può creare <strong>di</strong>rettamente ma deve essere ottenuto come risultato <strong>di</strong> una<br />

funzione.<br />

• ASFile e ASFileSys: <strong>in</strong>capsula l’accesso ai <strong>file</strong> e fornisce un’<strong>in</strong>terfaccia<br />

comune al viewer, alle applicazioni ed ai plug-<strong>in</strong> verso il <strong>file</strong> system su<br />

<strong>di</strong>verse piattaforme. Un ASFile è una rappresentazione opaca <strong>di</strong> un <strong>file</strong><br />

aperto, contenente un ASPathName ed un ASFileSys, che rappresentano<br />

rispettivamente il percorso del <strong>file</strong> specifico del sistema ed un <strong>in</strong>sieme <strong>di</strong><br />

funzioni per accedere ai <strong>di</strong>versi <strong>file</strong> system.<br />

• PDDoc: è una rappresentazione logica <strong>di</strong> un documento <strong>PDF</strong> aperto; esiste<br />

una corrispondenza <strong>di</strong>retta fra PDDoc e ASFile. Un’applicazione può<br />

creare o aprire un documento utilizzando un ASFileSys e un ASPathName<br />

che solitamente si riferiscono a <strong>file</strong> su <strong>di</strong>sco. Ogni documento contiene un<br />

Pag<strong>in</strong>a 31


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

albero <strong>di</strong> pag<strong>in</strong>e, può contenere un albero <strong>di</strong> bookmark ed articoli, ed<br />

<strong>in</strong>fomazioni e strutture <strong>di</strong> sicurezza.<br />

• AVDoc: rappresenta un documento visualizzato <strong>in</strong> una f<strong>in</strong>estra, ne esiste<br />

uno solo; a <strong>di</strong>fferenza <strong>di</strong> un PDDoc, è sempre associato ad una f<strong>in</strong>estra.<br />

• AVW<strong>in</strong>dow: fornisce meto<strong>di</strong> per creare e gestire f<strong>in</strong>estre;<br />

• AVPageView: riguarda l’area del viewer che visualizza il contenuto <strong>di</strong><br />

una pag<strong>in</strong>a; ogni AVDoc possiede un AVPageView e viceversa, contiene<br />

riferimenti a oggetti <strong>di</strong> tipo PDDoc e PDPage riferiti al documento attivo.<br />

Si utilizza per visaulizzare una determ<strong>in</strong>ata pag<strong>in</strong>a, scegliere il fattore <strong>di</strong><br />

scala, evidenziare una o più parole e così via. Esistono casi particolari <strong>in</strong><br />

cui, nella visualizzazione <strong>in</strong> cont<strong>in</strong>uo delle pag<strong>in</strong>e 1 , esso non sia riferito ad<br />

una specifica pag<strong>in</strong>a; per fissare il riferimento <strong>di</strong> solito <strong>di</strong> usa il metodo<br />

AVPageViewSetPageNum.<br />

Figura 1.3 Document Object Interrelationship<br />

• CosObj: e ‘un oggetto generale <strong>in</strong> un <strong>file</strong> <strong>PDF</strong> e può essere <strong>di</strong> qualunque<br />

tipo appartenente al Cos layer.<br />

1 La visualizzazione può essere: a pag<strong>in</strong>a s<strong>in</strong>gola, <strong>in</strong> cont<strong>in</strong>uo o a pag<strong>in</strong>e affiancate.<br />

Pag<strong>in</strong>a 32


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

• <strong>PDF</strong>ileSpec: viene usato per specificare un <strong>file</strong> come oggetto <strong>di</strong><br />

un’azione; può essere creato da un ASPathName o da un CosObj ed è <strong>di</strong><br />

due tipi:<br />

3.2 Java<br />

o un pathname platform-<strong>in</strong>dependent;<br />

o una struttura dati contenente uno o più mo<strong>di</strong> per localizzare il<br />

<strong>file</strong> su piattaforme <strong>di</strong>fferenti.<br />

Figura 1.4 File I/O Object Interrelationships<br />

Si è pensato <strong>di</strong> voler dare una breve nozione storica e pratica del l<strong>in</strong>guaggio Java,<br />

per completare la funzione descrittiva del progetto, <strong>in</strong>erente a questo elaborato.<br />

3.2.1 Introduzione al l<strong>in</strong>guaggio Java<br />

Java appena è uscito è stato accolto con molto entusiasmo dalla comunità<br />

mon<strong>di</strong>ale dei progettisti <strong>di</strong> software e dei provider <strong>di</strong> servizi Internet, perché Java<br />

permetteva agli utenti <strong>di</strong> Internet <strong>di</strong> utilizzare applicazioni sicure e <strong>in</strong><strong>di</strong>pendenti<br />

dalla piattaforma, che si possono trovare <strong>in</strong> qualsiasi punto della rete.<br />

Pag<strong>in</strong>a 33


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Java è qu<strong>in</strong><strong>di</strong> nato come l<strong>in</strong>guaggio per la rete, per affiancare l'Hyper Text<br />

Markup Language (HTML), che non è un l<strong>in</strong>guaggio <strong>di</strong> programmazione vero e<br />

proprio, e dare maggiore sicurezza <strong>in</strong> rete alle transazioni <strong>in</strong> rete, possibilità che<br />

l'HTML non permette. Il l<strong>in</strong>guaggio <strong>di</strong> programmazione Java è stato creato verso<br />

la metà degli anni novanta, è il più recente tra i suoi cug<strong>in</strong>i, e per questo è ancora<br />

<strong>in</strong> fase evolutiva, tanto che ogni anno circa ne viene rilasciata una nuova versione.<br />

Da l<strong>in</strong>guaggio nato solo per la rete è <strong>di</strong>venuto un vero e proprio l<strong>in</strong>guaggio <strong>di</strong><br />

programmazione, paragonabile, dal punto <strong>di</strong> vista delle funzionalità, al più<br />

blasonato C++. Java e la maggior parte degli altri l<strong>in</strong>guaggi possono essere<br />

paragonati solo dal punto <strong>di</strong> vista delle funzionalità, perché sono<br />

fondamentalmente molto <strong>di</strong>versi, <strong>in</strong>fatti Java compila i sorgenti dei suoi<br />

programmi <strong>in</strong> un co<strong>di</strong>ce detto Bytecode, <strong>di</strong>verso dal l<strong>in</strong>guaggio della macch<strong>in</strong>a su<br />

cui è compilato, mentre l<strong>in</strong>guaggi come il C++ compilano i sorgenti dei<br />

programmi <strong>in</strong> un co<strong>di</strong>ce che è il co<strong>di</strong>ce della macch<strong>in</strong>a su cui è eseguito. Qu<strong>in</strong><strong>di</strong><br />

per eseguire un programma Java occorre uno strumento chiamato Java Virtual<br />

Mach<strong>in</strong>e(JVM), la quale <strong>in</strong>terpreta il bytecode generato dal compilatore Java e lo<br />

esegue sulla macch<strong>in</strong>a su cui è <strong>in</strong>stallato. Grazie alla JVM, Java è <strong>in</strong><strong>di</strong>pendente<br />

dalla piattaforma, <strong>in</strong>fatti il programma compilato Java è legato alla JVM e non al<br />

sistema operativo, sarà qu<strong>in</strong><strong>di</strong> possibile eseguire lo stesso programma Java,<br />

compilato una sola volta su una qualche macch<strong>in</strong>a con un compilatore Java<br />

versione X, su una piattaforma W<strong>in</strong>dows e su una piattaforma L<strong>in</strong>ux. Per fare<br />

questo però c'è bisogno che sia W<strong>in</strong>dows che L<strong>in</strong>ux abbiano <strong>in</strong>stallato una Java<br />

Virtual Mach<strong>in</strong>e che supporti la versione X <strong>di</strong> Java. Le due JVM <strong>in</strong>stallate sulle<br />

due piattaforme <strong>di</strong>verse sono praticamente un programma compilato una volta per<br />

W<strong>in</strong>dows ed una volta per L<strong>in</strong>ux, come avveniva con i programmi scritti <strong>in</strong><br />

l<strong>in</strong>guaggi come il C/C++. Una Java Virtual Mach<strong>in</strong>e è implementata anche nei<br />

vari Browser (come Netscape e Explorer) per poter eseguire i programmi Java<br />

<strong>in</strong>contrati nella rete, i cosiddetti Applet. Questo però, unito al fatto che Java<br />

ancora si evolve, causa degli ovvi problemi <strong>di</strong> <strong>in</strong>compatibilità: capita sempre che<br />

il più moderno Browser supporti una versione precedente <strong>di</strong> Java rispetto<br />

all'ultima versione rilasciata dalla Sun Microsystem, <strong>in</strong>oltre bisogna tener presente<br />

che non tutti gli utenti <strong>di</strong> Internet navigano usando l'ultima versione <strong>di</strong> Netscape o<br />

Pag<strong>in</strong>a 34


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

<strong>di</strong> Explorer. Un altro problema da affrontare è la scelta del compilatore Java da<br />

utilizzare, <strong>in</strong>fatti esistono vari ambienti <strong>in</strong>tegrati per e<strong>di</strong>tare, compilare, debuggare<br />

ed eseguire programmi Java, come quelli della Borland, della Microsoft, della<br />

Symantec. Tutti questi ambienti offrono dei tools <strong>di</strong> sviluppo eccellenti, come<br />

e<strong>di</strong>tori grafici <strong>di</strong> f<strong>in</strong>estre, debugger molto <strong>in</strong>teressanti. Per la realizzazione <strong>di</strong><br />

questa tesi, si è scelto <strong>di</strong> lavorare sul JBuilder 5, della Borland, per due motivi: la<br />

prima è la fresca realizzazione <strong>di</strong> questa versione, che permetteva l’uso della JDK<br />

più recente, la seconda è che, nonostante si trattasse della versione rilasciata <strong>in</strong> uso<br />

gratuito, permetteva un utilizzo molto completo.<br />

3.2.2 Programmare <strong>in</strong> Java<br />

La pr<strong>in</strong>cipale <strong>di</strong>fferenza tra Java e gli altri l<strong>in</strong>guaggi <strong>di</strong> programmazione ad<br />

oggetti è che mentre con questi ultimi è possibile ‘anche’ programmare ad oggetti<br />

con Java si deve assolutamente programmare ad oggetti. Tale programmazione<br />

avviene nello stesso modo degli altri l<strong>in</strong>guaggi, <strong>di</strong>fferenza sostanziale è che sia i<br />

dati, che le funzioni manipolanti questi, sono racchiusi <strong>in</strong> strutture dette classi. Le<br />

classi sono dei prototipi <strong>di</strong> oggetti, ovvero sono delle strutture astratte (ma non<br />

troppo) che possono essere <strong>in</strong>stanziate e qu<strong>in</strong><strong>di</strong> creare un oggetto (ma anche più <strong>di</strong><br />

uno). La classe def<strong>in</strong>isce tutte le proprietà degli oggetti appartenenti a quella<br />

classe, detti attributi, e le funzioni che vengono usate per agire su <strong>di</strong> essi, detti<br />

meto<strong>di</strong>. Per accedere agli attributi e ai meto<strong>di</strong> <strong>di</strong> un oggetto si utilizza la notazione<br />

puntata: oggetto.attributo oppure oppure oggetto.metodo(). Una figura, tratta dagli<br />

appunti ‘JDBC TM - Java Database Connectivity’ dell’Ing. Fabrizio LAMBERTI,<br />

del Dipartimento <strong>di</strong> Automatica ed Informatica, del Politecnico <strong>di</strong> Tor<strong>in</strong>o, servirà<br />

meglio a esemplificare il concetto <strong>di</strong> classe<br />

Pag<strong>in</strong>a 35


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Figura 1.5 Concetto <strong>di</strong> Classe<br />

Ad esempio è possibile def<strong>in</strong>ire una classe delle persone, come segue:<br />

Inizio classe persone<br />

Attributo anno<strong>di</strong>nascita<br />

Metodo calcolaetà (annoattuale)<br />

F<strong>in</strong>e classe persone<br />

La classe delle persone così def<strong>in</strong>ita ha un attributo, che è anno<strong>di</strong>nascita, che sarà<br />

sicuramente un numero <strong>in</strong>tero ed un metodo che, <strong>in</strong> base all' anno attuale passato<br />

come parametro, calcola l'età della persona. Per meglio comprendere la creazione<br />

<strong>di</strong> una classe e <strong>di</strong> un oggetto, <strong>in</strong>seriamo qui <strong>di</strong> seguito due figure, sempre tratte<br />

dagli appunti dell’Ing. Fabrizio LAMBERTI<br />

Pag<strong>in</strong>a 36


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Figura 1.6 Def<strong>in</strong>izione <strong>di</strong> una classe<br />

Figura 1.7 Creazione <strong>di</strong> un oggetto<br />

Per ogni eventuale approfon<strong>di</strong>mento sull’argomento, poiché non è questo il<br />

soggetto dell’elaborato, si rimanda ai numerosi testi e manuali presenti sul<br />

mercato e<strong>di</strong>toriale.<br />

3.3 iText<br />

iText è una libreria gratuita che permette <strong>di</strong> generare <strong>file</strong> <strong>PDF</strong> <strong>in</strong> tempo reale,<br />

ossia senza l’uso <strong>di</strong> <strong>file</strong> temporanei.<br />

Figura 1.8 Logo della libreria iText<br />

Le classi generate me<strong>di</strong>ante iText si utilizzano quando si ha necessità <strong>di</strong> creare <strong>file</strong><br />

<strong>PDF</strong> <strong>in</strong> cui occorre <strong>in</strong>serire testo, immag<strong>in</strong>i e tabelle, senza utilizzare un lettore <strong>di</strong><br />

tale <strong>formato</strong>, ossia senza lavorare personalmente sul <strong>file</strong> da mo<strong>di</strong>ficare, ma<br />

facendo agire il programma Java; tale libreria è usata <strong>in</strong> comb<strong>in</strong>azione alle<br />

tecnologie basate su Java e realizzate me<strong>di</strong>ante l’uso <strong>di</strong> questo l<strong>in</strong>guaggio <strong>di</strong><br />

programmazione; richiede la Java Development Kit (JDK) 1.2 della Sun<br />

Pag<strong>in</strong>a 37


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Microsystems Incorporated ed è <strong>di</strong> libero utilizzo me<strong>di</strong>ante le multilicenze MPL e<br />

LGPL.<br />

Creata nel 1999 da Bruno Lowagie, <strong>in</strong>gegnere <strong>di</strong> Gent, nel Belgio, la libreria è<br />

stata migliorata ed ampliata nel suo complesso anche grazie all’apporto dato<br />

successivamente dall’<strong>in</strong>g. Paulo Soares, attuale coresponsabile del progetto, ed è<br />

<strong>in</strong> cont<strong>in</strong>ua evoluzione, tanto che a tutt’oggi si registra l’uscita della versione<br />

0.93; la libreria è <strong>di</strong>sponibile nel sito dell’<strong>in</strong>g. Lowagie, all’<strong>in</strong><strong>di</strong>rizzo web:<br />

http://www.lowagie.com/iText/ , <strong>in</strong> cui è possibile trovare anche un tutorial,<br />

curato dall’<strong>in</strong>g. Soares, molto ben fatto, che con esaurienti esempi spiega<br />

l’utilizzo della loro libreria.<br />

3.3.1 Utilizzo <strong>di</strong> iText<br />

Passiamo ora <strong>in</strong> breve rassegna, cosa è possibile realizzare e manipolare con<br />

iText. Come si è detto realizza copie al volo <strong>di</strong> qualunque <strong>file</strong> <strong>PDF</strong>, me<strong>di</strong>ante un<br />

programma sviluppato <strong>in</strong> l<strong>in</strong>guaggio Java, ma non solo; <strong>in</strong>fatti è possibile creare<br />

nuovi documenti, me<strong>di</strong>ante appositi coman<strong>di</strong>, ed unirli ad esistenti. In def<strong>in</strong>itiva<br />

con iText possiamo:<br />

Creare un nuovo <strong>file</strong> <strong>PDF</strong>: generarlo dal nulla, impostando il nome da<br />

dare al <strong>file</strong>, potendo gestire al completo il documento, come i parametri <strong>di</strong><br />

<strong>di</strong>mensione <strong>di</strong> pag<strong>in</strong>a, i marg<strong>in</strong>i, <strong>in</strong>serendo immag<strong>in</strong>i, <strong>in</strong>testazioni, piè<br />

pag<strong>in</strong>a, ecc.<br />

Aprire un <strong>file</strong> esistente e mo<strong>di</strong>ficarne il contenuto: o meglio<br />

mo<strong>di</strong>ficandone l’impag<strong>in</strong>atura, aggiungendo <strong>in</strong>testazione e piè pag<strong>in</strong>a,<br />

<strong>in</strong>serendo pezzi <strong>di</strong> testo o immag<strong>in</strong>i, su pag<strong>in</strong>e specifiche e su tutto il<br />

documento.<br />

Unire più <strong>file</strong> fra loro: scegliendo <strong>in</strong><strong>di</strong>fferentemente se unirli<br />

sequenzialmente, ossia uno dopo l’altro, oppure se <strong>in</strong>serire un documento<br />

<strong>in</strong> un altro, dopo un numero <strong>di</strong> pag<strong>in</strong>e prestabilite dall’utente, senza limiti<br />

né sul numero <strong>di</strong> <strong>file</strong> uniti, né sul numero <strong>di</strong> pag<strong>in</strong>e da unire; ciò a livello<br />

<strong>di</strong> programma, ma come ben sappiamo a livello pratico si deve tener conto<br />

Pag<strong>in</strong>a 38


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

del tempo <strong>di</strong> realizzazione del documento f<strong>in</strong>ale, per rendere<br />

l’applicazione veloce e funzionale.<br />

Proteggere a vari livelli il documento: con due livelli <strong>di</strong> criptatura del<br />

documento, una a 40bit e l’altra a 128bit, la libreria permette <strong>di</strong>versi livelli<br />

<strong>di</strong> accesso al documento da parte dell’utente:<br />

o AllowPr<strong>in</strong>t<strong>in</strong>g: permette la stampa del documento;<br />

o AllowMo<strong>di</strong>fyContents: consente la mo<strong>di</strong>fica dei contenuti<br />

del <strong>file</strong>;<br />

o AllowCopy: autorizza il copia-<strong>in</strong>colla;<br />

o AllowMo<strong>di</strong>fyAnnotations: concede la mo<strong>di</strong>fica delle note;<br />

o AllowFillIn: consente la compilazione <strong>di</strong> eventuali parti del<br />

documento, ad esempio un form;<br />

o AllowScreenReaders: permette la sola visualizzazione del<br />

<strong>file</strong>;<br />

o AllowAssembly: autorizza l’<strong>in</strong>clusione <strong>di</strong> oggetti nel<br />

documento, come immag<strong>in</strong>i o grafici;<br />

o AllowDegradedPr<strong>in</strong>t<strong>in</strong>g: concede la stampa degradata, <strong>in</strong><br />

modo da non renderla perfetta;<br />

Tutti questi meto<strong>di</strong> <strong>di</strong> criptatura possono essere <strong>in</strong>seriti nel documento con o senza<br />

password, <strong>in</strong>oltre si può decidere se dare una password proprietario ed una utente,<br />

consentendo qu<strong>in</strong><strong>di</strong> una mo<strong>di</strong>fica successiva da parte del creatore del <strong>file</strong>.<br />

Per realizzare dei <strong>file</strong> <strong>PDF</strong> me<strong>di</strong>ante iText, si devono seguire passi piuttosto<br />

semplici, che possono essere <strong>di</strong>visi <strong>in</strong> tre fasi:<br />

Creazione del documento vuoto, che conterrà il <strong>file</strong>: <strong>in</strong><br />

questa fase è possibile fissare i marg<strong>in</strong>i, le <strong>di</strong>mensioni della<br />

pag<strong>in</strong>a, la sua rotazione e il nome del <strong>file</strong> <strong>PDF</strong> risultante;<br />

Apertura documento ed elaborazione: <strong>in</strong> questo passo si ha<br />

la vera e propria mo<strong>di</strong>fica del <strong>PDF</strong>, si possono importare<br />

pag<strong>in</strong>e, aggiungere del testo, sia come frasi, se si tratta <strong>di</strong><br />

un <strong>file</strong> vuoto, che come box <strong>di</strong> testo da posizionare sulla<br />

pag<strong>in</strong>a, aggiungere l’<strong>in</strong>testazione e il piè pag<strong>in</strong>a, immag<strong>in</strong>i,<br />

ecc;<br />

Pag<strong>in</strong>a 39


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Chiusura del documento: normalmente questa fase è fatta <strong>in</strong><br />

automatico dal programma Java, ma è consigliabile sempre<br />

chiudere il documento, una volta term<strong>in</strong>ate le mo<strong>di</strong>fiche,<br />

all’<strong>in</strong>terno del programma, poiché si ha la sicurezza che le<br />

risorse impegnate dal programma, verranno rilasciate e il<br />

documento sarà utilizzabile.<br />

Capitolo 4 Problemi e soluzioni<br />

nella realizzazione del progetto<br />

Si <strong>in</strong>tende ora descrivere quali sono stati i problemi <strong>in</strong>contrati nella realizzazione<br />

del progetto, derivanti dalla <strong>manipolazione</strong> al volo <strong>di</strong> <strong>file</strong> <strong>PDF</strong>, e le soluzioni<br />

adottate nel creare il programma utilizzante la libreria iText, che sarà utilizzato nel<br />

sito <strong>di</strong> appunti universitari Appunti.net.<br />

4.1 Appunti.net<br />

Ci pare giusto spiegare, brevemente, l’idea che sta alla base della creazione del<br />

sito che andrà ad utilizzare la classe creata alla f<strong>in</strong>e <strong>di</strong> questo progetto.<br />

Realizzato <strong>in</strong> collaborazione con la Trim, Appunti.net (www.appunti.net) è il<br />

nuovo sito de<strong>di</strong>cato a studenti e docenti <strong>di</strong> tutte le facoltà italiane, proponendosi<br />

come punto <strong>di</strong> riferimento per lo scambio e la compraven<strong>di</strong>ta <strong>di</strong> appunti<br />

universitari. Qui si possono trovare appunti, <strong>di</strong>spense, temi d'esame svolti, esercizi<br />

e altro materiale <strong>di</strong>dattico fornito <strong>di</strong>rettamente dai docenti oppure da studenti.<br />

Attualmente il sito <strong>di</strong>spone già <strong>di</strong> un’<strong>in</strong>terfaccia che gestisce la <strong>manipolazione</strong> dei<br />

<strong>file</strong> grezzi, ma si vuole realizzare un processo simile con altre soluzioni<br />

<strong>in</strong>formatiche, vagliando le più pratiche per la gestione degli appunti.<br />

Pag<strong>in</strong>a 40


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

4.2 Def<strong>in</strong>izione problemi nella creazione dei<br />

documenti<br />

Come si è ampliamente descritto nei precedenti paragrafi, i problemi pr<strong>in</strong>cipali<br />

erano due:<br />

Formattazione <strong>di</strong> un testo;<br />

Protezione del documento da eventuali usi impropri.<br />

I problemi sono connessi fra loro, poiché si tratta <strong>di</strong> trasformare un documento<br />

def<strong>in</strong>ito ‘grezzo’ (ossia proveniente dall’autore) <strong>in</strong> un documento ven<strong>di</strong>bile,<br />

esteticamente accettabile e protetto, pronto per essere venduto on-l<strong>in</strong>e; <strong>in</strong>oltre si<br />

voleva avere la possibilità <strong>di</strong> rendere la procedura automatica, ossia che i<br />

parametri fossero recepiti <strong>di</strong>rettamente da un database, se non per alcuni dati,<br />

immessi con un limitato <strong>in</strong>tervento perio<strong>di</strong>co <strong>di</strong> un operatore.<br />

Documento<br />

Grezzo<br />

Master<br />

Creazione<br />

Documenti<br />

Ven<strong>di</strong>bile<br />

Anteprima<br />

Omaggio<br />

Figura 1.9 Schema creazione documenti<br />

Per meglio comprendere cosa <strong>in</strong>ten<strong>di</strong>amo nei paragrafi successivi, <strong>in</strong><strong>di</strong>cheremo<br />

brevemente le def<strong>in</strong>izioni adottate nel testo per rif<strong>in</strong>ire i documenti:<br />

Documento ‘grezzo’: è il <strong>file</strong> proveniente dall’autore;<br />

Documento ‘master’: è la copia formattata del grezzo;<br />

Documento ‘ven<strong>di</strong>bile’: è il <strong>file</strong> che viene venduto all’utente;<br />

Documento ‘omaggio’: è la copia concessa <strong>in</strong> visione gratuita, spesso<br />

donata ai docenti;<br />

Pag<strong>in</strong>a 41


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Documento ‘anteprima’: è una versione ridotta, concessa all’utente per<br />

valutare l’eventuale acquisto del prodotto.<br />

Ve<strong>di</strong>amo come si presenta un <strong>file</strong> grezzo, con l’<strong>in</strong>serzione della seguente<br />

immag<strong>in</strong>e, che mostra il <strong>file</strong> usato come test nella realizzazione del progetto:<br />

Figura 1.10 Documento grezzo<br />

Come possiamo vedere dalla figura il documento grezzo non presenta ne<br />

copert<strong>in</strong>a, ne altra formattazione, quali header o footer; il compito del progetto<br />

sarà, appunto, <strong>in</strong>serirli. Def<strong>in</strong>iti i term<strong>in</strong>i usati, possiamo procedere alla<br />

specificazione delle varie fasi <strong>di</strong> creazione dei documenti.<br />

4.2.1 Creazione Master<br />

La copia master consiste <strong>in</strong> una mo<strong>di</strong>fica sostanziale del <strong>file</strong> grezzo, poiché questo<br />

giunge solitamente senza titolo, <strong>in</strong>testazione, numero <strong>di</strong> pag<strong>in</strong>a, ecc.<br />

Pag<strong>in</strong>a 42


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Titolo<br />

Documento<br />

Grezzo<br />

Autore<br />

Copert<strong>in</strong>a<br />

Creazione<br />

Master<br />

Co<strong>di</strong>ce<br />

Figura 1.11 Schema creazione Master<br />

Master<br />

Al master viene qu<strong>in</strong><strong>di</strong> aggiunta una copert<strong>in</strong>a, normalmente <strong>di</strong> due pag<strong>in</strong>e,<br />

dopo<strong>di</strong>ché si passa all’<strong>in</strong>serimento delle pag<strong>in</strong>e del documento grezzo e alla loro<br />

mo<strong>di</strong>fica; <strong>in</strong> sostanza si aggiunge:<br />

• Intestazione, recante il titolo dell’appunto, eventualmente troncato se è<br />

troppo lungo, e l’<strong>in</strong><strong>di</strong>rizzo web del sito <strong>di</strong> AppuntiNet;<br />

• Piè pag<strong>in</strong>a, <strong>in</strong><strong>di</strong>cante l’autore, con l’<strong>in</strong>iziale del nome puntata, il co<strong>di</strong>ce<br />

dell’appunto e il numero <strong>di</strong> pag<strong>in</strong>a.<br />

Questa copia master viene lasciata libera da protezioni e crittografia, per poter<br />

consentire le successive mo<strong>di</strong>fiche e creazioni dei <strong>file</strong>s dest<strong>in</strong>ati agli utenti.<br />

4.2.2 Creazione Copert<strong>in</strong>a<br />

Nella creazione del documento ‘master’ viene <strong>in</strong>serita una copert<strong>in</strong>a; questa viene<br />

creata <strong>in</strong> parte <strong>in</strong> tempo reale, <strong>in</strong> parte unendo al documento grezzo un <strong>file</strong> <strong>PDF</strong><br />

esistente, <strong>in</strong> cui abbiamo due pag<strong>in</strong>e:<br />

la prima, <strong>in</strong> cui troviamo il logo <strong>di</strong> AppuntiNet e alcune scritte standard;<br />

l’altra contiene tutte le <strong>in</strong>formazioni riguardanti il copyright.<br />

Ciò viene fatto per permettere una maggiore flessibilità al sistema <strong>di</strong> creazione del<br />

master, <strong>in</strong> quanto se fossero necessarie delle mo<strong>di</strong>fiche al logo o alle norme sul<br />

copyright, è sufficiente sostituire, o mo<strong>di</strong>ficare, la pag<strong>in</strong>a <strong>in</strong> oggetto e far passare<br />

la nuova copert<strong>in</strong>a nella creazione dei nuovi master, senza ulteriori accorgimenti.<br />

Pag<strong>in</strong>a 43


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

4.2.3 Creazione Ven<strong>di</strong>bile<br />

E’ la creazione del <strong>file</strong>, <strong>di</strong>remo, f<strong>in</strong>ale, ossia quello che l’utente riceve al term<strong>in</strong>e<br />

della procedura <strong>di</strong> acquisto; esso è una riproduzione del master, a cui viene<br />

aggiunto, nella parte dell’<strong>in</strong>testazione, sotto l’<strong>in</strong><strong>di</strong>rizzo web, il co<strong>di</strong>ce del cliente,<br />

per rendere personale la copia e scoraggiare eventuali usi impropri; <strong>in</strong>oltre si<br />

dovrà proteggere la <strong>manipolazione</strong> me<strong>di</strong>ante crittografia, lasciando all’utente la<br />

sola possibilità <strong>di</strong> stampare il documento.<br />

Co<strong>di</strong>ce<br />

cliente<br />

Documento<br />

Master<br />

Protezione<br />

documento<br />

Documento<br />

Ven<strong>di</strong>bile<br />

Figura 1.12 Schema creazione Ven<strong>di</strong>bile<br />

4.2.4 Creazione Omaggio<br />

La copia Omaggio viene concessa <strong>in</strong> visione gratuita ai docenti, spesso a scopo<br />

<strong>di</strong>vulgativo e pubblicitario del documento orig<strong>in</strong>ale; è <strong>in</strong> pratica una copia master<br />

a cui viene aggiunta una scritta verticale, posta a lato, su ogni pag<strong>in</strong>a del<br />

documento; tipicamente viene aggiunta la scritta.’Campione gratuito, vietata la<br />

ven<strong>di</strong>ta’ ma la frase può cambiare, è qu<strong>in</strong><strong>di</strong> necessario poter impostare anche una<br />

frase <strong>di</strong>versa da questa.<br />

Anche questo documento deve esser protetto da manipolazioni, tipicamente si<br />

protegge me<strong>di</strong>ante crittografia e si concede la sola possibilità all’utente <strong>di</strong> poter<br />

stampare il contenuto.<br />

Pag<strong>in</strong>a 44


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Scritta<br />

opportuna<br />

Documento<br />

Master<br />

Protezione<br />

documento<br />

Figura 1.13 Schema creazione Omaggio<br />

4.2.5 Creazione Anteprima<br />

Documento<br />

Omaggio<br />

La copia Anteprima rappresenta un sotto<strong>in</strong>sieme delle pag<strong>in</strong>e del master, concesse<br />

all’utente per visionare e valutare l’acquisto del testo elettronico, che ha preso <strong>in</strong><br />

esame. Normalmente si effettuerà un’estrazione casuale <strong>di</strong> pag<strong>in</strong>e dal documento,<br />

entro comunque un massimo <strong>di</strong> pag<strong>in</strong>e; e su tutte le pag<strong>in</strong>e estratte viene aggiunta<br />

una scritta, posta <strong>di</strong> traverso, recante la <strong>di</strong>citura:’Appunti.Net’ <strong>in</strong> <strong>di</strong>mensione<br />

sufficientemente grande da riempire la pag<strong>in</strong>a. Per rendere maneggevole questa<br />

creazione, si permette <strong>di</strong> def<strong>in</strong>ire sia la percentuale che il numero massimo <strong>di</strong><br />

pag<strong>in</strong>e estraibili, oltre che la possibilità <strong>di</strong> cambiare la <strong>di</strong>citura. E’ logico che, a<br />

maggior ragione, anche questo documento dovrà esser protetto da eventuali<br />

manipolazioni e all’utente sarà permessa la sola visione del testo.<br />

Scritta<br />

opportuna<br />

Documento<br />

Master<br />

Protezione<br />

documento<br />

Max Pag<strong>in</strong>e Percentuale<br />

Pag<strong>in</strong>e<br />

Documento<br />

Anteprima<br />

Figura 1.14 Schema creazione Anteprima<br />

Pag<strong>in</strong>a 45


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

4.3 Soluzioni adottate: classe AppuntiNet<br />

Dopo una breve trattazione dei documenti che bisognava ottenere, passiamo alla<br />

specifica descrizione del programma Java e dei meto<strong>di</strong> che hanno permesso <strong>di</strong><br />

realizzare i documenti presi <strong>in</strong> esame precedentemente.<br />

La classe pr<strong>in</strong>cipale, che contiene tutti i meto<strong>di</strong> successivamente descritti, è stata<br />

chiamata AppuntiNet; questa contiene una breve descrizione del <strong>file</strong>, <strong>in</strong><strong>di</strong>ca il<br />

nome dell’autore della classe e le note <strong>di</strong> copyright <strong>in</strong>erenti all’uso della libreria<br />

iText, dopo<strong>di</strong>ché importa le librerie necessarie al funzionamento dei meto<strong>di</strong> <strong>in</strong><br />

essa contenuti; nel suo complesso, è costituita da 415 righe <strong>di</strong> co<strong>di</strong>ce, per meglio<br />

comprendere il suo funzionamento, riporteremo per ogni metodo, oltre ad<br />

un’immag<strong>in</strong>e esemplificativa, due righe <strong>di</strong> co<strong>di</strong>ce: una recante i nomi dei<br />

parametri e l’altra simulante una reale situazione che è stata usata <strong>in</strong> fase <strong>di</strong> test<br />

del programma, un <strong>file</strong> chiamato AP00218, recante titolo:‘Esercizi <strong>di</strong> Chimica<br />

Generale’ il cui autore è il prof Paolo Volpe.<br />

4.3.1 Copert<strong>in</strong>a e Copyright<br />

Una parte del passaggio da documento grezzo a documento master consiste<br />

nell’<strong>in</strong>serimento <strong>di</strong> una copert<strong>in</strong>a con certe <strong>in</strong>formazioni posizionate <strong>in</strong> modo<br />

<strong>di</strong>fferente nella pag<strong>in</strong>a e dell’aggiunta <strong>di</strong> una sezione <strong>di</strong> copyright. Le esigenze <strong>di</strong><br />

mercato richiedono che essa possa cambiare a seconda <strong>di</strong> parametri variabili nel<br />

tempo oppure adattarsi a documenti particolari; per esempio una variazione del<br />

logo dell’azienda <strong>in</strong> questione oppure un riposizionamento dei campi all’<strong>in</strong>terno<br />

della pag<strong>in</strong>a; tali problemi hanno fatto sorgere l’opportunità <strong>di</strong> avere a parte<br />

questo documento, poiché la sola <strong>in</strong>serzione delle note <strong>di</strong> copyright avrebbe creato<br />

problemi su eventuali mo<strong>di</strong>fiche sulla prima pag<strong>in</strong>a, contenente il logo del sito,<br />

costituendo un documento tipicamente <strong>di</strong> due pag<strong>in</strong>e, <strong>in</strong> modo da poterlo<br />

mo<strong>di</strong>ficare off-l<strong>in</strong>e e successivamente <strong>in</strong>serirlo nei documenti. La figura <strong>di</strong> seguito<br />

<strong>in</strong>serita servirà a comprendere meglio come è costituita la copert<strong>in</strong>a.<br />

Pag<strong>in</strong>a 46


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

4.3.2 Metodo Crea Master<br />

Figura 1.15 Copert<strong>in</strong>a da <strong>in</strong>serire<br />

Questo metodo è quello che crea, appunto, la copia master, ossia formatta il <strong>file</strong><br />

grezzo ricevuto dall’autore;<br />

CreaMaster(Str<strong>in</strong>g NomeFileGrezzo, Str<strong>in</strong>g NomeFileCopert<strong>in</strong>a, Str<strong>in</strong>g<br />

NomeFileMaster, Str<strong>in</strong>g Co<strong>di</strong>ceAppunto, Str<strong>in</strong>g TitoloAppunto, Str<strong>in</strong>g[] Autori)<br />

CreaMaster("AP00218.pdf","Copert<strong>in</strong>a.pdf","AP00218master.pdf","AP00218","Te<br />

sto <strong>di</strong> Esercizi <strong>di</strong> Chimica Generale",A);<br />

<strong>in</strong> cui A è l’arrey contenente il nome e il cognome degli autori;<br />

I parametri <strong>in</strong> <strong>in</strong>gresso, dunque, sono:<br />

- NomeFileGrezzo, è il nome del <strong>PDF</strong> da formattare;<br />

- NomeFileCopert<strong>in</strong>a, è il nome del <strong>file</strong> che contiene le<br />

pag<strong>in</strong>e <strong>di</strong> copert<strong>in</strong>a;<br />

- NomeFileMaster, è il nome da dare al <strong>PDF</strong> master;<br />

- Co<strong>di</strong>ceAppunto, è il co<strong>di</strong>ce dell’appunto;<br />

- TitoloAppunto, è il titolo dell’appunto;<br />

Pag<strong>in</strong>a 47


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

- Autori, contiene il nome e il cognome dell’autore;<br />

Una volta assunti questi parametri, il metodo passa ad una prima verifica per<br />

vedere se sono stati immessi tutti; se questa verifica va a buon f<strong>in</strong>e, prosegue,<br />

altrimenti ferma il processo e visualizza un messaggio <strong>di</strong> errore.<br />

Successivamente fa una verifica sul titolo dell’appunto, per poi poterlo immettere<br />

nell’<strong>in</strong>testazione delle pag<strong>in</strong>e; se è <strong>in</strong>feriore ad un parametro fissato, tipicamente<br />

34 caratteri, viene lasciato <strong>in</strong>tero, <strong>di</strong>versamente viene troncato; nel caso preso ad<br />

esempio il titolo è stato troncato poiché era lungo <strong>in</strong> totale 37 caratteri.<br />

Passa qu<strong>in</strong><strong>di</strong> <strong>in</strong> esame il nome dell’autore, creandone una copia, la cui <strong>in</strong>iziale è<br />

puntata, da <strong>in</strong>cludere nel piè pag<strong>in</strong>a; a questo punto <strong>in</strong>izia la creazione vera e<br />

propria del documento master, <strong>in</strong>fatti crea un documento con il NomeFileMaster,<br />

lo apre, vi <strong>in</strong>serisce la copert<strong>in</strong>a, contenute del NomeFileCopert<strong>in</strong>a, ponendo il<br />

titolo dell’appunto per <strong>in</strong>tero e l’autore nella prima pag<strong>in</strong>a <strong>di</strong> copert<strong>in</strong>a.<br />

Figura 1.16 Copert<strong>in</strong>a documento Master<br />

Di seguito <strong>in</strong>izializza un contentbyte, che servirà per posizionare i box <strong>di</strong> testo che<br />

creano l’<strong>in</strong>testazione e il piè pag<strong>in</strong>a, oltre ad istanziare due Font <strong>di</strong>versi da<br />

Pag<strong>in</strong>a 48


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

utilizzare per header e footer. Apre il documento grezzo, legge il numero totale <strong>di</strong><br />

pag<strong>in</strong>e <strong>in</strong> esso contenute e <strong>in</strong>izia ad <strong>in</strong>serire le pag<strong>in</strong>e con un ciclo <strong>di</strong> while che<br />

tiene conto se ha raggiunto la totalità del documento o no. Ad ogni <strong>in</strong>serzione <strong>di</strong><br />

pag<strong>in</strong>a, vengono aggiunti 4 box <strong>di</strong> testo, <strong>in</strong>erenti al titolo tronco dell’appunto e<br />

alla scritta ‘www.appunti.net’ per quanto riguarda l’header, mentre aggiunge la<br />

scritta ‘©2002’ , l’autore dell’appunto, con l’<strong>in</strong>iziale del nome puntata, e il<br />

numero <strong>di</strong> pag<strong>in</strong>a corrente per il piè pag<strong>in</strong>a.<br />

Figura 1.17 Intestazione e piè pag<strong>in</strong>a documento Master<br />

Term<strong>in</strong>ati entrambi gli <strong>in</strong>serimenti, quello della copert<strong>in</strong>a e il documento grezzo,<br />

segue una scritta che conferma l’avvenuto <strong>in</strong>serimento; ultimato lo svolgimento<br />

viene chiuso il documento e si ha la copia master.<br />

4.3.3 Metodo CreaVen<strong>di</strong>bile<br />

Questo metodo crea la copia f<strong>in</strong>ale, che l’utente acquista; ve<strong>di</strong>amo come:<br />

CreaVen<strong>di</strong>bile(Str<strong>in</strong>g NomeFileMaster, Str<strong>in</strong>g NomeFileVen<strong>di</strong>bile, Str<strong>in</strong>g<br />

Co<strong>di</strong>ceCliente)<br />

CreaVen<strong>di</strong>bile("AP00218master.pdf","218ven<strong>di</strong>ta.pdf","cecconetto");<br />

Come si può vedere, assume tre parametri<br />

- NomeFileMaster;<br />

- NomeFileVen<strong>di</strong>bile;<br />

- Co<strong>di</strong>ceCliente.<br />

Pag<strong>in</strong>a 49


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Tutti questi parametri vengono analizzati per verificare che siano stati immessi<br />

tutti e tre, passato questo test procede con la creazione del <strong>file</strong>. Crea un<br />

documento con NomeFileVen<strong>di</strong>bile, ne prepara la criptatura a 40bits, allocando<br />

solo la possibilità <strong>di</strong> stampa del documento, e lo apre; legge il numero <strong>di</strong> pag<strong>in</strong>e<br />

che compongono il NomeFileMaster e <strong>in</strong>izializza un contentbyte per <strong>in</strong>serire il<br />

Co<strong>di</strong>ceCliente. Assunti questi parametri <strong>in</strong>izia un ciclo <strong>di</strong> while per <strong>in</strong>serire le<br />

pag<strong>in</strong>e del master, dove <strong>in</strong> ogni pag<strong>in</strong>a viene <strong>in</strong>serito un box <strong>di</strong> testo<br />

dell’<strong>in</strong>testazione, sotto la scritta ‘www.appunti.net’ contenente la scritta ‘Copia<br />

personale <strong>di</strong>:’ e il Co<strong>di</strong>ceCliente;<br />

Figura 1.18 Documento Ven<strong>di</strong>bile<br />

term<strong>in</strong>ato il ciclo viene visualizzata una scritta che conferma la creazione del<br />

documento e viene chiuso, term<strong>in</strong>ando il processo.<br />

4.3.4 Metodo CreaAnteprima<br />

Questo metodo fornisce la copia <strong>in</strong> visione al cliente, <strong>in</strong> modo che possa valutarne<br />

l’acquisto. Ve<strong>di</strong>amo meglio che parametri riceve:<br />

CreaAnteprima (Str<strong>in</strong>g NomeFileMaster, Str<strong>in</strong>g NomeFileAnteprima, <strong>in</strong>t pag, <strong>in</strong>t<br />

maxpag, Str<strong>in</strong>g Scritta)<br />

CreaAnteprima("AP00218master.pdf","218anteprima.pdf",50,15,"Copia <strong>in</strong><br />

anteprima by Appunti.net")<br />

Pag<strong>in</strong>a 50


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Tale metodo, come ve<strong>di</strong>amo, assume <strong>in</strong> <strong>in</strong>gresso:<br />

- NomeFileMaster;<br />

- NomeFileAnteprima;<br />

- Scritta;<br />

- Percentuale <strong>di</strong> pag<strong>in</strong>e (pag);<br />

- Massimo numero <strong>di</strong> pag<strong>in</strong>e (maxpag).<br />

Il metodo verifica che siano stati immessi e al superamento <strong>di</strong> questa analisi,<br />

<strong>in</strong>izia a creare il <strong>file</strong>. Anzitutto apre il NomeFileMaster e ne legge il numero <strong>di</strong><br />

pag<strong>in</strong>e <strong>in</strong> esso contenute, dopo crea un nuovo documento NomeFileAnteprima e<br />

lo cripta a 40bits, <strong>di</strong>sponendo la sola possibilità <strong>di</strong> vedere il testo sullo schermo;<br />

apre <strong>in</strong> documento, <strong>in</strong>stanziando un contentbyte per <strong>in</strong>serire la scritta, ed <strong>in</strong>izia a<br />

verificare quante pag<strong>in</strong>e deve <strong>in</strong>serire; <strong>in</strong>fatti viene calcolata la percentuale <strong>di</strong><br />

pag<strong>in</strong>e del NomeFileMaster e confrontato con il massimo <strong>di</strong> pag<strong>in</strong>e che viene<br />

permesso <strong>in</strong>serire, se è <strong>in</strong>feriore, le <strong>in</strong>serisce tutte, altrimenti assume il massimo<br />

come numero <strong>di</strong> pag<strong>in</strong>e da <strong>in</strong>serire. A questo punto viene creato un ciclo che<br />

istanzia un arrey <strong>di</strong> <strong>in</strong>teri, la cui lunghezza è uguale al numero <strong>di</strong> pag<strong>in</strong>e da<br />

<strong>in</strong>serire; questo conterrà dei numeri casuali, generati da un random, entro il totale<br />

delle pag<strong>in</strong>e del documento master; il ciclo, per ogni numero generato, controlla:<br />

-se questo è già stato messo, lo scarta e ne genera un altro;<br />

-altrimenti lo salva e prosegue il ciclo.<br />

Il ciclo term<strong>in</strong>a quando l’arrey è completo; <strong>in</strong> tal modo si evitano pag<strong>in</strong>e doppie<br />

nella copia <strong>di</strong> anteprima e numeri che il programma non potrebbe trovare come<br />

pag<strong>in</strong>e. Su ogni pag<strong>in</strong>a viene posizionato un box <strong>di</strong> testo, posto a 55° <strong>di</strong> traverso<br />

sulla pag<strong>in</strong>a, contenente la scritta immessa nei parametri d’<strong>in</strong>izializzazione, il cui<br />

testo viene svuotato e il contorno colorato <strong>di</strong> rosso.<br />

Pag<strong>in</strong>a 51


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Figura 1.19 Documento Anteprima<br />

Term<strong>in</strong>ato questo ciclo, viene visualizzata una scritta <strong>di</strong> conferma della creazione<br />

e viene chiuso il documento.<br />

4.3.5 Metodo CreaOmaggio<br />

Questo metodo crea la copia da <strong>di</strong>stribuire gratuitamente agli utenti prescelti,<br />

ve<strong>di</strong>amo come:<br />

CreaOmaggio(Str<strong>in</strong>g NomeFileMaster,Str<strong>in</strong>g NomeFileOmaggio,Str<strong>in</strong>g Scritta);<br />

CreaOmaggio("AP00218master.pdf","218omaggio.pdf","Campione gratuito,<br />

vietata la ven<strong>di</strong>ta");<br />

Assume <strong>in</strong> <strong>in</strong>gresso tre parametri:<br />

- NomeFileMaster;<br />

Pag<strong>in</strong>a 52


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

- NoleFileOmaggio;<br />

- Scritta opportuna.<br />

Come per i precedenti meto<strong>di</strong>, viene fatta la verifica su parametri immessi,<br />

considerando che tutti e tre sono assunti come tipo Str<strong>in</strong>g, passato questo test<br />

<strong>in</strong>izia la creazione del <strong>file</strong>; viene aperto il NomeFileMaster, letto il numero <strong>di</strong><br />

pag<strong>in</strong>e del documento e creato un nuovo documento con NomeFileOmaggio; tale<br />

<strong>file</strong> sarà criptato a 40bits, allocando la sola possibilità <strong>di</strong> stampa del documento,<br />

viene <strong>in</strong>izializzato un contentbyte per <strong>in</strong>serire la scritta e <strong>in</strong>izia un ciclo <strong>di</strong> while<br />

per l’<strong>in</strong>serimento delle pag<strong>in</strong>e. Su ogni pag<strong>in</strong>a del documento viene <strong>in</strong>serita nel<br />

marg<strong>in</strong>e s<strong>in</strong>istro la scritta immessa nei parametri <strong>in</strong>iziali, opportunamente colorata<br />

e svuotata <strong>in</strong> modo da visualizzare solo il contorno del testo.<br />

Figura 1.20 Documento Omaggio<br />

Al term<strong>in</strong>e del ciclo, viene visualizzata una scritta <strong>di</strong> conferma e chiuso il<br />

documento.<br />

Pag<strong>in</strong>a 53


Strumenti automatici per e<strong>di</strong>toria elettronica:<br />

<strong>manipolazione</strong> <strong>di</strong> <strong>file</strong> <strong>in</strong> <strong>formato</strong> <strong>PDF</strong> me<strong>di</strong>ante libreria iTex<br />

Capitolo 5 Conclusioni<br />

Come si è potuto vedere nel capitolo 3, la cont<strong>in</strong>ua evoluzione del commercio<br />

elettronico permette <strong>di</strong> rendere sempre più efficace la ven<strong>di</strong>ta <strong>di</strong> e-book e la<br />

protezione dei <strong>di</strong>ritti <strong>di</strong> autore; sempre più aziende si affacciano a questo mercato<br />

nuovo e ne apprezzano la facile gestione e la maggiore remunerazione economica;<br />

basti pensare a quanti libri potrebbero essere gestiti e venduti me<strong>di</strong>ante l’utilizzo<br />

<strong>di</strong> sistemi <strong>in</strong>formatici, opportunamente creati e sviluppati, con l’uso <strong>di</strong> pochi<br />

operatori e, qu<strong>in</strong><strong>di</strong>, con costi contenuti, unito al fatto che il numero <strong>di</strong> volumi<br />

<strong>di</strong>sponibile e immagazz<strong>in</strong>abili <strong>in</strong> una biblioteca elettronica sarebbe quasi<br />

<strong>in</strong>immag<strong>in</strong>abile nella realtà, a meno <strong>di</strong> non pensare a enormi e<strong>di</strong>fici, con tutte le<br />

<strong>di</strong>fficoltà e i costi che comporterebbero la conservazione e gestione <strong>di</strong> una simile<br />

biblioteca. E’ facile vedere come tale ambito sia agli esor<strong>di</strong>, come lo <strong>di</strong>mostra la<br />

recente nascita della IeBA e del protocollo EBX, ma che prenda campo molto<br />

velocemente; basti pensare agli ultimi sviluppi delle tecnologie, come quelle della<br />

Xerox con il Gyricon, per passare ai più ‘semplici’ lettori per e-Book, oppure ai<br />

prototipi <strong>di</strong> ‘quoti<strong>di</strong>ani elettronici’, rappresentati da uno schermo elettronico,<br />

completamente pieghevole, e da un cavo usb, da cui potremo scaricare, me<strong>di</strong>ante<br />

la rete, tutti i quoti<strong>di</strong>ani che vorremo, pagando un canone <strong>di</strong> abbonamento; un<br />

utile aiuto anche per l’ecologia, se pensiamo a quanta carta <strong>in</strong> meno verrà<br />

utilizzata, un semplice esempio <strong>di</strong> come la tecnologia, se ben applicata, può<br />

aiutarci per un futuro migliore. È qu<strong>in</strong><strong>di</strong> evidente <strong>di</strong> come questa evoluzione<br />

dell’e<strong>di</strong>toria elettronica necessiterà <strong>di</strong> appositi strumenti su cui basare la propria<br />

attività, permettendo, anche nel campo della programmazione, una nuova sp<strong>in</strong>ta<br />

all’evoluzione <strong>in</strong>formatica.<br />

Pag<strong>in</strong>a 54

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!