POLITECNICO DI TORINO. Tesi di Diploma

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "POLITECNICO DI TORINO. Tesi di Diploma"

Transcript

1 POLITECNICO DI TORINO Facoltà di Ingegneria Corso di Diploma in Ingegneria Informatica Tesi di Diploma Strumenti automatici per editoria elettronica: manipolazione di file in formato PDF mediante libreria itext Relatore prof. Fulvio Corno Candidato Cecconetto Ermano Luglio 2002

2 Sommario La tesi si inserisce nell'ambito delle attività di sviluppo e di sperimentazione legate al sito Appunti.Net. La tesi opera nel contesto dell'automazione dei flussi produttivi legati al mondo dell'editoria on-line. In tali contesti, il "prodotto" è rappresentato da un documento in forma elettronica, ed è necessario riprodurre, mediante un flusso puramente elettronico, tutte le fasi di lavorazione di un prodotto tradizionalmente cartaceo quale potrebbe essere una rivista, un documento, un libro. In particolare si esaminerà un flusso produttivo basato sullo standard PDF (TM Adobe), grazie all'enorme diffusione di tale formato e della sua naturale candidatura quale rappresentazione naturale degli e-book. Per la progettazione e l implementazione delle varie fasi produttive, a partire da un documento grezzo fino al documento finito, si è scelto di lavorare con la libreria di manipolazione itext, che offre, grazie alla sua sufficiente completezza e versatilità, la funzionalità necessaria per svolgere questa implementazione. Tale libreria si basa sul linguaggio di programmazione Java. Il flusso di lavorazione è il più possibile automatizzato, attingendo ai parametri specifici in alcune fasi di lavorazione da un database contenente le informazioni specifiche su ciascun documento, mentre per la creazione del documento intermedio si è preferito lasciare alcuni parametri di codificazione fissi all interno della procedura. La tesi è descritta in 5 capitoli

3 Il primo capitolo contiene l introduzione e descrive gli obiettivi e le soluzioni adottate all interno del lavoro. Il secondo capitolo descrive i concetti generali del commercio elettronico ed i problemi ad esso relativi, nonché le tecnologie riguardanti l editoria elettronica. Il terzo capitolo riporta le caratteristiche del formato PDF, del linguaggio Java e della libreria itext. Il quarto capitolo contiene la struttura e l architettura dell applicazione Java, nonché i problemi e le soluzioni adottate nello sviluppo del progetto. Il quinto elabora le conclusioni e i possibili sviluppi.

4 INDICE Capitolo 1 Introduzione Obiettivi Risultati 5 Capitolo 2 Commercio ed editoria elettronica E-Generation E-Business Definizione e tipi di E-Commerce Obiettivi e vantaggi dell E-Commerce Problemi relativi al commercio elettronico Software e sicurezza Spedizioni ed affidabilità Editoria Elettronica Cenni storici: tecnologie editoriali Il formato digitale e le nuove tecnologie Passaggio da carta a digitale Copyright E-Book EBX E-Book reader devices Reader Software Il futuro degli e-book nella carta riscrivibile? 22 Capitolo 3 - PDF TM, Java e itext PDF Caratteristiche del formato PDF PDF e linguaggio PostScript 28 Figura 1.1 Suddivisioni di un PDF Adobe Acrobat TM Reader Adobe SDK 30 Figura 1.2 Acrobat Layer 31 Figura 1.3 Document Object Interrelationship 32 Figura 1.4 File I/O Object Interrelationships Java Introduzione al linguaggio Java Programmare in Java 35 Figura 1.5 Concetto di Classe 36 Figura 1.6 Definizione di una classe 37 Figura 1.7 Creazione di un oggetto itext 37 Figura 1.8 Logo della libreria itext 37 Pagina 1

5 3.3.1 Utilizzo di itext 38 Capitolo 4 Problemi e soluzioni nella realizzazione del progetto Appunti.net Definizione problemi nella creazione dei documenti 41 Figura 1.9 Schema creazione documenti 41 Figura 1.10 Documento grezzo Creazione Master 42 Figura 1.11 Schema creazione Master Creazione Copertina Creazione Vendibile 44 Figura 1.12 Schema creazione Vendibile Creazione Omaggio 44 Figura 1.13 Schema creazione Omaggio Creazione Anteprima 45 Figura 1.14 Schema creazione Anteprima Soluzioni adottate: classe AppuntiNet Copertina e Copyright 46 Figura 1.15 Copertina da inserire Metodo Crea Master 47 Figura 1.16 Copertina documento Master 48 Figura 1.17 Intestazione e piè pagina documento Master Metodo CreaVendibile 49 Figura 1.18 Documento Vendibile Metodo CreaAnteprima 50 Figura 1.19 Documento Anteprima Metodo CreaOmaggio 52 Figura 1.20 Documento Omaggio 53 Capitolo 5 Conclusioni 54 Pagina 2

6 Capitolo 1 Introduzione Lo sviluppo tecnologico degli ultimi anni ha permesso alle persone di avere a disposizione una finestra sul mondo, direttamente da casa propria, grazie alla rete Internet. Inizialmente pensato per permettere la comunicazione e lo scambio di dati in qualunque luogo mediante una linea telefonica, Internet, grazie alla sua rapida popolarità e diffusione, si è sviluppato anche su altri supporti sfruttando connessioni satellitari e canali ad alta velocità, quali le fibre ottiche, oggi in commercio, permettendo il collegamento di utenti da ogni parte del mondo. Grazie alla sua natura, programmi e dati sono facilmente distribuibili e si può sfruttare qualunque risorsa elettronica permettendo lo sviluppo di un commercio in rete, legale e illegale, di tali risorse. Le aziende si affacciano ora con maggior impegno, anche se con ancora qualche timore, negli spazi e-businness offerti dalla rete, aprendo al pubblico propri spazi e negozi virtuali dove offrono i loro servizi permettendo spesso l acquisto, da parte dell utente, di svariati prodotti. Con lo sviluppo di tale commercio è sorto un problema di tempi di attesa dei prodotti, ovviamente legato al fatto che l acquisto avviene immediatamente, ma l arrivo della merce ordinata è soggetto ai tempi legati alla spedizione, utilizzando mezzi terrestri, oltre ad un aumento del costo congiunto appunto a tale spedizione. Se alla cosa non è possibile ovviare nel caso l utente acquisti beni prettamente materiali, come ad esempio un componente hardware per il proprio personal computer, è sorta la domanda se era possibile trasformare altri oggetti fisici in dati e introdurli nella rete, rendendo così il commercio più veloce e flessibile. É il caso dell acquisto di un CD audio: l acquisto dell oggetto fisico da un sito web comporterebbe tempi di spedizione di alcuni giorni e aumento del costo, dovuto infatti alle spese di trasporto, mentre la tecnologia oggi permetterebbe la distribuzione della musica dal negozio all utente in poco tempo, grazie ai nuovi metodi di compressione sempre in evoluzione. In questo contesto si inserisce anche lo sviluppo del commercio elettronico di libri; per loro natura sono strettamente materiali, ma grazie ai numerosi formati elettronici di testo presenti nella rete, sviluppano la compravendita in un sistema Pagina 3

7 più veloce e pratico, annullando praticamente i costi di spedizione. All interno di questo ambito si sviluppa la tesi, sfruttando il linguaggio di programmazione Java; tale linguaggio è ampiamente usato in Internet per la sua natura universale, non legato ossia alla piattaforma operativa su cui lavora, che gli permette un utilizzo maggiore. Implementando con apposite librerie il pacchetto base di Java, è possibile consentire la manipolazione, in tempo reale, di file contenenti testi elettronici. 1.1 Obiettivi Nell ambito dell utilizzo sempre maggiore della rete da parte dell utente universitario e non, spesso come base di ricerca per materiale interente ai propri studi, si è portati all ausilio di Internet come fonte per la diffusione e reperibilità di materiale didattico; si è pensato, quindi, di sviluppare il progetto di raccolta e distribuzione di appunti universitari. È necessario, da un lato, garantire la facilità con cui reperire le informazioni riguardanti l argomento desiderato e le loro consultazioni, mentre occorre altresì tutelare l autore degli scritti da eventuali violazioni dei diritti di copyright. Inoltre, solitamente, il testo digitale che viene inviato per la pubblicazione on-line dagli autori è allo stato grezzo, ossia non contiene tutte le informazioni tali da poter essere immesso nella rete al ricevimento dello stesso; occorrerà, quindi modificarlo, aggiungendo, ad esempio, l intestazione o il piè pagina, al fine di renderlo un oggetto completo. Tale procedura non dovrà essere complicata e lunga, in modo da pesare troppo sul costo dell elaborato; per sveltire ulteriormente questa elaborazione del testo da inviare, si è deciso di privilegiare l aspetto di automazione del progetto per alleggerire il lavoro umano nella catena di produzione dei prodotti finali, garantendo la personalizzabilità dei risultati in base alle richieste, mediante l utilizzo di apposite librerie che creano la copia in tempo reale del prodotto. I passi da compiere in questo procedimento vanno dall elaborazione della copia grezza all impaginazione del documento fino alla protezione dello stesso da accessi indesiderati. La copia grezza dovrà essere impaginata secondo certe regole per rendere il prodotto simile ad un libro e facilmente consultabile creando così un Pagina 4

8 documento master che rappresenta l essenza digitale della copia cartacea. Per sopperire alle esigenze di copyright si elaborerà ulteriormente il documento prima della spedizione al singolo studente interessato; egli potrà visionare la buona fattura del prodotto, prima del pagamento, sia in termini di editoria che di contenuti e valutarne così l acquisto. La realizzazione di tali passi viene resa automatica dall integrazione di ambienti esistenti con applicazioni scritte ad hoc alleggerendo così le competenze di chi gestirà l intera struttura. 1.2 Risultati La scelta della soluzione implementata è stata condizionata dalla facilità d uso e completezza della libreria su cui operare e dalla sua integrabilità con sistemi esterni appropriati. Poiché la scelta dell editoria elettronica fatta si basava su tecnologia PDF (Portable Document Format), formato che, oltre ad essere portabile, ha una struttura robusta che si adatta bene alle esigenze della rete, ci si è trovati di fronte a numerose librerie, create appositamente per la manipolazione e la creazione in tempo reale di documenti; ci si è quindi orientati verso la scelta di un prodotto versatile e in continuo aggiornamento, che garantisca una migliore possibilità di sviluppo futuro; dopo una fase iniziale di analisi di queste librerie, si è pensato di sviluppare il progetto utilizzando le librerie di itext. La società che ha ideato queste librerie, fornisce agli sviluppatori la versione gratuita delle stesse, grazie alla quale si è potuto personalizzare ed ampliare le possibilità offerte dagli ambienti di sviluppo esistenti, realizzando un prodotto finito e specifico per il nostro scopo. Le fasi di sviluppo e modifica del documento grezzo comprendono il passaggio al documento master in cui viene aggiunta una copertina, recante il titolo e gli autori, nonché il logo e l indirizzo web del sito informatico; viene altresì aggiunto il codice identificativo del documento e le informazioni sul copyright. Su ogni pagina è aggiunta un intestazione, recante il titolo, eventualmente tronco, e il sito, oltre ad un piè di pagina, in cui sono riportati il progressivo di pagina e il nome dell autore, oltre al codice del documento. Altre funzioni sono relative alla creazione di documenti ridotti in numero di pagine per Pagina 5

9 permettere la visione dell elaborato a chi è interessato, oppure di copie distribuibili a scopo pubblicitario. A livello di sicurezza, si è voluto proteggere il prodotto distribuibile in modo da evitare la modifica sia accidentale che maliziosa dei contenuti; per questo motivo si prevede anche la possibilità di proteggere in modo diversificato i vari documenti. I dati relativi alla creazione del documento master possono essere o forniti da un operatore, o reperiti attraverso un database, mentre le altre procedure vengo eseguite in automatico, recuperando le informazioni necessarie dal database, contenente autori, titolo, codice del prodotto, ecc. Ciò al fine di rendere più automatica e veloce possibile la procedura che consente la creazione e vendita dei documenti in rete, poichè in questo caso il costo maggiore per l utente è appunto il tempo di attesa che passa dall acquisto al ricevimento del file voluto. Pagina 6

10 Capitolo 2 elettronica Commercio ed editoria Con l appellativo Commercio Elettronico (e-commerce) si identifica comunemente la possibilità di acquistare beni, di diversa natura, attraverso Internet. Tuttavia l e-commerce è un attività articolata e complessa con obiettivi precisi. Esso non è quindi propriamente un servizio di Internet o di una qualsiasi rete telematica, ma nel suo insieme è un attività umana "tradotta" in un linguaggio differente da quello "materiale", ma i vantaggi che ne emergono possono essere enormi e sono intrinsechi nel nuovo sistema. Le possibilità offerte sono talmente flessibili da aver permesso lo sviluppo che oggi vediamo sulla rete ed hanno anche trascinato l economia verso nuove soluzioni. 2.1 E-Generation L esplosione di questo fenomeno segna simbolicamente una tappa importante nell evoluzione della società umana: il raggiungimento di un grado di sviluppo tecnologico tale da poter accogliere e gestire in un sistema virtuale un sistema reale. In questa trasposizione, con perfetta analogia, si hanno soggetti, regole, ordinamenti, servizi, strutture, prodotti e relazioni E-Business L e-business esiste concettualmente da qualche anno e racchiude al suo interno tutte quelle attività come il commercio elettronico che possono essere svolte mediante infrastrutture informatiche. L e-commerce si amplia verso i servizi finanziari nel virtual banking e può estendersi verso tutta la catena del valore che contraddistingue la nascita, la produzione, la distribuzione e vendita di un bene. Ancora, appartenenti all e-business possiamo collocare: Pagina 7

11 l informazione l intrattenimento la didattica tre settori molto promettenti in quanto veicolano beni immateriali particolarmente adatti alla virtualizzazione Definizione e tipi di E-Commerce Il commercio elettronico è costituito da operazioni che coinvolgono imprese e individui, mirate allo scambio di beni materiali o immateriali a cui è assegnato un valore, attraverso un infrastruttura informatica o una rete di telecomunicazione. In generale il commercio elettronico si estrinseca attraverso lo scambio di informazione che può essere codificata in qualsiasi modo ed inserita in una procedura di acquisto, che prevede una transazione economica; le parti che partecipano ad un operazione di commercio elettronico definiscono la tipologia di quest ultimo. Non vi è un unica forma di Commercio Elettronico, perché gli ambienti nei quali si svolge l attività commerciale e i soggetti coinvolti possono avere natura diversa, ad esempio si può rivolgere al cliente finale, all agente, alla filiale internazionale o al fornitore. È evidente che le esigenze da soddisfare dipendono in modo significativo dalle dinamiche commerciali e dalla tipologia dei soggetti che si vuole coinvolgere, e ciò finisce anche per influenzare la scelta degli strumenti tecnologici che un azienda adotta per fare commercio on-line. Questa precisazione ci porta a identificare quattro tipi fondamentali di Commercio Elettronico: Business to Business. Nella categoria B-to-B (Business to Business) rientrano tutte quelle transazioni nelle quali i soggetti coinvolti siano due o più aziende. Tipicamente un impresa potrebbe utilizzare la rete per inoltrare ordini ai propri fornitori, acquisire documentazione sui prodotti, ricevere o Pagina 8

12 effettuare pagamenti. È il tipo di commercio che esite da più tempo, come precedentemente citato. Business to Consumer. La categoria B-to-C (Business to Consumer) comprende, invece, i processi di vendita al dettaglio. I soggetti coinvolti sono l azienda, che offre i propri prodotti, ed il consumatore finale; l esplosione di questa tipologia di Commercio Elettronico ha coinciso con la capillare diffusione di Internet negli uffici, nelle case, nelle scuole e se da un lato questo nuovo media ha permesso ad aziende di tutto il mondo, di entrare in contatto diretto con consumatori altrimenti difficilmente raggiungibili, dall altro, per i consumatori stessi, si è aperta la possibilità di avere accesso ad una offerta straordinariamente ampia di prodotti, stando comodamente seduti davanti al proprio computer. Consumer to Consumer. Questa è una forma più recente di Commercio Elettronico, salita alla ribalta dell attenzione e della popolarità grazie al forte sviluppo sulla Rete dei siti di aste on-line. Su questi siti gli utenti della Rete possono scambiare tra loro prodotti secondo il modello dell asta. Intra-Business. È questo il caso che coinvolge un azienda con sedi distribuite sul territorio o un insieme di aziende appartenenti allo stesso gruppo. In tali situazioni le esigenze di scambio di beni e servizi all interno delle unità della struttura possono essere soddisfatte attraverso la Rete ed essere accompagnate da un rendiconto economico. Le principali caratteristiche del commercio intraaziendale sono molto simili a quelle del B-to-B con la restrizione che di norma il gruppo di soggetti coinvolti è rigorosamente chiuso, la classificazione dei prodotti è già data e la transazione economica passa in secondo piano (può essere eseguita a distanza di tempo, a consuntivo). Pagina 9

13 2.1.3 Obiettivi e vantaggi dell E-Commerce L obiettivo principale dell e-commerce è quello di svincolare totalmente il mercato da fattori temporali e spaziali con le relative conseguenze, ossia il compratore non è più vincolato ad orari predefiniti e non si deve più preoccupare di raggiungere fisicamente il luogo dove avviene la vendita: può accedere in qualsiasi momento da casa propria o dall ufficio teoricamente a qualsiasi bene. Il primo risultato è che il problema relativo alla godibilità di un bene in relazione alla disponibilità sul territorio si risolve, poiché Internet è un mondo senza confini la cui metrica non ammette la dimensione spaziale. L acquirente che compra attraverso Internet può accedere ad insiemi di informazioni che, a volte, sono difficilmente reperibili nel caso di commercio tradizionale e può avvalersi di servizi personalizzati, più confacenti alle proprie aspettative, che si riflettono anche nell assistenza pre e post-vendita. Inoltre l acquirente, data l ampia offerta, ha la possibilità di monitorare e selezionare i prezzi più convenienti in assoluto. A questi vantaggi per il compratore, specularmente, emergono vantaggi anche per il produttore/venditore di beni; infatti possiamo identificare due benefici: il primo coinvolge la razionalizzazione dei processi tradizionali, mentre il secondo introduce nuovi elementi di competizione. La maggiore conoscenza delle esigenze dei clienti, disponibile dai meccanismi dell e-commerce, fa sì che l impresa possa personalizzare sempre di più l offerta e la padronanza di processi produttivi diventi più agile e flessibile. Tutto ciò produce un aumento di competitività ed una teorica riduzione dei prezzi all utente finale. Infine, ma forse elemento più importante, l e-commerce riduce drasticamente il livello di ingresso nei vari mercati ridimensionando l aspetto finanziario a favore di quello di marketing e di prodotto. In altre parole esso attenua drasticamente il livello di rischio nel raggiungere e operare in nuovi mercati. Pagina 10

14 2.2 Problemi relativi al commercio elettronico Il flusso di dati che è andato via via aumentando in Rete, anche grazie al commercio elettronico, ha causato reali problemi sulla gestione di tale attività, sia in termini di sicurezza per l utente, che di affidabilità dei sistemi informatici da parte delle aziende che vi operano. Non si vuole certo scrivere un elogio a tale sistema di scambi, bensì presentarne obiettivamente vantaggi e svantaggi ed analizzare le problematiche Software e sicurezza Uno dei problemi più rilevanti relativi a questo riguarda il software da utilizzare e la sicurezza che esso garantisce. Tenendo conto che sulla rete e sul server del sito in esame sono presenti informazioni riguardanti i clienti, bisogna garantire riservatezza ed impossibilità di accessi non desiderati. Si richiede quindi software di gestione delle transazioni, sistemi operativi ed applicazioni fault tolerant inattaccabili da pirati informatici. Proprio per la difficile risoluzione di questi problemi ancora non ci si fida completamente ad utilizzare la carta di credito come mezzo di pagamento attraverso la rete; ciò è dovuto anche alle intrusioni di alcuni hacker che tendono a violare siti della Rete, a volte per puro divertimento, altre come obiettivo distruttivo, dimostrando quanto sia difficile garantire la totale immunità del sistema. Le soluzioni adottate sono molteplici e spaziano dal semplice pagamento al corriere, utilizzabile in caso di spedizione fisica di materiale, all utilizzo di tessere prepagate che limitano i danni in caso di carpimento del codice di utilizzo, fino all uso di transazioni sicure con crittografia e firma digitale che si appoggiano direttamente alla banca del cliente Spedizioni ed affidabilità Un altro punto critico relativo al suddetto discorso riguarda le spedizioni fisiche di beni materiali acquistati in rete e la velocità di ricevimento; considerata la lentezza delle spedizioni terrestri, molte volte si è propensi a consultare la Rete Pagina 11

15 per avere nozioni sul prezzo, oppure informazioni tecniche, e verificare la disponibilità nel proprio territorio dell oggetto, piuttosto che aspettare la tempistica delle spedizioni ordinarie; altrimenti, per ottenere il bene in tempi brevi, occorre aggiungere al costo base, spese ulteriori per mezzi più veloci, rendendo poco competitivo il prezzo. Questi deterrenti non si presentano invece nel commercio di beni interamente digitali, come programmi, musica e documentazione, che possono venire spediti grazie ai servizi Internet. Un punto chiave per sviluppare questo commercio è garantire affidabilità; a causa della vastità ed eterogeneità della rete, potrebbero sorgere, come già si ricorda, negozi virtuali fantasma dediti solo a rubare informazioni personali dei clienti e numeri validi di carte di credito. Chiaramente il requisito fondamentale di un negozio virtuale è guadagnarsi e mantenere la fiducia del cliente. La possibilità di muoversi su mercati globali e quindi di disporre di un gran numero di prodotti equivalenti tra cui scegliere, magari irreperibili nei negozi a causa di fattori geografici o economici avversi, è il grande vantaggio del commercio elettronico; esso però deve avere requisiti di sicurezza ed affidabilità, superiori ad un esercizio di vecchia concezione, molto difficili da ottenere, a causa dell impersonalità del contatto col pubblico. 2.3 Editoria Elettronica Uno sguardo attento si deve volgere allo sviluppo dell editoria elettronica, poiché grazie alla sua facile trasformazione dal supporto cartaceo tradizionale, al mezzo elettronico, ne fa uno dei migliori candidati all e-commerce. Mezzi di informazione tramite stampa e supporti elettronici, coesistono da svariati anni; dallo studio sull'andamento del mercato non sembra ci siano segnali sostanziali di riduzione per la stampa, mentre la forbice dei ritmi di crescita dei due settori si sta allargando sempre più. Il formato elettronico, però, non sembra a breve scadenza poter intaccare il ruolo primario di quello stampato, a causa di vantaggi intrinseci quali comodità, portabilità, familiarità. A fronte di questi punti di forza l'editoria elettronica si propone con altrettante peculiarità interessanti e perlopiù alternative sull'uso e nei contenuti. Pagina 12

16 Grazie all'estrema semplicità di diffusione su Internet e WWW, recentemente un'altra questione sta assumendo una consistenza che va oltre al semplice formalismo: la certificazione della qualità e/o l'identificazione della fonte di informazioni. Quest'ultimo punto con l'esplosione delle pubblicazioni su WWW sta assumendo sempre una crescente importanza; infatti essendo ogni utente di Internet un potenziale editore, l'autorevolezza e l'autentificazione del fornitore di informazioni pone sempre più problemi di certificazione e di competenza. Lo scenario dell'editoria on-line su Internet presenta tre possibili contesti di produzione: Editoria tradizionale Rappresentano la maggior parte dell'editoria elettronica, dove un precedente prodotto già esistente su supporto cartaceo tradizionale viene riprodotto in formato digitale. Organizzazioni Intermediarie Sono delle società il cui scopo è quello di realizzare servizi editoriali elettronici partendo da dati forniti da un editore tradizionale. Lo scopo è quello di realizzare dei prodotti sofisticati, tramite specifiche competenze tecniche e organizzative, evitando l'onere all'editore tradizionale. Editoria multimediale Sono i nuovi soggetti che pensano al prodotto esclusivamente in funzione del supporto utilizzato, sfruttando completamente tutte le nuove capacità. La vera differenza che separa questo genere di editoria da quella cartacea è l'ingegnerizzazione dei contenuti e del flusso di produzione Cenni storici: tecnologie editoriali L'era della stampa a livello di processo industriale iniziò con la creazione del tedesco Johann Gutemberg dell'omonimo torchio. La novità essenziale di questo sistema consisteva nell'utilizzare caratteri mobili nella costruzione della matrice di Pagina 13

17 stampa, anziché essere costituita da un unico modulo. Solo nel 1814 la macchina per la stampa di Koening apportò una prima sostanziale modifica utilizzando l'energia termica al posto della fatica umana. Nel 1866 la prima macchina rotativa (dal nome Walter) entrò in funzione nella tipografia del Times di Londra. La sua novità consisteva nell'utilizzare una matrice cilindrica per la stampa, in maniera da realizzare un processo continuo di riproduzione con movimento rotatorio, enormemente più produttivo del precedente metodo. Nel 1886 la macchina denominata linotypè cambierà la maniera di comporre tipograficamente le pagine: il procedimento, totalmente manuale, di reperimento ed inserimento dei singoli caratteri diventa meccanicamente automatico mediante l'uso di una apposita tastiera. Il successivo passo è costituito dalla nascita della fotocomposizione intorno al In tale processo il tipografo agisce ancora su di una apposita tastiera che però, incide direttamente su una particolare pellicola usando un principio chimicofotografico saltando il procedimento meccanico. Con ciò finisce l'età del piombo fuso e della lavorazione a caldo ed inizia l'era della lavorazione a freddo, in cui la composizione viene gestita sempre più tramite l'elaboratore elettronico. Oggi l'uso di tecnologie informatiche è stato esteso all'intero processo di produzione del giornale; si è così ottenuto il passaggio del modello produttivo da quello tipografico a quello redazionale. Questo significa cioè integrare la produzione in un unico flusso, ovvero non dover scrivere i pezzi giornalistici in redazione e quindi rivederli a posteriori per motivi di impaginazione in sede tipografica, ma creare il formato finale di impaginazione ed i relativi testi direttamente a partire dai giornalisti in redazione, in maniera interattiva ed autonoma, riducendo costi e tempi Il formato digitale e le nuove tecnologie La fornitura di servizi informativi on line su Internet è iniziata negli Stati Uniti, con l'editoria telematica in varie forme nelle modalità e nei contenuti. Un primo livello di diffusione di editoria telematica è costituito tecnicamente dalle newsletter, ovvero diffuse periodicamente, a pagamento o meno, Pagina 14

18 dall'editore ad una lista di utenti abbonati (mailing list); spesso le mailing list vengono affiancate da servizi Gopher. In quest ultimo modo cambia la modalità di diffusione: non è più l'informazione che viene effettivamente spedita all'utente registrato su iniziativa dell'editore, ma è l'utente che richiede i dati (in maniera registrata o meno) nei tempi e nei modi che risultano a lui più congeniali. Questa modalità di diffusione delle informazioni su Internet tecnicamente può essere realizzata essenzialmente attraverso tre strumenti principali e cioè in ordine di creazione cronologica con: File Transfer Protocol Gopher World Wide Web (WWW) La pubblicazione tramite quest'ultimo sistema permette quindi di avere i vantaggi dell'architettura WWW quali essenzialmente la multimedialità e la possibilità di interagire, come ad esempio nelle interrogazioni su di un archivio o, più generalmente, con qualsiasi altra funzione realizzabile dal fornitore. Secondo Philip Barker, professore dell'interactive System Research Group dell'università di Tesside in Inghilterra, i principali limiti che può accusare l'editoria cartacea tradizionale rispetto a quella elettronica sono: la difficoltà di riproduzione i costi di diffusione l'impossibilità di condivisione di singole copie la difficoltà di aggiornamento l'ingombro fisico la fragilità del supporto la mancanza di reattività sui contenuti l'impossibilità di usare suoni ed animazioni Pagina 15

19 l'incapacità di monitorare direttamente l'attività del lettore e di giudicarne il livello di comprensione l'impossibilità d'autoconfigurarsi rispetto all'utente. A fronte di questi limiti brillano i vantaggi dell'editoria elettronica che possono essere elencati essenzialmente in: multimedialità enorme durata nel tempo abbattimento dei costi di diffusione tempestività di diffusione per le informazioni on-line interattività. Nell'ultimo importante punto possiamo rintracciare tutte le funzionalità aggiuntive che può sviluppare l'informatica su una base informativa (ipertesti - ipermedia - interrogazioni agenti intelligenti) Passaggio da carta a digitale In generale, per convertire il documento da formato cartaceo ad elettronico, si hanno due modi: o lo si copia manualmente tramite la tastiera del pc, un lavoro lungo e noioso, oppure più agilmente si trasferisce un immagine che rappresenta la sorgente dei dati, tramite uno scanner ottico. Si deve considerare che quest ultimo, pur essendo un procedimento più breve del precedente, presenta degli inconvenienti come il bilanciamento della risoluzione dell immagine ed il numero di livelli di grigio con la quantità di memoria utilizzata e la qualità dell'immagine trasferita, oltre al fatto che se il testo è scritto a mano, il rilevamento dei caratteri spesso non è completo, e quindi occorre ripassare il documento per correggere eventuali errori. Se si tiene conto della risoluzione media desiderata e si considerano sia la lettura del testo a video sia la stampa si nota che una risoluzione di 300 dpi è sufficiente per leggere bene un documento da un monitor mentre non lo è se si desidera stamparlo; aumentando la risoluzione Pagina 16

20 a 1200 dpi migliora notevolmente la qualità di stampa a scapito di maggiore occupazione di risorse. Scansioni di pagine stampate possono essere sottoposte a tre o quattro filtraggi spaziali durante l elaborazione, ma soltanto con prove ripetute si possono evitare fastidiosi pattern di Moirè, ne sono un esempio le bitmap che contengono sia immagini che testo. Un'altra considerazione importante riguarda il formato JPEG che, pur fornendo elevate percentuali di compressione riducendo le componenti ad alta frequenza (i particolari), non dovrebbe essere utilizzato su bitmap contenenti testo e grafica poiché si rischia di rendere illeggibili le parole. Non si vuole comunque approfondire tale argomento in quanto già ampiamente trattato da vari applicativi commerciali e quindi inutile ai fini dell elaborato Copyright Il problema aperto per eccellenza rimane la concezione di copyright, in particolare nel campo dell'informazione on-line, facilmente duplicabile e ridistibuibile. Il maggiore ostacolo al pieno sviluppo dell'editoria elettronica risiede nella difficoltà di individuare criteri di tutela della paternità intellettuale di opere circolanti sulla rete. A differenza di quanto avviene con le pubblicazioni a stampa, nell'ambiente digitale l'informazione può essere catturata, manipolata e alterata senza che di ciò resti traccia, se non si pongono limiti. Il mondo di Internet, riguardo al copyright, è assai incerto, sfumato, ricco di contraddizioni e finora non si sono registrati precisi interventi legislativi in difesa di un patrimonio culturale così vasto e importante. Ma se è vero che "copiare" nell'era digitale è più veloce, più economico e più facile che in passato, è altresì vero che autori ed editori possono esercitare un ruolo "educativo", comunicando via rete con i propri interlocutori ed indicando quale è il possibile impiego dei materiali messi a disposizione: si viene così a stipulare una sorta di contratto morale che permette di incentivare le prospettive dell'editoria elettronica evitando un uso scorretto dei documenti. Pagina 17

21 2.4 E-Book Sempre maggiormente, nel ramo dell editoria elettronica, prende campo l e-book, visto come naturale sviluppo di questo commercio, tanto che il 19 aprile 2002 ha visto la nascita della International ebook Association, il cui obiettivo sarà di supportare la crescita del mercato dell ebook; infatti la Microsoft Corporation ha annunciato la nascita della IeBA, una nuova organizzazione con sede in Europa che supporterà la comunità mondiale dell ebook, promuovendo le crescenti opportunità e le grandi potenzialità offerte dal settore del libro elettronico. La nuova associazione intende proseguire il lavoro pionieristico svolto dalla International ebook Award Foundation (IeBAF), che cesserà la propria attività alla fine di aprile. La nuova organizzazione International ebook Association (IeBA) nasce con l obiettivo di risolvere le criticità che l editoria elettronica si trova ad affrontare e facilitare la diffusione del libro elettronico, promuovendo inoltre nuovi riconoscimenti internazionali per il settore degli ebook. Molto è anche dovuto al recente Reader realizzato dalla società promotrice, ma la Microsoft non è la sola società impegnata in tal senso, tanto che si è sentita la necessità di un protocollo di regolamentazione, sviluppatasi con la creazione dell EBX (Electronic Book Exchange). Tale sviluppo ha permesso anche nuove nascite commerciali on-line, come ad esempio la EvolutionBook (www.evolutionbook.com), che dal 1999 opera nel settore degli e-book, con lo scopo di far nascere anche in Italia interesse da parte del pubblico verso il libro elettronico, costruendo un sito interamente dedicato a questo mondo editoriale, dalla commercializzazione dei semplici testi elettronici, alla descrizione dei software e hardware in commercio per la lettura di e-book, divenendo in pochi anni una delle realtà più dimaniche presenti nel settore. Tratteremo in questo paragrafo brevemente dello standard EBX e di alcuni tipi di reader EBX Questo standard, è nato principalmente per fornire un supporto sicuro al commercio elettronico degli e-book. Infatti, incorpora al suo interno delle estensioni al protocollo HTTP, che permettono di creare connessioni più sicure tra Pagina 18

22 due server e, tra un server e un client. Non è assolutamente necessario conoscerlo per acquistare un e-book, è come dire che per navigare in internet bisogna conoscere in dettaglio l'http, il TCP/IP ecc.. Il principio su cui si basa è l'uso di una doppia coppia di chiavi, una simmetrica (ovvero la chiave di crittazione e quella di decrittazione sono identiche) e l'altra asimmetrica (le due chiavi, una di lettura e l'altra di scrittura, sono diverse e, avendone una si può risalire alla seconda solo con una serie di calcoli che, attualmente, impegnerebbero i computer più potenti del mondo per migliaia di anni). Con la prima viene crittato il contenuto della pubblicazione, la seconda coppia di chiavi viene usata per le transazioni. Quest'ultime adottano il seguente metodo, il server (o il client) che deve acquistare il libro, invia la richiesta al server che è preposto alla vendita per quel tipo di server richiedente. Spieghiamo, un server di un distributore farà la richiesta a quello dell'editore. I server delle librerie online, la faranno a quello del distributore. Infine, i programmi client che potremo installare nei nostri PC, faranno le richieste ai server delle librerie online. Ogni passaggio è una transazione commerciale vera e propria. Ovvero, il distributore acquista dall'editore e vende alla libreria online e così via. Ogni volta che viene inviata una richiesta, il server (o client) richiedente allega la propria chiave di scrittura (pubblica, cioè tutti possono usarla per crittare documenti da inviargli), con la quale verrà crittata la chiave simmetrica per decrittare il contenuto dell'ebook. Il richiedente, dopo aver ricevuto l'e-book, decritta la password simmetrica, utilizzando la sua chiave di lettura (privata, ossia non deve essere mostrata a nessuno, pena la decadenza dei requisiti di sicurezza e quindi la possibilità di ognuno di decrittare il file senza averlo acquistato). Con la chiave simmetrica decrittata può decrittare il contenuto dell'ebook e quindi leggerlo. L'iter può sembrare complesso, ma rileggendo i passi precedenti, con la dovuta calma si riesce a capire in maniera sufficientemente rapida. Un'ultima nota, riguarda il voucher (ricevuta) che viene utilizzato per stabilire, tra le altre cose, i diritti posseduti su un e-book ("cedibile", "prestabile", "stampabile") e lo status attuale ("posseduto", "prestato" o "preso in prestito"). Per esempio, se il mio e- Pagina 19

23 book è "prestabile" e lo presto ad un mio amico per 10 gg., io avrò, nel mio e- book reader, una copia dell'e-book ed un voucher con status "prestato". Lui avrà, nel suo e-book reader un'altra copia dell'e-book ed un voucher con status "preso in prestito". Entrambi avremo nel voucher un timeout di 10 gg., durante i quali, la copia presa in prestito sarà utilizzabile e la mia no. Allo scadere del tempo accadrà il viceversa. E chi possedeva la copia in prestito non potrà più leggerla a meno che, non venga fatto un nuovo prestito. Per effettuarlo, ogni volta si deve compiere un transazione in EBX (svolta in automatico dai software che che supportano questo standard e, in pochi secondi). Se la copia viene ceduta, invece, verrà cancellata dal nostro ebook reader e trasferita nell'e-book del destinatario insieme al voucher. L'ultimo diritto è quello di stampare. Nel voucher, quando è presente il permesso "stampabile", c'è scritto il numero di copie che si possono stampare e, se sono copie dell'intero libro, di singoli capitoli, paragrafi o pagine E-Book reader devices Distinguiamo principalmente tre tipi di reader hardware, ossia strumenti fisici che permettono la lettura di e-book in modo maneggievole e portatile: Lettori dedicati : rappresentano gli ebook reader devices per eccellenza dato che sono stati concepiti per rispondere alle esigenze di lettori di testi in formato elettronico; Palm e PocketPC : tali ebook reader devices in realtà sono dei dispositivi la cui natura è quella di essere a metà tra un organizer e un computer portatile. Sono dotati molto spesso di (versioni appositamente rivisitate) sistemi operativi. Il loro prezzo è più elevato rispetto a quello dei LETTORI DEDICATI. Tablet PC : rientrano in questa categoria tutti gli ebook reader devices specificamente progettati per avere un'esperienza completa e multimediale nella navigazione in Internet. Nati nel momento in cui si pensava potessero conquistare il mercato i SET TOP BOX (cioè dei dispositivi esclusivamente pensati per la navigazione su Internet completamente Pagina 20

24 indipendenti dal PC, ma con un potenza a volte paragonabile ai NoteBook) sono stati riconvertiti alla funzione di ebook reader (non dedicati) per sfruttare il settore dell'editoria elettronica. Le caratteristiche tecnologiche presenti sui questi dispositivi giustificano un prezzo piuttosto elevato rispetto alle altre due famiglie di lettori ebook Reader Software Sono software nati per i diversi dispositivi di lettura hardware (pc, notebook, pocket pc, etc.). Tra i più famosi citiamo: - Microsoft Reader Il Microsoft Reader risulta essere uno dei lettori software ebook più intuitivi attualmente presenti sul mercato. Nelle sue varie evoluzioni oggi è giunto alla versione 2.0 e può essere considerato probabilmente il software più diffuso. Utilizza la tecnologia ClearType grazie alla quale le parole sullo schermo vengono visualizzate quasi con la stessa nitidezza delle parole in una pagina stampata; la stessa migliora fino al 300% la risoluzione su schermi LCD per fornire un tipo di visualizzazione molto definita. Il layout è semplice e ordinato, i margini ampi, la spaziatura, l'interlinea e la crenatura appropriate. Il Microsoft Reader presenta vantaggi in termini di portabilità, memorizzazione e altre funzionalità digitali, quale la capacità di trovare una parola o una frase specifica ogni volta che appare nel testo, nonché un modo semplice per cercare definizioni con rapidità. In Microsoft Reader 2.0 per PC e computer portatili per Windows e Pocket PC con sistema operativo Windows, è possibile memorizzare tanti libri quanti ne può contenere il dispositivo in uso. Microsoft Reader consente inoltre di eseguire le stesse operazioni che si compiono quando si legge un libro stampato, ad esempio aggiungere segnalibri e note ai margini. È quindi possibile visualizzare nuovamente in un'unica posizione tutte le note ai margini, quali segnalibri, disegni ed evidenziazioni. La versione corrente di Microsoft Reader supporta funzionalità per testo, immagini e audio. Viene fornito anche il supporto per HTML e collegamenti HTML. Ulteriori formati, quali flussi video, verranno supportati Pagina 21

25 nelle versioni successive. Non esistono attualmente progetti di sviluppo di versioni di Microsoft Reader per altre piattaforme (Macintosh, Palm o Linux). - Acrobat ebook Reader L'Acrobat ebook Reader deriva dal precedente lettore Glassbook Reader. Giunto ormai alla versione 2.2 questo lettore si presta ad essere molto versatile ed intuitivo. Grazie alla combinazione di visualizzazioni per la lettura vivide ed eleganti e di un'interfaccia altamente funzionale, Acrobat ebook Reader fa assaporare tutto ciò che i libri elettronici hanno da offrire. E' dotato della tecnologia CoolType per una migliore leggibilità dei "font" e consente il cosiddetto "riflusso del testo" (caratteristica che permette a seconda della grandezza della pagina e del fattore di zoom adottato, di mandare il testo a capo automaticamente). Questo software di lettura consente di visualizzare i libri elettronici completi di immagini, grafica e i sofisticati font con la stessa tecnica e le stesse modalità utilizzate per i libri stampati. Non poteva che essere così visto che, oltre a ricevere l'eredità dal lettore software della Glassbook, emula i migliori pregi del noto programma di lettura dei documenti in formato.pdf : Acrobat Reader. La versione corrente di Acrobat ebook Reader supporta funzionalità per testo, immagini e audio. Ulteriori formati, quali flussi video, verranno supportati nelle versioni successive. L'Acrobat ebook Reader può essere installato su tutti i dispositivi hardware attualmente in commercio: PC, portatili (notebook), palmari, pocket pc Il futuro degli e-book nella carta riscrivibile? Lo Xerox Palo Alto Research Center è un centro in cui l'editoria elettronica, fra le altre cose in progetto, farà passi da gigante. L'ultima delle invenzioni di questo vulcanico laboratorio è un tipo di carta elettronica riusabile: il Gyricon. Questo nuovo tipo di carta sarà, per molti aspetti, simile alla carta che usiamo tutti i giorni. Avrà uno spessore ed un peso non distinguibili da un foglio di carta ed anche il suo costo dovrebbe essere di poco superiore. Una differenza, però, c'è: questa nuova carta elettronica sarà riscrivibile migliaia di volte. Il suo impiego Pagina 22

26 ideale è per display per portatili a basso consumo, cartelloni pubblicitari riscrivibili e naturalmente display per ebook! Passando all'aspetto puramente tecnico, possiamo descriverla come una carta elettronica riusabile (electronic reusable paper) che sfrutta una nuova tecnologia di visualizzazione chiamata Gyricon, appunto. Un foglio Gyricon è uno strato sottile di plastica trasparente, nel quale sono dispersi milioni di piccoli grani. Questi grani, ognuno contenuto in una cavità riempita d'olio, sono liberi di rotare all'interno della stessa cavità. Sono bicromatici, ovvero sono sfere colorate per metà con un colore chiaro e per l'altra metà con uno scuro che faccia contrasto (per esempio, bianco e nero, oppure rosso e bianco). Inoltre, hanno cariche opposte sulle diverse facciate, in modo da costituire un dipolo. Se un voltaggio è applicato sul foglio Gyricon, essi si dispongono presentando una delle loro facce, a seconda di quale carica è stata trasmessa. Ovviamente, può essere esercitato un voltaggio differente per ogni zona allo scopo di disegnare dei motivi. In questo modo si possono creare testi ed immagini che persistono fino a quando un nuovo voltaggio verrà applicato. Verrà immesso il Gyricon Printer; questo processo di creazione di immagini può essere fatto manualmente con delle stilo caricate elettronicamente, oppure tramite dispositivi elettronici che possono stampare su fogli Gyricon usando testine cariche elettronicamente. Alcuni di questi dispositivi, che sono stati recentemente progettati, hanno una dimensione che dovrebbe consentirgli di stare all'interno di borse o portafogli! Un'altra applicazione è quella di sfruttare le matrici elettroniche usate per gli LCD allo scopo di produrre display a basso consumo e senza bisogno di retroilluminazione. Una partnership con la 3M ha permesso di avviare una produzione dell'electronic reusable paper, in quantità tale da essere adatta ad un uso commerciale. Pagina 23

27 Capitolo 3 - PDF TM, Java e itext In questa parte tratteremo, in modo generico, del formato elettronico PDF, poiché è a larga maggioranza ritenuto il più adatto ad essere modificato sotto certe condizioni, protetto da accessi maliziosi e utilizzabile con applicativi disponibili gratuitamente per il pubblico; una breve trattazione sul linguaggio Java introdurrà poi una panoramica sulla libreria itext, citando gli ideatori di questo progetto e quali sono le possibili realizzazioni che permette di eseguire mediante le sue librerie. 3.1 PDF Il Portable Document Format è stato progettato per l interscambio di documenti in modo che il ricevente veda esattamente il documento come è stato creato indipendentemente da diverse elaborazioni fatte su di esso. La principale differenza con gli altri formati è che il PDF è concepito come un formato di descrizione delle pagine; ne risulta che ogni pagina contiene le informazioni utili alla visualizzazione e può essere isolata dalle altre. Il PDF viene generato dal PostScript ma non ne contiene la complessità per cui una pagina generata da diversi programmi sarà sempre la stessa. Esso è progettato con buone caratteristiche di sicurezza e crittografia e la sua diffusione in rete ha fatto nascere numerosi software freeware che permettano la lettura di tale tipo di documenti Caratteristiche del formato PDF Per valutare le potenzialità del PDF si devono prendere in considerazione diversi aspetti legati sia alle caratteristiche di alto livello, visibili agli utenti finali, sia a quelle di basso livello, più strettamente riguardanti gli aspetti implementativi del formato stesso e dei file che lo utilizzano. Si possono quindi distinguere: Pagina 24

28 Adobe Imaging Model È la rappresentazione grafica e testuale utilizzata, che coincide con quella usata dal linguaggio PostScript. Ne risulta una divisione in pagine nelle quali vengono inseriti elementi di varia natura, che possono essere caratteri, regioni definite tramite combinazioni di linee e curve, o immagini in formato digitale. Ogni immagine può essere mascherata in modo da renderne visibile soltanto una parte. Inizialmente una pagina viene descritta completamente vuota, successivamente vengono aggiunti dei marker che delimitano sezioni di pagina; ogni marker può essere sovrapposto ad altri limitandone la visibilità; sono simili a quelli utilizzati nel Postscript ma non essendo il PDF un linguaggio di programmazione viene esclusa la possibilità di utilizzare procedure, variabili e strutture di controllo. Viene migliorata l efficienza a scapito della flessibilità definendo un set di operazioni ad alto livello implementate direttamente in codice macchina e non in Postscript rendendo più veloce la visualizzazione e la stampa delle pagine. Portabilità Un PDF è un file binario in cui viene utilizzato l intero set di caratteri a 8 bit. Sfortunatamente alcune applicazioni usano un set di caratteri stampabili a 7 bit, come per esempio alcuni programmi di posta, e non garantiscono la corretta interpretazione di certi caratteri come i fine linea. Per garantire l integrità dei file PDF li si deve trattare come i file binari; per fare ciò si inseriscono caratteri con codice ASCII maggiore di 127 come header iniziale. Compressione Per ridurre le dimensioni del file, il formato PDF supporta molti standard di compressione: JPEG per immagini a colori o scala di grigio CCITT Gruppo 3 e 4, LZW (Lempel-Ziv-Welch) e compressione Run Lenght per immagini monocromatiche Pagina 25

29 LZW e compressione lineare di testo e immagini indicizzate. Usando la compressione JPEG si ottiene un fattore di compressione maggiore di 10. L effettiva compressione delle immagini monocromatiche dipende dal filtro utilizzato e dalle proprietà dell immagine, normalmente si hanno rapporti che vanno da 2:1 a 8:1. Le compressioni lineari e LZW del testo raggiungono approssimativamente un rapporto di 2:1.Tutti questi metodi di compressione producono dati binari che possono essere codificati in ASCII base 85 per mantenerne la portabilità. Font Independence L utilizzo dei font è un punto fondamentale nello scambio di documenti. Generalmente chi riceve il file dovrebbe avere gli stessi font utilizzati nel documento originale; diversamente i font verranno sostituiti con altri di default, producendo effetti indesiderati a causa delle diverse proporzioni, come il superamento di un margine o la sovrapposizione di caratteri. Si possono includere i font nel documento provocando un aumento considerevole delle dimensioni, ad esempio un documento di due pagine che utilizza quattro font cresce da 10K a 250K. Un altra possibilità consiste nel convertire ogni pagina del documento in un immagine a risoluzione fissa, negando però la possibilità di interagire con i contenuti. Il PDF dispone di una soluzione che rende i documenti indipendenti dai font utilizzati per crearli. Per ogni font utilizzato nel documento, viene creato un font descriptor che contiene il nome del font, le dimensioni ed eventuali informazioni sullo stile. Queste informazioni utili nel caso in cui un font non sia presente sul pc con cui si legge il documento, aggiungendo tipicamente solo 1-2K alla dimensione del documento e utilizzabile per i font di tipo Adobe Type 1 e True Type. Altri font grafici, quali lo ZapfDingbats, sono già integrati nell ambiente Abode, poichè includere informazioni aggiuntive simili alle precedenti sarebbe comunque insufficiente. Pagina 26

30 Accesso casuale Applicativi che estraggono e visualizzano una determinata pagina da un linguaggio Postscript devono analizzare il file in esame dall inizio, finché non viene trovato l elemento desiderato. In media, il tempo necessario per visualizzare una pagina non dipende solo dalla sua complessità ma anche dal loro numero totale all interno del documento. È un problema per la visualizzazione interattiva di documenti, dove è importante il tempo di accesso alla pagina. Ogni file PDF contiene una tabella di riferimenti incrociati, che viene utilizzata per accedere a pagine ed altri oggetti importanti nel file; essa viene memorizzata alla fine di quest ultimo, permettendo alle applicazioni che generano PDF in un solo passo di scriverla e a quelle che li leggono di trovarla in modo semplice. Aggiornamento Incrementale Certe applicazioni che permettono agli utenti di modificare documenti PDF contenenti svariate centinaia di pagine non dovrebbero far attendere la riscrittura dell intero file ogni qual volta vengano salvate le modifiche. Il PDF permette sia la modifica sia l aggiunta in un file, lasciando intatti i dati originali. L aggiunta incrementale contiene solo l oggetto che è stato modificato o aggiunto e include una versione aggiornata della tabella dei riferimenti incrociati. Tale sistema permette di ottenere salvataggi con tempi proporzionali ai dati modificati invece che alle dimensioni del file; inoltre, vista la ridondanza dei dati, è possibile ripristinare l originale. Estendibilità Il formato PDF è stato progettato per essere estendibile. Sicuramente gli sviluppatori vorranno aggiungere caratteristiche che non sono ancora state implementate; per questo motivo è stato progettato in modo tale da poter essere esteso conservando la compatibilità con interpreti antecedenti le modifiche. Pagina 27

31 3.1.2 PDF e linguaggio PostScript Nella sezione precedente sono state accennate le differenze fra il PDF e il linguaggio Postscript; ci si propone ora di elencarle: Un PDF può contenere oggetti come collegamenti ipertestuali, utili per la visualizzazione interattiva. Per semplificare il processo di descrizione delle pagine il PDF non fornisce costrutti di programmazione Il PDF rafforza il concetto di struttura di file e permette alle applicazioni di accedere in modo casuale a parti del documento. Il PDF contiene informazioni riguardanti le caratteristiche dei font per assicurare fedeltà di visualizzazione. Per questi motivi, un file PDF non può essere inviato direttamente ad una stampante per l elaborazione. Un PDF può essere suddiviso in quattro parti distinte: Oggetti Struttura del File Struttura del Documento Descrittore di Pagina Figura 1.1 Suddivisioni di un PDF Oggetti: comprende, tranne alcune eccezioni, i tipi base usati nel linguaggio Postscript, come le strutture di dati e gli oggetti di base che essenzialmente danno forma ad un testo. Struttura del file: determina come un oggetto è memorizzato in un file PDF, il tipo di accesso consentito e le modalità di aggiornamento. Questa struttura è indipendente dalla semantica di un oggetto; si possono distinguere quattro sezioni: header, body, cross-reference table (tabella dei riferimenti incrociati) e trailer. Pagina 28

32 Struttura del documento: specifica le modalità di utilizzo dei tipi base per rappresentare i componenti di un documento PDF come le pagine, le annotazioni, i collegamenti ipertestuali, i font, ecc... Descrittore di pagina: pur facendo parte di un oggetto pagina, rimane separato dagli altri e con essi ha una limitata interazione. Questo semplifica la conversione in linguaggio Postscript, può essere considerato come una sequenza di oggetti grafici collocati al suo interno, inoltre si possono sovrapporre e coprire uno con l altro Adobe Acrobat TM Reader Il principale applicativo utilizzato per la lettura di file PDF viene fornito dalla Adobe in versione freeware, che ne permette una rapida diffusione sia in ambito aziendale che privato; tale caratteristica ne ha permesso la distribuzione in mercati già occupati da interpreti di altri formati elettronici (DOC, PS, ecc ). Fondamentalmente è un interfaccia di visualizzazione dei file PDF che permette: la visualizzazione in varie modalità dei documenti: a pagine singole, multiple, con vari fattori di zoom, con barre di navigazione, documenti multipli e cronologia di azioni; la stampa dell intero documento o di sue parti; la ricerca di parole; la selezione e la cattura di testo ed immagini; la visualizzazione di miniature (thumbnail) delle pagine, se presenti nel PDF; la gestione di segnalibri (bookmark); la gestione di collegamenti ipertestuali nello stesso ed in altri documenti; opzioni di visualizzazione all interno di un browser: si intende la possibilità di integrarsi all interno dell ambiente di un browser estendendone le possibilità; Pagina 29

33 la gestione di impostazioni di protezione: all atto della creazione di un documento si possono specificare diverse impostazioni riguardanti la visualizzazione, la modifica e la stampa dei documenti; attraverso di esse si abilitano o si inibiscono alcune delle operazioni descritte precedentemente Adobe SDK Adobe fornisce un insieme di librerie, documentazioni, esempi e template che permettono la progettazione e lo sviluppo di plug-in e prodotti perfettamente integrati con l ambiente Acrobat. È stato sviluppato un insieme di oggetti che consentono la creazione, la modifica e la sostituzione di parti del documento o della sua struttura; ad alto livello questi ultimi possono essere suddivisi in layer: Acrobat Viewer (AV) Layer: i suoi metodi permettono ai plug-in di manipolare i componenti dell ambiente stesso, come per esempio i menu e le relative voci. Portable Document (PD) Layer: fornisce accesso agli oggetti che compongono il documento PDF, come per esempio le pagine e le annotazioni; lo si può ulteriormente suddividere in: o o PDFEdit: raggruppa il contenuto delle pagine in oggetti di cui è possibile modificare parametri e attributi; permette ai plug-in di leggere, scrivere, modificare e creare contenuti e pagine che possono a loro volta inglobare font ed immagini. PDSEdit: riguarda le caratteristiche e le informazioni sulla struttura del documento, che viene costruita, indipendentemente dalla sua rappresentazione fisica, tramite puntatori. Acrobat Support (AS) Layer: fornisce funzioni platform-indipendent che riguardano ad esempio la manipolazione dei file o l allocazione di memoria. Pagina 30

34 Cos Layer: garantisce l accesso ai blocchi di basso livello utilizzati per manipolare i dati, come i dizionari e stringhe. Figura 1.2 Acrobat Layer Le prime due lettere del nome di un oggetto o di un metodo indicano l appartenenza ad un determinato layer; è ora possibile dare una panoramica più dettagliata di tali oggetti e delle loro relazioni. Gli oggetti principali che vengono utilizzati sono: CosDoc: è la rappresentazione di un documento PDF a basso livello; non si può creare direttamente ma deve essere ottenuto come risultato di una funzione. ASFile e ASFileSys: incapsula l accesso ai file e fornisce un interfaccia comune al viewer, alle applicazioni ed ai plug-in verso il file system su diverse piattaforme. Un ASFile è una rappresentazione opaca di un file aperto, contenente un ASPathName ed un ASFileSys, che rappresentano rispettivamente il percorso del file specifico del sistema ed un insieme di funzioni per accedere ai diversi file system. PDDoc: è una rappresentazione logica di un documento PDF aperto; esiste una corrispondenza diretta fra PDDoc e ASFile. Un applicazione può creare o aprire un documento utilizzando un ASFileSys e un ASPathName che solitamente si riferiscono a file su disco. Ogni documento contiene un Pagina 31

35 albero di pagine, può contenere un albero di bookmark ed articoli, ed infomazioni e strutture di sicurezza. AVDoc: rappresenta un documento visualizzato in una finestra, ne esiste uno solo; a differenza di un PDDoc, è sempre associato ad una finestra. AVWindow: fornisce metodi per creare e gestire finestre; AVPageView: riguarda l area del viewer che visualizza il contenuto di una pagina; ogni AVDoc possiede un AVPageView e viceversa, contiene riferimenti a oggetti di tipo PDDoc e PDPage riferiti al documento attivo. Si utilizza per visaulizzare una determinata pagina, scegliere il fattore di scala, evidenziare una o più parole e così via. Esistono casi particolari in cui, nella visualizzazione in continuo delle pagine 1, esso non sia riferito ad una specifica pagina; per fissare il riferimento di solito di usa il metodo AVPageViewSetPageNum. Figura 1.3 Document Object Interrelationship CosObj: e un oggetto generale in un file PDF e può essere di qualunque tipo appartenente al Cos layer. 1 La visualizzazione può essere: a pagina singola, in continuo o a pagine affiancate. Pagina 32

36 PDFileSpec: viene usato per specificare un file come oggetto di un azione; può essere creato da un ASPathName o da un CosObj ed è di due tipi: o o un pathname platform-independent; una struttura dati contenente uno o più modi per localizzare il file su piattaforme differenti. Figura 1.4 File I/O Object Interrelationships 3.2 Java Si è pensato di voler dare una breve nozione storica e pratica del linguaggio Java, per completare la funzione descrittiva del progetto, inerente a questo elaborato Introduzione al linguaggio Java Java appena è uscito è stato accolto con molto entusiasmo dalla comunità mondiale dei progettisti di software e dei provider di servizi Internet, perché Java permetteva agli utenti di Internet di utilizzare applicazioni sicure e indipendenti dalla piattaforma, che si possono trovare in qualsiasi punto della rete. Pagina 33

37 Java è quindi nato come linguaggio per la rete, per affiancare l'hyper Text Markup Language (HTML), che non è un linguaggio di programmazione vero e proprio, e dare maggiore sicurezza in rete alle transazioni in rete, possibilità che l'html non permette. Il linguaggio di programmazione Java è stato creato verso la metà degli anni novanta, è il più recente tra i suoi cugini, e per questo è ancora in fase evolutiva, tanto che ogni anno circa ne viene rilasciata una nuova versione. Da linguaggio nato solo per la rete è divenuto un vero e proprio linguaggio di programmazione, paragonabile, dal punto di vista delle funzionalità, al più blasonato C++. Java e la maggior parte degli altri linguaggi possono essere paragonati solo dal punto di vista delle funzionalità, perché sono fondamentalmente molto diversi, infatti Java compila i sorgenti dei suoi programmi in un codice detto Bytecode, diverso dal linguaggio della macchina su cui è compilato, mentre linguaggi come il C++ compilano i sorgenti dei programmi in un codice che è il codice della macchina su cui è eseguito. Quindi per eseguire un programma Java occorre uno strumento chiamato Java Virtual Machine(JVM), la quale interpreta il bytecode generato dal compilatore Java e lo esegue sulla macchina su cui è installato. Grazie alla JVM, Java è indipendente dalla piattaforma, infatti il programma compilato Java è legato alla JVM e non al sistema operativo, sarà quindi possibile eseguire lo stesso programma Java, compilato una sola volta su una qualche macchina con un compilatore Java versione X, su una piattaforma Windows e su una piattaforma Linux. Per fare questo però c'è bisogno che sia Windows che Linux abbiano installato una Java Virtual Machine che supporti la versione X di Java. Le due JVM installate sulle due piattaforme diverse sono praticamente un programma compilato una volta per Windows ed una volta per Linux, come avveniva con i programmi scritti in linguaggi come il C/C++. Una Java Virtual Machine è implementata anche nei vari Browser (come Netscape e Explorer) per poter eseguire i programmi Java incontrati nella rete, i cosiddetti Applet. Questo però, unito al fatto che Java ancora si evolve, causa degli ovvi problemi di incompatibilità: capita sempre che il più moderno Browser supporti una versione precedente di Java rispetto all'ultima versione rilasciata dalla Sun Microsystem, inoltre bisogna tener presente che non tutti gli utenti di Internet navigano usando l'ultima versione di Netscape o Pagina 34

38 di Explorer. Un altro problema da affrontare è la scelta del compilatore Java da utilizzare, infatti esistono vari ambienti integrati per editare, compilare, debuggare ed eseguire programmi Java, come quelli della Borland, della Microsoft, della Symantec. Tutti questi ambienti offrono dei tools di sviluppo eccellenti, come editori grafici di finestre, debugger molto interessanti. Per la realizzazione di questa tesi, si è scelto di lavorare sul JBuilder 5, della Borland, per due motivi: la prima è la fresca realizzazione di questa versione, che permetteva l uso della JDK più recente, la seconda è che, nonostante si trattasse della versione rilasciata in uso gratuito, permetteva un utilizzo molto completo Programmare in Java La principale differenza tra Java e gli altri linguaggi di programmazione ad oggetti è che mentre con questi ultimi è possibile anche programmare ad oggetti con Java si deve assolutamente programmare ad oggetti. Tale programmazione avviene nello stesso modo degli altri linguaggi, differenza sostanziale è che sia i dati, che le funzioni manipolanti questi, sono racchiusi in strutture dette classi. Le classi sono dei prototipi di oggetti, ovvero sono delle strutture astratte (ma non troppo) che possono essere instanziate e quindi creare un oggetto (ma anche più di uno). La classe definisce tutte le proprietà degli oggetti appartenenti a quella classe, detti attributi, e le funzioni che vengono usate per agire su di essi, detti metodi. Per accedere agli attributi e ai metodi di un oggetto si utilizza la notazione puntata: oggetto.attributo oppure oppure oggetto.metodo(). Una figura, tratta dagli appunti JDBC TM - Java Database Connectivity dell Ing. Fabrizio LAMBERTI, del Dipartimento di Automatica ed Informatica, del Politecnico di Torino, servirà meglio a esemplificare il concetto di classe Pagina 35

39 Figura 1.5 Concetto di Classe Ad esempio è possibile definire una classe delle persone, come segue: Inizio classe persone Attributo annodinascita Metodo calcolaetà (annoattuale) Fine classe persone La classe delle persone così definita ha un attributo, che è annodinascita, che sarà sicuramente un numero intero ed un metodo che, in base all' anno attuale passato come parametro, calcola l'età della persona. Per meglio comprendere la creazione di una classe e di un oggetto, inseriamo qui di seguito due figure, sempre tratte dagli appunti dell Ing. Fabrizio LAMBERTI Pagina 36

40 Figura 1.6 Definizione di una classe Figura 1.7 Creazione di un oggetto Per ogni eventuale approfondimento sull argomento, poiché non è questo il soggetto dell elaborato, si rimanda ai numerosi testi e manuali presenti sul mercato editoriale. 3.3 itext itext è una libreria gratuita che permette di generare file PDF in tempo reale, ossia senza l uso di file temporanei. Figura 1.8 Logo della libreria itext Le classi generate mediante itext si utilizzano quando si ha necessità di creare file PDF in cui occorre inserire testo, immagini e tabelle, senza utilizzare un lettore di tale formato, ossia senza lavorare personalmente sul file da modificare, ma facendo agire il programma Java; tale libreria è usata in combinazione alle tecnologie basate su Java e realizzate mediante l uso di questo linguaggio di programmazione; richiede la Java Development Kit (JDK) 1.2 della Sun Pagina 37

41 Microsystems Incorporated ed è di libero utilizzo mediante le multilicenze MPL e LGPL. Creata nel 1999 da Bruno Lowagie, ingegnere di Gent, nel Belgio, la libreria è stata migliorata ed ampliata nel suo complesso anche grazie all apporto dato successivamente dall ing. Paulo Soares, attuale coresponsabile del progetto, ed è in continua evoluzione, tanto che a tutt oggi si registra l uscita della versione 0.93; la libreria è disponibile nel sito dell ing. Lowagie, all indirizzo web: in cui è possibile trovare anche un tutorial, curato dall ing. Soares, molto ben fatto, che con esaurienti esempi spiega l utilizzo della loro libreria Utilizzo di itext Passiamo ora in breve rassegna, cosa è possibile realizzare e manipolare con itext. Come si è detto realizza copie al volo di qualunque file PDF, mediante un programma sviluppato in linguaggio Java, ma non solo; infatti è possibile creare nuovi documenti, mediante appositi comandi, ed unirli ad esistenti. In definitiva con itext possiamo: Creare un nuovo file PDF: generarlo dal nulla, impostando il nome da dare al file, potendo gestire al completo il documento, come i parametri di dimensione di pagina, i margini, inserendo immagini, intestazioni, piè pagina, ecc. Aprire un file esistente e modificarne il contenuto: o meglio modificandone l impaginatura, aggiungendo intestazione e piè pagina, inserendo pezzi di testo o immagini, su pagine specifiche e su tutto il documento. Unire più file fra loro: scegliendo indifferentemente se unirli sequenzialmente, ossia uno dopo l altro, oppure se inserire un documento in un altro, dopo un numero di pagine prestabilite dall utente, senza limiti né sul numero di file uniti, né sul numero di pagine da unire; ciò a livello di programma, ma come ben sappiamo a livello pratico si deve tener conto Pagina 38

42 del tempo di realizzazione del documento finale, per rendere l applicazione veloce e funzionale. Proteggere a vari livelli il documento: con due livelli di criptatura del documento, una a 40bit e l altra a 128bit, la libreria permette diversi livelli di accesso al documento da parte dell utente: o AllowPrinting: permette la stampa del documento; o AllowModifyContents: consente la modifica dei contenuti del file; o AllowCopy: autorizza il copia-incolla; o AllowModifyAnnotations: concede la modifica delle note; o AllowFillIn: consente la compilazione di eventuali parti del documento, ad esempio un form; o AllowScreenReaders: permette la sola visualizzazione del file; o AllowAssembly: autorizza l inclusione di oggetti nel documento, come immagini o grafici; o AllowDegradedPrinting: concede la stampa degradata, in modo da non renderla perfetta; Tutti questi metodi di criptatura possono essere inseriti nel documento con o senza password, inoltre si può decidere se dare una password proprietario ed una utente, consentendo quindi una modifica successiva da parte del creatore del file. Per realizzare dei file PDF mediante itext, si devono seguire passi piuttosto semplici, che possono essere divisi in tre fasi: Creazione del documento vuoto, che conterrà il file: in questa fase è possibile fissare i margini, le dimensioni della pagina, la sua rotazione e il nome del file PDF risultante; Apertura documento ed elaborazione: in questo passo si ha la vera e propria modifica del PDF, si possono importare pagine, aggiungere del testo, sia come frasi, se si tratta di un file vuoto, che come box di testo da posizionare sulla pagina, aggiungere l intestazione e il piè pagina, immagini, ecc; Pagina 39

43 Chiusura del documento: normalmente questa fase è fatta in automatico dal programma Java, ma è consigliabile sempre chiudere il documento, una volta terminate le modifiche, all interno del programma, poiché si ha la sicurezza che le risorse impegnate dal programma, verranno rilasciate e il documento sarà utilizzabile. Capitolo 4 Problemi e soluzioni nella realizzazione del progetto Si intende ora descrivere quali sono stati i problemi incontrati nella realizzazione del progetto, derivanti dalla manipolazione al volo di file PDF, e le soluzioni adottate nel creare il programma utilizzante la libreria itext, che sarà utilizzato nel sito di appunti universitari Appunti.net. 4.1 Appunti.net Ci pare giusto spiegare, brevemente, l idea che sta alla base della creazione del sito che andrà ad utilizzare la classe creata alla fine di questo progetto. Realizzato in collaborazione con la Trim, Appunti.net (www.appunti.net) è il nuovo sito dedicato a studenti e docenti di tutte le facoltà italiane, proponendosi come punto di riferimento per lo scambio e la compravendita di appunti universitari. Qui si possono trovare appunti, dispense, temi d'esame svolti, esercizi e altro materiale didattico fornito direttamente dai docenti oppure da studenti. Attualmente il sito dispone già di un interfaccia che gestisce la manipolazione dei file grezzi, ma si vuole realizzare un processo simile con altre soluzioni informatiche, vagliando le più pratiche per la gestione degli appunti. Pagina 40

44 4.2 Definizione problemi nella creazione dei documenti Come si è ampliamente descritto nei precedenti paragrafi, i problemi principali erano due: Formattazione di un testo; Protezione del documento da eventuali usi impropri. I problemi sono connessi fra loro, poiché si tratta di trasformare un documento definito grezzo (ossia proveniente dall autore) in un documento vendibile, esteticamente accettabile e protetto, pronto per essere venduto on-line; inoltre si voleva avere la possibilità di rendere la procedura automatica, ossia che i parametri fossero recepiti direttamente da un database, se non per alcuni dati, immessi con un limitato intervento periodico di un operatore. Master Vendibile Documento Grezzo Creazione Documenti Anteprima Omaggio Figura 1.9 Schema creazione documenti Per meglio comprendere cosa intendiamo nei paragrafi successivi, indicheremo brevemente le definizioni adottate nel testo per rifinire i documenti: Documento grezzo : è il file proveniente dall autore; Documento master : è la copia formattata del grezzo; Documento vendibile : è il file che viene venduto all utente; Documento omaggio : è la copia concessa in visione gratuita, spesso donata ai docenti; Pagina 41

45 Documento anteprima : è una versione ridotta, concessa all utente per valutare l eventuale acquisto del prodotto. Vediamo come si presenta un file grezzo, con l inserzione della seguente immagine, che mostra il file usato come test nella realizzazione del progetto: Figura 1.10 Documento grezzo Come possiamo vedere dalla figura il documento grezzo non presenta ne copertina, ne altra formattazione, quali header o footer; il compito del progetto sarà, appunto, inserirli. Definiti i termini usati, possiamo procedere alla specificazione delle varie fasi di creazione dei documenti Creazione Master La copia master consiste in una modifica sostanziale del file grezzo, poiché questo giunge solitamente senza titolo, intestazione, numero di pagina, ecc. Pagina 42

46 Titolo Copertina Documento Grezzo Creazione Master Master Autore Codice Figura 1.11 Schema creazione Master Al master viene quindi aggiunta una copertina, normalmente di due pagine, dopodiché si passa all inserimento delle pagine del documento grezzo e alla loro modifica; in sostanza si aggiunge: Intestazione, recante il titolo dell appunto, eventualmente troncato se è troppo lungo, e l indirizzo web del sito di AppuntiNet; Piè pagina, indicante l autore, con l iniziale del nome puntata, il codice dell appunto e il numero di pagina. Questa copia master viene lasciata libera da protezioni e crittografia, per poter consentire le successive modifiche e creazioni dei files destinati agli utenti Creazione Copertina Nella creazione del documento master viene inserita una copertina; questa viene creata in parte in tempo reale, in parte unendo al documento grezzo un file PDF esistente, in cui abbiamo due pagine: la prima, in cui troviamo il logo di AppuntiNet e alcune scritte standard; l altra contiene tutte le informazioni riguardanti il copyright. Ciò viene fatto per permettere una maggiore flessibilità al sistema di creazione del master, in quanto se fossero necessarie delle modifiche al logo o alle norme sul copyright, è sufficiente sostituire, o modificare, la pagina in oggetto e far passare la nuova copertina nella creazione dei nuovi master, senza ulteriori accorgimenti. Pagina 43

47 4.2.3 Creazione Vendibile E la creazione del file, diremo, finale, ossia quello che l utente riceve al termine della procedura di acquisto; esso è una riproduzione del master, a cui viene aggiunto, nella parte dell intestazione, sotto l indirizzo web, il codice del cliente, per rendere personale la copia e scoraggiare eventuali usi impropri; inoltre si dovrà proteggere la manipolazione mediante crittografia, lasciando all utente la sola possibilità di stampare il documento. Codice cliente Documento Master Protezione documento Documento Vendibile Figura 1.12 Schema creazione Vendibile Creazione Omaggio La copia Omaggio viene concessa in visione gratuita ai docenti, spesso a scopo divulgativo e pubblicitario del documento originale; è in pratica una copia master a cui viene aggiunta una scritta verticale, posta a lato, su ogni pagina del documento; tipicamente viene aggiunta la scritta. Campione gratuito, vietata la vendita ma la frase può cambiare, è quindi necessario poter impostare anche una frase diversa da questa. Anche questo documento deve esser protetto da manipolazioni, tipicamente si protegge mediante crittografia e si concede la sola possibilità all utente di poter stampare il contenuto. Pagina 44

48 Scritta opportuna Documento Master Protezione documento Documento Omaggio Figura 1.13 Schema creazione Omaggio Creazione Anteprima La copia Anteprima rappresenta un sottoinsieme delle pagine del master, concesse all utente per visionare e valutare l acquisto del testo elettronico, che ha preso in esame. Normalmente si effettuerà un estrazione casuale di pagine dal documento, entro comunque un massimo di pagine; e su tutte le pagine estratte viene aggiunta una scritta, posta di traverso, recante la dicitura: Appunti.Net in dimensione sufficientemente grande da riempire la pagina. Per rendere maneggevole questa creazione, si permette di definire sia la percentuale che il numero massimo di pagine estraibili, oltre che la possibilità di cambiare la dicitura. E logico che, a maggior ragione, anche questo documento dovrà esser protetto da eventuali manipolazioni e all utente sarà permessa la sola visione del testo. Scritta opportuna Documento Master Protezione documento Documento Anteprima Max Pagine Percentuale Pagine Figura 1.14 Schema creazione Anteprima Pagina 45

49 4.3 Soluzioni adottate: classe AppuntiNet Dopo una breve trattazione dei documenti che bisognava ottenere, passiamo alla specifica descrizione del programma Java e dei metodi che hanno permesso di realizzare i documenti presi in esame precedentemente. La classe principale, che contiene tutti i metodi successivamente descritti, è stata chiamata AppuntiNet; questa contiene una breve descrizione del file, indica il nome dell autore della classe e le note di copyright inerenti all uso della libreria itext, dopodiché importa le librerie necessarie al funzionamento dei metodi in essa contenuti; nel suo complesso, è costituita da 415 righe di codice, per meglio comprendere il suo funzionamento, riporteremo per ogni metodo, oltre ad un immagine esemplificativa, due righe di codice: una recante i nomi dei parametri e l altra simulante una reale situazione che è stata usata in fase di test del programma, un file chiamato AP00218, recante titolo: Esercizi di Chimica Generale il cui autore è il prof Paolo Volpe Copertina e Copyright Una parte del passaggio da documento grezzo a documento master consiste nell inserimento di una copertina con certe informazioni posizionate in modo differente nella pagina e dell aggiunta di una sezione di copyright. Le esigenze di mercato richiedono che essa possa cambiare a seconda di parametri variabili nel tempo oppure adattarsi a documenti particolari; per esempio una variazione del logo dell azienda in questione oppure un riposizionamento dei campi all interno della pagina; tali problemi hanno fatto sorgere l opportunità di avere a parte questo documento, poiché la sola inserzione delle note di copyright avrebbe creato problemi su eventuali modifiche sulla prima pagina, contenente il logo del sito, costituendo un documento tipicamente di due pagine, in modo da poterlo modificare off-line e successivamente inserirlo nei documenti. La figura di seguito inserita servirà a comprendere meglio come è costituita la copertina. Pagina 46

50 Figura 1.15 Copertina da inserire Metodo Crea Master Questo metodo è quello che crea, appunto, la copia master, ossia formatta il file grezzo ricevuto dall autore; CreaMaster(String NomeFileGrezzo, String NomeFileCopertina, String NomeFileMaster, String CodiceAppunto, String TitoloAppunto, String[] Autori) CreaMaster("AP00218.pdf","Copertina.pdf","AP00218master.pdf","AP00218","Te sto di Esercizi di Chimica Generale",A); in cui A è l arrey contenente il nome e il cognome degli autori; I parametri in ingresso, dunque, sono: - NomeFileGrezzo, è il nome del PDF da formattare; - NomeFileCopertina, è il nome del file che contiene le pagine di copertina; - NomeFileMaster, è il nome da dare al PDF master; - CodiceAppunto, è il codice dell appunto; - TitoloAppunto, è il titolo dell appunto; Pagina 47

51 - Autori, contiene il nome e il cognome dell autore; Una volta assunti questi parametri, il metodo passa ad una prima verifica per vedere se sono stati immessi tutti; se questa verifica va a buon fine, prosegue, altrimenti ferma il processo e visualizza un messaggio di errore. Successivamente fa una verifica sul titolo dell appunto, per poi poterlo immettere nell intestazione delle pagine; se è inferiore ad un parametro fissato, tipicamente 34 caratteri, viene lasciato intero, diversamente viene troncato; nel caso preso ad esempio il titolo è stato troncato poiché era lungo in totale 37 caratteri. Passa quindi in esame il nome dell autore, creandone una copia, la cui iniziale è puntata, da includere nel piè pagina; a questo punto inizia la creazione vera e propria del documento master, infatti crea un documento con il NomeFileMaster, lo apre, vi inserisce la copertina, contenute del NomeFileCopertina, ponendo il titolo dell appunto per intero e l autore nella prima pagina di copertina. Figura 1.16 Copertina documento Master Di seguito inizializza un contentbyte, che servirà per posizionare i box di testo che creano l intestazione e il piè pagina, oltre ad istanziare due Font diversi da Pagina 48

52 utilizzare per header e footer. Apre il documento grezzo, legge il numero totale di pagine in esso contenute e inizia ad inserire le pagine con un ciclo di while che tiene conto se ha raggiunto la totalità del documento o no. Ad ogni inserzione di pagina, vengono aggiunti 4 box di testo, inerenti al titolo tronco dell appunto e alla scritta per quanto riguarda l header, mentre aggiunge la scritta 2002, l autore dell appunto, con l iniziale del nome puntata, e il numero di pagina corrente per il piè pagina. Figura 1.17 Intestazione e piè pagina documento Master Terminati entrambi gli inserimenti, quello della copertina e il documento grezzo, segue una scritta che conferma l avvenuto inserimento; ultimato lo svolgimento viene chiuso il documento e si ha la copia master Metodo CreaVendibile Questo metodo crea la copia finale, che l utente acquista; vediamo come: CreaVendibile(String NomeFileMaster, String NomeFileVendibile, String CodiceCliente) CreaVendibile("AP00218master.pdf","218vendita.pdf","cecconetto"); Come si può vedere, assume tre parametri - NomeFileMaster; - NomeFileVendibile; - CodiceCliente. Pagina 49

53 Tutti questi parametri vengono analizzati per verificare che siano stati immessi tutti e tre, passato questo test procede con la creazione del file. Crea un documento con NomeFileVendibile, ne prepara la criptatura a 40bits, allocando solo la possibilità di stampa del documento, e lo apre; legge il numero di pagine che compongono il NomeFileMaster e inizializza un contentbyte per inserire il CodiceCliente. Assunti questi parametri inizia un ciclo di while per inserire le pagine del master, dove in ogni pagina viene inserito un box di testo dell intestazione, sotto la scritta contenente la scritta Copia personale di: e il CodiceCliente; Figura 1.18 Documento Vendibile terminato il ciclo viene visualizzata una scritta che conferma la creazione del documento e viene chiuso, terminando il processo Metodo CreaAnteprima Questo metodo fornisce la copia in visione al cliente, in modo che possa valutarne l acquisto. Vediamo meglio che parametri riceve: CreaAnteprima (String NomeFileMaster, String NomeFileAnteprima, int pag, int maxpag, String Scritta) CreaAnteprima("AP00218master.pdf","218anteprima.pdf",50,15,"Copia anteprima by Appunti.net") in Pagina 50

54 Tale metodo, come vediamo, assume in ingresso: - NomeFileMaster; - NomeFileAnteprima; - Scritta; - Percentuale di pagine (pag); - Massimo numero di pagine (maxpag). Il metodo verifica che siano stati immessi e al superamento di questa analisi, inizia a creare il file. Anzitutto apre il NomeFileMaster e ne legge il numero di pagine in esso contenute, dopo crea un nuovo documento NomeFileAnteprima e lo cripta a 40bits, disponendo la sola possibilità di vedere il testo sullo schermo; apre in documento, instanziando un contentbyte per inserire la scritta, ed inizia a verificare quante pagine deve inserire; infatti viene calcolata la percentuale di pagine del NomeFileMaster e confrontato con il massimo di pagine che viene permesso inserire, se è inferiore, le inserisce tutte, altrimenti assume il massimo come numero di pagine da inserire. A questo punto viene creato un ciclo che istanzia un arrey di interi, la cui lunghezza è uguale al numero di pagine da inserire; questo conterrà dei numeri casuali, generati da un random, entro il totale delle pagine del documento master; il ciclo, per ogni numero generato, controlla: -se questo è già stato messo, lo scarta e ne genera un altro; -altrimenti lo salva e prosegue il ciclo. Il ciclo termina quando l arrey è completo; in tal modo si evitano pagine doppie nella copia di anteprima e numeri che il programma non potrebbe trovare come pagine. Su ogni pagina viene posizionato un box di testo, posto a 55 di traverso sulla pagina, contenente la scritta immessa nei parametri d inizializzazione, il cui testo viene svuotato e il contorno colorato di rosso. Pagina 51

55 Figura 1.19 Documento Anteprima Terminato questo ciclo, viene visualizzata una scritta di conferma della creazione e viene chiuso il documento Metodo CreaOmaggio Questo metodo crea la copia da distribuire gratuitamente agli utenti prescelti, vediamo come: CreaOmaggio(String NomeFileMaster,String NomeFileOmaggio,String Scritta); CreaOmaggio("AP00218master.pdf","218omaggio.pdf","Campione vietata la vendita"); gratuito, Assume in ingresso tre parametri: - NomeFileMaster; Pagina 52

56 - NoleFileOmaggio; - Scritta opportuna. Come per i precedenti metodi, viene fatta la verifica su parametri immessi, considerando che tutti e tre sono assunti come tipo String, passato questo test inizia la creazione del file; viene aperto il NomeFileMaster, letto il numero di pagine del documento e creato un nuovo documento con NomeFileOmaggio; tale file sarà criptato a 40bits, allocando la sola possibilità di stampa del documento, viene inizializzato un contentbyte per inserire la scritta e inizia un ciclo di while per l inserimento delle pagine. Su ogni pagina del documento viene inserita nel margine sinistro la scritta immessa nei parametri iniziali, opportunamente colorata e svuotata in modo da visualizzare solo il contorno del testo. Figura 1.20 Documento Omaggio Al termine del ciclo, viene visualizzata una scritta di conferma e chiuso il documento. Pagina 53

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

Ottimizzazione della gestione del data center con Microsoft System Center

Ottimizzazione della gestione del data center con Microsoft System Center Ottimizzazione della gestione del data center con Microsoft System Center Declinazione di responsabilità e informazioni sul copyright Le informazioni contenute nel presente documento rappresentano le conoscenze

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi IL GESTIONALE DEL FUTURO L evoluzione del software per l azienda moderna Gestirsi / Capirsi / Migliorarsi IL MERCATO ITALIANO L Italia è rappresentata da un numero elevato di piccole e medie aziende che

Dettagli

Guida alla scansione su FTP

Guida alla scansione su FTP Guida alla scansione su FTP Per ottenere informazioni di base sulla rete e sulle funzionalità di rete avanzate della macchina Brother, consultare la uu Guida dell'utente in rete. Per ottenere informazioni

Dettagli

Utilizzato con successo nei più svariati settori aziendali, Passepartout Mexal BP è disponibile in diverse versioni e configurazioni:

Utilizzato con successo nei più svariati settori aziendali, Passepartout Mexal BP è disponibile in diverse versioni e configurazioni: Passepartout Mexal BP è una soluzione gestionale potente e completa per le imprese che necessitano di un prodotto estremamente flessibile, sia dal punto di vista tecnologico sia funzionale. Con più di

Dettagli

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi.

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet: la rete delle reti Alberto Ferrari Connessioni

Dettagli

ALFABETIZZAZIONE DI BASE Programma del Corso livello base

ALFABETIZZAZIONE DI BASE Programma del Corso livello base Un po di Storia ISP & Web Engineering ALFABETIZZAZIONE DI BASE Programma del Corso livello base Breve cenno sulla storia dell informatica: dagli albori ai giorni nostri; L evoluzione di Windows: dalla

Dettagli

Utilizzato con successo nei più svariati settori aziendali, con Passepartout Mexal BP ogni utente può disporre di funzionalità

Utilizzato con successo nei più svariati settori aziendali, con Passepartout Mexal BP ogni utente può disporre di funzionalità PASSEPARTOUT MEXAL BP è una soluzione gestionale potente e completa per le imprese che necessitano di un prodotto estremamente flessibile, sia dal punto di vista tecnologico sia funzionale. Con più di

Dettagli

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE Oracle Business Intelligence Standard Edition One è una soluzione BI completa, integrata destinata alle piccole e medie imprese.oracle

Dettagli

Piazza delle Imprese alimentari. Viale delle Manifatture. Via della Produzione

Piazza delle Imprese alimentari. Viale delle Manifatture. Via della Produzione Piazza delle Imprese alimentari Viale delle Manifatture Via della Produzione PASSEPARTOUT MEXAL è una soluzione gestionale potente e completa per le imprese che necessitano di un prodotto estremamente

Dettagli

Che cos è e come funziona l e-book

Che cos è e come funziona l e-book Che cos è e come funziona l e-book 1/3 di Francesca Cosi e Alessandra Repossi Negli ultimi mesi si è parlato molto dell e-book e del fatto che presto rivoluzionerà il mondo dell editoria: sono stati organizzati

Dettagli

Software 2. Classificazione del software. Software di sistema

Software 2. Classificazione del software. Software di sistema Software 2 Insieme di istruzioni e programmi che consentono il funzionamento del computer Il software indica all hardware quali sono le operazioni da eseguire per svolgere determinati compiti Valore spesso

Dettagli

La suite Dental Trey che semplifica il tuo mondo.

La suite Dental Trey che semplifica il tuo mondo. La suite Dental Trey che semplifica il tuo mondo. impostazioni di sistema postazione clinica studio privato sterilizzazione magazzino segreteria amministrazione sala di attesa caratteristiche UNO tiene

Dettagli

Gestore Comunicazioni Obbligatorie. Progetto SINTESI. Comunicazioni Obbligatorie. Modulo Applicativo COB. - Versione Giugno 2013 -

Gestore Comunicazioni Obbligatorie. Progetto SINTESI. Comunicazioni Obbligatorie. Modulo Applicativo COB. - Versione Giugno 2013 - Progetto SINTESI Comunicazioni Obbligatorie Modulo Applicativo COB - Versione Giugno 2013-1 Versione Giugno 2013 INDICE 1 Introduzione 3 1.1 Generalità 3 1.2 Descrizione e struttura del manuale 3 1.3 Requisiti

Dettagli

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL?

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? archiviazione ottica, conservazione e il protocollo dei SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? Il software Facile! BUSINESS Organizza l informazione

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

Dettagli

Lezione su Informatica di Base

Lezione su Informatica di Base Lezione su Informatica di Base Esplora Risorse, Gestione Cartelle, Alcuni tasti di scelta Rapida Domenico Capano D.C. Viterbo: Lunedì 21 Novembre 2005 Indice Una nota su questa lezione...4 Introduzione:

Dettagli

Guida alle offerte di finanziamento per le medie imprese

Guida alle offerte di finanziamento per le medie imprese IBM Global Financing Guida alle offerte di finanziamento per le medie imprese Realizzata da IBM Global Financing ibm.com/financing/it Guida alle offerte di finanziamento per le medie imprese La gestione

Dettagli

REALIZZARE UN MODELLO DI IMPRESA

REALIZZARE UN MODELLO DI IMPRESA REALIZZARE UN MODELLO DI IMPRESA - organizzare e gestire l insieme delle attività, utilizzando una piattaforma per la gestione aziendale: integrata, completa, flessibile, coerente e con un grado di complessità

Dettagli

www.provincia.roma.it EBOOK COSA SONO COME SI USANO DOVE SI TROVANO di Luisa Capelli

www.provincia.roma.it EBOOK COSA SONO COME SI USANO DOVE SI TROVANO di Luisa Capelli www.provincia.roma.it EBOOK COSA SONO COME SI USANO DOVE SI TROVANO di Luisa Capelli 01 Nei secoli, ci siamo abituati a leggere in molti modi (pietra, pergamena, libri). I cambiamenti continueranno e noi

Dettagli

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

progettiamo e realizziamo architetture informatiche Company Profile

progettiamo e realizziamo architetture informatiche Company Profile Company Profile Chi siamo Kammatech Consulting S.r.l. nasce nel 2000 con l'obiettivo di operare nel settore I.C.T., fornendo servizi di progettazione, realizzazione e manutenzione di reti aziendali. Nel

Dettagli

RELAZIONI TRA SERVIZI PER L IMPIEGO

RELAZIONI TRA SERVIZI PER L IMPIEGO RELAZIONI TRA SERVIZI PER L IMPIEGO E AZIENDE-UTENTI L IMPATTO DELLE PROCEDURE INFORMATIZZATE a cura di Germana Di Domenico Elaborazione grafica di ANNA NARDONE Monografie sul Mercato del lavoro e le politiche

Dettagli

Dipartimento del Tesoro

Dipartimento del Tesoro Dipartimento del Tesoro POWER POINT AVANZATO Indice 1 PROGETTAZIONE DELL ASPETTO...3 1.2 VISUALIZZARE GLI SCHEMI...4 1.3 CONTROLLARE L ASPETTO DELLE DIAPOSITIVE CON GLI SCHEMI...5 1.4 SALVARE UN MODELLO...6

Dettagli

Background (sfondo): Finestra: Una finestra serve a mostrare il contenuto di un disco o di una cartella -, chiamata anche directory.

Background (sfondo): Finestra: Una finestra serve a mostrare il contenuto di un disco o di una cartella -, chiamata anche directory. @ PC (Personal computer): Questa sigla identificò il primo personal IBM del 1981 a cura di R.Mangini Archiviazione: Il sistema operativo si occupa di archiviare i file. Background (sfondo): Cursore: Nei

Dettagli

1.3c: Font BITMAP e Font SCALABILI

1.3c: Font BITMAP e Font SCALABILI Prof. Alberto Postiglione Dipartimento di Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : Font BITMAP e Font SCALABILI Informatica Generale (Corso di Studio

Dettagli

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale InterWrite SchoolBoard è un software per lavagna elettronica di facile utilizzo. Può essere adoperata anche da studenti diversamente

Dettagli

Come difendersi dai VIRUS

Come difendersi dai VIRUS Come difendersi dai VIRUS DEFINIZIONE Un virus è un programma, cioè una serie di istruzioni, scritte in un linguaggio di programmazione, in passato era di solito di basso livello*, mentre con l'avvento

Dettagli

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

Corso di Alfabetizzazione Informatica

Corso di Alfabetizzazione Informatica Corso di Alfabetizzazione Informatica Scopo di questo corso, vuole essere quello di fornire ad ognuno dei partecipanti, indipendentemente dalle loro precedenti conoscenze informatiche, l apprendimento

Dettagli

Elaidon Web Solutions

Elaidon Web Solutions Elaidon Web Solutions Realizzazione siti web e pubblicità sui motori di ricerca Consulente Lorenzo Stefano Piscioli Via Siena, 6 21040 Gerenzano (VA) Telefono +39 02 96 48 10 35 elaidonwebsolutions@gmail.com

Dettagli

Altre opzioni Optralmage

Altre opzioni Optralmage di Personalizzazione delle impostazioni............ 2 Impostazione manuale delle informazioni sul fax......... 5 Creazione di destinazioni fax permanenti................ 7 Modifica delle impostazioni di

Dettagli

GESTIONE ATTREZZATURE

GESTIONE ATTREZZATURE SOLUZIONE COMPLETA PER LA GESTIONE DELLE ATTREZZATURE AZIENDALI SWSQ - Solution Web Safety Quality srl Via Mons. Giulio Ratti, 2-26100 Cremona (CR) P. Iva/C.F. 06777700961 - Cap. Soc. 10.000,00 I.V. -

Dettagli

Articolo. Dieci buoni motivi per acquistare una telecamere di rete Ovvero, quello che il vostro fornitore di telecamere analogiche non vi dirà mai

Articolo. Dieci buoni motivi per acquistare una telecamere di rete Ovvero, quello che il vostro fornitore di telecamere analogiche non vi dirà mai Articolo Dieci buoni motivi per acquistare una telecamere di rete Ovvero, quello che il vostro fornitore di telecamere analogiche non vi dirà mai INDICE Introduzione 3 Dieci cose che il vostro fornitore

Dettagli

Introduzione a Puppy Linux: installazione su una chiavetta USB

Introduzione a Puppy Linux: installazione su una chiavetta USB Introduzione a Puppy Linux: installazione su una chiavetta USB Alex Gotev 1 Contenuti Che cos'è Puppy Linux? Come posso averlo? Come si avvia? Che programmi include? Installazione su Chiavetta USB Domande

Dettagli

Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis

Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis Sempre attenti ad ogni dettaglio Bosch Intelligent Video Analysis 2 Intervento immediato con Bosch Intelligent Video Analysis Indipendentemente da quante telecamere il sistema utilizza, la sorveglianza

Dettagli

Appunti sugli Elaboratori di Testo. Introduzione. D. Gubiani. 19 Luglio 2005

Appunti sugli Elaboratori di Testo. Introduzione. D. Gubiani. 19 Luglio 2005 Appunti sugli Elaboratori di Testo D. Gubiani Università degli Studi G.D Annunzio di Chieti-Pescara 19 Luglio 2005 1 Cos è un elaboratore di testo? 2 3 Cos è un elaboratore di testo? Cos è un elaboratore

Dettagli

Guida all'uso di StarOffice 5.2

Guida all'uso di StarOffice 5.2 Eraldo Bonavitacola Guida all'uso di StarOffice 5.2 Introduzione Dicembre 2001 Copyright 2001 Eraldo Bonavitacola-CODINF CODINF COordinamento Docenti INFormati(ci) Introduzione Pag. 1 INTRODUZIONE COS'È

Dettagli

INFORMATIVA SUI COOKIE

INFORMATIVA SUI COOKIE INFORMATIVA SUI COOKIE I Cookie sono costituiti da porzioni di codice installate all'interno del browser che assistono il Titolare nell erogazione del servizio in base alle finalità descritte. Alcune delle

Dettagli

***** Il software IBM e semplice *****

***** Il software IBM e semplice ***** Il IBM e semplice ***** ***** Tutto quello che hai sempre voluto sapere sui prodotti IBM per qualificare i potenziali clienti, sensibilizzarli sulle nostre offerte e riuscire a convincerli. WebSphere IL

Dettagli

12 famiglie e tipi di file (estensioni più comuni)

12 famiglie e tipi di file (estensioni più comuni) 12 famiglie e tipi di file (estensioni più comuni) Ogni file è caratterizzato da un proprio nome e da una estensione, in genere tre lettere precedute da un punto; ad esempio:.est Vi sono tuttavia anche

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

Nasce un nuovo modo di pensare alla posta DAL TUO PC STAMPI UN DOCUMENTO E SPEDISCI UNA BUSTA LA TUA POSTA IN UN CLICK

Nasce un nuovo modo di pensare alla posta DAL TUO PC STAMPI UN DOCUMENTO E SPEDISCI UNA BUSTA LA TUA POSTA IN UN CLICK Nasce un nuovo modo di pensare alla posta DAL TUO PC STAMPI UN DOCUMENTO E SPEDISCI UNA BUSTA LA TUA POSTA IN UN CLICK LA TUA POSTA IN UN CLICK Clicca&Posta è una soluzione software per la gestione della

Dettagli

L 8 maggio 2002 il Ministero

L 8 maggio 2002 il Ministero > > > > > Prima strategia: ascoltare le esigenze degli utenti, semplificare il linguaggio e la navigazione del sito. Seconda: sviluppare al nostro interno le competenze e le tecnologie per gestire in proprio

Dettagli

EUROPEAN COMPUTER DRIVING LICENCE. IT Security. Syllabus

EUROPEAN COMPUTER DRIVING LICENCE. IT Security. Syllabus EUROPEAN COMPUTER DRIVING LICENCE IT Security Syllabus Scopo Questo documento presenta il syllabus di ECDL Standard IT Security. Il syllabus descrive, attraverso i risultati del processo di apprendimento,

Dettagli

È nata una nuova specie di avvocati. Liberi.

È nata una nuova specie di avvocati. Liberi. È nata una nuova specie di avvocati. Liberi. LIBERI DI NON PENSARCI Basta preoccupazioni per il back-up e la sicurezza dei tuoi dati. Con la tecnologia Cloud Computing l archiviazione e la protezione dei

Dettagli

Il canale distributivo Prima e dopo Internet. Corso di Laurea in Informatica per il management Università di Bologna Andrea De Marco

Il canale distributivo Prima e dopo Internet. Corso di Laurea in Informatica per il management Università di Bologna Andrea De Marco Il canale distributivo Prima e dopo Internet Corso di Laurea in Informatica per il management Università di Bologna Andrea De Marco La distribuzione commerciale Il canale distributivo è un gruppo di imprese

Dettagli

Client di Posta Elettronica PECMailer

Client di Posta Elettronica PECMailer Client di Posta Elettronica PECMailer PECMailer è un semplice ma completo client di posta elettronica, ovvero un programma che consente di gestire la composizione, la trasmissione, la ricezione e l'organizzazione

Dettagli

MEGA Process. Manuale introduttivo

MEGA Process. Manuale introduttivo MEGA Process Manuale introduttivo MEGA 2009 SP4 1ª edizione (giugno 2010) Le informazioni contenute nel presente documento possono essere modificate senza preavviso e non costituiscono in alcun modo un

Dettagli

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana Storie di successo Microsoft per le Imprese Scenario: Software e Development Settore: Servizi In collaborazione con Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci

Dettagli

Guida Dell di base all'acquisto dei server

Guida Dell di base all'acquisto dei server Guida Dell di base all'acquisto dei server Per le piccole aziende che dispongono di più computer è opportuno investire in un server che aiuti a garantire la sicurezza e l'organizzazione dei dati, consentendo

Dettagli

Bus di sistema. Bus di sistema

Bus di sistema. Bus di sistema Bus di sistema Permette la comunicazione (scambio di dati) tra i diversi dispositivi che costituiscono il calcolatore E costituito da un insieme di fili metallici che danno luogo ad un collegamento aperto

Dettagli

INDICE Informazioni Generali... 4. Comprare ebook con Kobo Desktop... 8. Usare la Libreria di Kobo Desktop... 10. Leggere su Kobo Desktop...

INDICE Informazioni Generali... 4. Comprare ebook con Kobo Desktop... 8. Usare la Libreria di Kobo Desktop... 10. Leggere su Kobo Desktop... Kobo Desktop Manuale Utente INDICE Informazioni Generali... 4 Installare Kobo Desktop su Windows... 5 Installare Kobo Desktop su Mac... 6 Comprare ebook con Kobo Desktop... 8 Usare la Libreria di Kobo

Dettagli

BRM. Tutte le soluzioni. per la gestione delle informazioni aziendali. BusinessRelationshipManagement

BRM. Tutte le soluzioni. per la gestione delle informazioni aziendali. BusinessRelationshipManagement BRM BusinessRelationshipManagement Tutte le soluzioni per la gestione delle informazioni aziendali - Business Intelligence - Office Automation - Sistemi C.R.M. I benefici di BRM Garantisce la sicurezza

Dettagli

CATTURARE LO SCHERMO INTERO O LA FINESTRA ATTIVA

CATTURARE LO SCHERMO INTERO O LA FINESTRA ATTIVA CATTURARE LO SCHERMO INTERO O LA FINESTRA ATTIVA Supponiamo di voler eseguire una istantanea del nostro desktop, quella che in gergo si chiama Screenshot (da screen, schermo, e shot, scatto fotografico).

Dettagli

2. Infrastruttura e sicurezza (Equivalente al Pillar 2-3 e 4 della Ade)

2. Infrastruttura e sicurezza (Equivalente al Pillar 2-3 e 4 della Ade) AGENDA DIGITALE ITALIANA 1. Struttura dell Agenda Italia, confronto con quella Europea La cabina di regia parte con il piede sbagliato poiché ridisegna l Agenda Europea modificandone l organizzazione e

Dettagli

L apposizione di firme e informazioni su documenti firmati

L apposizione di firme e informazioni su documenti firmati L apposizione di firme e informazioni su documenti firmati Il presente documento si pone l obiettivo di chiarire alcuni aspetti generali dei formati di firma CAdES (file con estensione p7m) e PAdES (file

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Denuncia di Malattia Professionale telematica

Denuncia di Malattia Professionale telematica Denuncia di Malattia Professionale telematica Manuale utente Versione 1.5 COME ACCEDERE ALLA DENUNCIA DI MALATTIA PROFESSIONALE ONLINE... 3 SITO INAIL... 3 LOGIN... 4 UTILIZZA LE TUE APPLICAZIONI... 5

Dettagli

GUIDA ALLE BEST PRACTICE PER MOBILE DEVICE MANAGEMENT E MOBILE SECURITY

GUIDA ALLE BEST PRACTICE PER MOBILE DEVICE MANAGEMENT E MOBILE SECURITY GUIDA ALLE BEST PRACTICE PER MOBILE DEVICE MANAGEMENT E MOBILE SECURITY Con Kaspersky, adesso è possibile. www.kaspersky.it/business Be Ready for What's Next SOMMARIO Pagina 1. APERTI 24 ORE SU 24...2

Dettagli

top Le funzioni di stampa prevedono elenchi, etichette, statistiche e molto altro.

top Le funzioni di stampa prevedono elenchi, etichette, statistiche e molto altro. La collana TOP è una famiglia di applicazioni appositamente studiata per il Terzo Settore. Essa è stata infatti realizzata in continua e fattiva collaborazione con i clienti. I programmi di questa collana

Dettagli

GUIDA RAPIDA emagister-agora Edizione BASIC

GUIDA RAPIDA emagister-agora Edizione BASIC GUIDA RAPIDA emagister-agora Edizione BASIC Introduzione a emagister-agora Interfaccia di emagister-agora Configurazione dell offerta didattica Richieste d informazioni Gestione delle richieste d informazioni

Dettagli

Servizio HP Hardware Support Exchange

Servizio HP Hardware Support Exchange Servizio HP Hardware Support Exchange Servizi HP Il servizio HP Hardware Support Exchange offre un supporto affidabile e rapido per la sostituzione dei prodotti HP. Studiato in modo specifico per i prodotti

Dettagli

CARATTERISTICHE DELLE CRYPTO BOX

CARATTERISTICHE DELLE CRYPTO BOX Secure Stream PANORAMICA Il sistema Secure Stream è costituito da due appliance (Crypto BOX) in grado di stabilire tra loro un collegamento sicuro. Le Crypto BOX sono dei veri e propri router in grado

Dettagli

Accordo d Uso (settembre 2014)

Accordo d Uso (settembre 2014) Accordo d Uso (settembre 2014) Il seguente Accordo d uso, di seguito Accordo, disciplina l utilizzo del Servizio on line 4GUEST, di seguito Servizio, che prevede, la creazione di Viaggi, Itinerari, Percorsi,

Dettagli

la Guida completa per aumentare il numero di Mi piace su Facebook

la Guida completa per aumentare il numero di Mi piace su Facebook wishpond EBOOK la Guida completa per aumentare il numero di Mi piace su Facebook wishpond.it indice Capitolo 1 Metodo #1 per aumentare i Mi piace su Facebook: Concorsi 5 Capitolo 5 Metodo #5 per aumentare

Dettagli

SISSI IN RETE. Quick Reference guide guida di riferimento rapido

SISSI IN RETE. Quick Reference guide guida di riferimento rapido SISSI IN RETE Quick Reference guide guida di riferimento rapido Indice generale Sissi in rete...3 Introduzione...3 Architettura Software...3 Installazione di SISSI in rete...3 Utilizzo di SISSI in Rete...4

Dettagli

Strumenti 3D per SMART Notebook 11.1. Manuale dell'utente

Strumenti 3D per SMART Notebook 11.1. Manuale dell'utente Strumenti 3D per SMART Notebook 11.1 Manuale dell'utente Registrazione del prodotto Se si registra il prodotto SMART, si verrà informati delle nuove funzionalità e aggiornamenti software disponibili. Registrazione

Dettagli

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore)

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Autore: Matteo Veroni Email: matver87@gmail.com Sito web: matteoveroni@altervista.org Fonti consultate: http://openmeetings.apache.org/

Dettagli

La legislazione italiana ed europea sul diritto d'autore. Avv. Pierluigi Perri Cirsfid - Università di Bologna

La legislazione italiana ed europea sul diritto d'autore. Avv. Pierluigi Perri Cirsfid - Università di Bologna La legislazione italiana ed europea sul diritto d'autore Avv. Pierluigi Perri Cirsfid - Università di Bologna Un pò di storia - Il diritto naturale d'autore nasce nei primi anni del 1700 in Inghilterra;

Dettagli

Assessorato regionale dell'agricoltura, dello sviluppo rurale e della pesca mediterranea Dipartimento della pesca mediterranea

Assessorato regionale dell'agricoltura, dello sviluppo rurale e della pesca mediterranea Dipartimento della pesca mediterranea Assessorato regionale dell'agricoltura, dello sviluppo rurale e della pesca mediterranea Dipartimento della pesca mediterranea Ufficio del Responsabile Unico della Regione Sicilia per il Cluster Bio-Mediterraneo

Dettagli

I N F I N I T Y Z U C C H E T T I WORKFLOW HR

I N F I N I T Y Z U C C H E T T I WORKFLOW HR I N F I N I T Y Z U C C H E T T I WORKFLOW HR WORKFLOW HR Zucchetti, nell ambito delle proprie soluzioni per la gestione del personale, ha realizzato una serie di moduli di Workflow in grado di informatizzare

Dettagli

COMMISSIONE PARLAMENTARE DI VIGILANZA SULL ANAGRAFE TRIBUTARIA AUDIZIONE DEL DIRETTORE DELL AGENZIA DELLE ENTRATE

COMMISSIONE PARLAMENTARE DI VIGILANZA SULL ANAGRAFE TRIBUTARIA AUDIZIONE DEL DIRETTORE DELL AGENZIA DELLE ENTRATE COMMISSIONE PARLAMENTARE DI VIGILANZA SULL ANAGRAFE TRIBUTARIA AUDIZIONE DEL DIRETTORE DELL AGENZIA DELLE ENTRATE Modello 730 precompilato e fatturazione elettronica Roma, 11 marzo 2015 2 PREMESSA Signori

Dettagli

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

Dettagli

Mobile Messaging SMS. Copyright 2015 VOLA S.p.A.

Mobile Messaging SMS. Copyright 2015 VOLA S.p.A. Mobile Messaging SMS Copyright 2015 VOLA S.p.A. INDICE Mobile Messaging SMS. 2 SMS e sistemi aziendali.. 2 Creare campagne di mobile marketing con i servizi Vola SMS.. 3 VOLASMS per inviare SMS da web..

Dettagli

MAURIZIO ABBATI STRUMENTI UTILI PER CAMBIARE E MIGLIORARE. HOUSE ORGAN AZIENDALE Guida alla creazione di un magazine interno

MAURIZIO ABBATI STRUMENTI UTILI PER CAMBIARE E MIGLIORARE. HOUSE ORGAN AZIENDALE Guida alla creazione di un magazine interno MAURIZIO ABBATI STRUMENTI UTILI PER CAMBIARE E MIGLIORARE HOUSE ORGAN AZIENDALE Guida alla creazione di un magazine interno Indice 01. 02. 03. I tipi di house organ Dall idea al progetto I contenuti A

Dettagli

Introduzione ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

Introduzione al GIS (Geographic Information System)

Introduzione al GIS (Geographic Information System) Introduzione al GIS (Geographic Information System) Sommario 1. COS E IL GIS?... 3 2. CARATTERISTICHE DI UN GIS... 3 3. COMPONENTI DI UN GIS... 4 4. CONTENUTI DI UN GIS... 5 5. FASI OPERATIVE CARATTERIZZANTI

Dettagli

Freight&Shipping. www.sp1.it. TRASPORTO marittimo TRASPORTO VIA TERRA TRASPORTO AEREO. business intelligence. doganale

Freight&Shipping. www.sp1.it. TRASPORTO marittimo TRASPORTO VIA TERRA TRASPORTO AEREO. business intelligence. doganale Freight&Shipping www.sp1.it marittimo AEREO VIA TERRA dogana magazzino doganale business intelligence SP1, il Freight & Shipping entra spedito nel futuro SP1 è un nuovo applicativo web. Non si installa

Dettagli

Calc è il programma per la gestione di fogli di calcolo della suite OpenOffice.org.

Calc è il programma per la gestione di fogli di calcolo della suite OpenOffice.org. Calc è il programma per la gestione di fogli di calcolo della suite OpenOffice.org. Nuovo documento Anteprima di stampa Annulla Galleria Apri Controllo ortografico Ripristina Sorgente dati Salva Controllo

Dettagli

Definizione e struttura della comunicazione

Definizione e struttura della comunicazione Definizione e struttura della comunicazione Sono state date molteplici definizioni della comunicazione; la più semplice e comprensiva è forse questa: passaggio di un'informazione da un emittente ad un

Dettagli

Corso di Amministrazione di Sistema Parte I ITIL 3

Corso di Amministrazione di Sistema Parte I ITIL 3 Corso di Amministrazione di Sistema Parte I ITIL 3 Francesco Clabot Responsabile erogazione servizi tecnici 1 francesco.clabot@netcom-srl.it Fondamenti di ITIL per la Gestione dei Servizi Informatici Il

Dettagli

Manuale Utente. S e m p l i c e m e n t e D a t i M i g l i o r i!

Manuale Utente. S e m p l i c e m e n t e D a t i M i g l i o r i! Manuale Utente S e m p l i c e m e n t e D a t i M i g l i o r i! INDICE INDICE... 3 INTRODUZIONE... 3 Riguardo questo manuale...3 Informazioni su VOLT 3 Destinatari 3 Software Richiesto 3 Novità su Volt...3

Dettagli

Famiglie di font. roman ( normale ) corsivo o italic grassetto o bold grassetto corsivo o bold italic

Famiglie di font. roman ( normale ) corsivo o italic grassetto o bold grassetto corsivo o bold italic Famiglie di font Nella maggior parte dei casi, un font appartiene a una famiglia I font della stessa famiglia hanno lo stesso stile grafico, ma presentano varianti Le varianti più comuni sono: roman (

Dettagli

Compilazione con WinEdt

Compilazione con WinEdt Luciano Battaia Sommario Guida rapida ed elementare ai diversi modi di compilazione di un file L A TEX, usando WinEdt, con alcune indicazioni di base sui formati immagine supportati. Gli output standard

Dettagli

Smartphone Innovations S.r.l. gestisce il sito www.stonexone.com ( Sito ). Smartphone Innovations S.r.l.

Smartphone Innovations S.r.l. gestisce il sito www.stonexone.com ( Sito ). Smartphone Innovations S.r.l. TERMINI E CONDIZIONI Smartphone Innovations S.r.l. gestisce il sito www.stonexone.com ( Sito ). Smartphone Innovations S.r.l. ha predisposto le seguenti Condizioni generali per l utilizzo del Servizio

Dettagli

MARKETING INTELLIGENCE SUL WEB:

MARKETING INTELLIGENCE SUL WEB: Via Durini, 23-20122 Milano (MI) Tel.+39.02.77.88.931 Fax +39.02.76.31.33.84 Piazza Marconi,15-00144 Roma Tel.+39.06.32.80.37.33 Fax +39.06.32.80.36.00 www.valuelab.it valuelab@valuelab.it MARKETING INTELLIGENCE

Dettagli

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del

GLI ASSI CULTURALI. Allegato 1 - Gli assi culturali. Nota. rimessa all autonomia didattica del docente e alla programmazione collegiale del GLI ASSI CULTURALI Nota rimessa all autonomia didattica del docente e alla programmazione collegiale del La normativa italiana dal 2007 13 L Asse dei linguaggi un adeguato utilizzo delle tecnologie dell

Dettagli

GUIDA ALL INSTALLAZIONE

GUIDA ALL INSTALLAZIONE GUIDA ALL INSTALLAZIONE INTRODUZIONE BENVENUTO Benvenuto in SPARK XL l applicazione TC WORKS dedicata al processamento, all editing e alla masterizzazione di segnali audio digitali. Il design di nuova

Dettagli

nel mondo delle professioni e della salute

nel mondo delle professioni e della salute Una Aggiornamento storia che e si formazione rinnova nel mondo delle professioni e della salute una rete di professionisti, la forza dell esperienza, l impegno nell educazione, tecnologie che comunicano.

Dettagli

explora consulting s.r.l. Via Case Rosse, 35-84131 SALERNO - tel 089 848073 fax 089 384582 www.exploraconsulting.it info@exploraconsulting.

explora consulting s.r.l. Via Case Rosse, 35-84131 SALERNO - tel 089 848073 fax 089 384582 www.exploraconsulting.it info@exploraconsulting. explora consulting s.r.l. Via Case Rosse, 35-84131 SALERNO - tel 089 848073 fax 089 384582 www.exploraconsulting.it info@exploraconsulting.it Procedura di gestione per Laboratori di Analisi Cliniche Pag.

Dettagli

Mario Polito IARE: Press - ROMA

Mario Polito IARE: Press - ROMA Mario Polito info@mariopolito.it www.mariopolito.it IMPARARE A STUD IARE: LE TECNICHE DI STUDIO Come sottolineare, prendere appunti, creare schemi e mappe, archiviare Pubblicato dagli Editori Riuniti University

Dettagli

G.U. 11 luglio 2002, n. 161 IL PRESIDENTE DEL CONSIGLIO DEI MINISTRI

G.U. 11 luglio 2002, n. 161 IL PRESIDENTE DEL CONSIGLIO DEI MINISTRI Direttiva del Presidente del Consiglio dei Ministri 30 maggio 2002 Conoscenza e uso del dominio internet ".gov.it" e l'efficace interazione del portale nazionale "italia.gov.it" con le IL PRESIDENTE DEL

Dettagli

Asset sotto controllo... in un TAC. Latitudo Total Asset Control

Asset sotto controllo... in un TAC. Latitudo Total Asset Control Asset sotto controllo... in un TAC Latitudo Total Asset Control Le organizzazioni che hanno implementato e sviluppato sistemi e processi di Asset Management hanno dimostrato un significativo risparmio

Dettagli

Setup e installazione

Setup e installazione Setup e installazione 2 Prima di muovere i primi passi con Blender e avventurarci nel vasto mondo della computer grafica, dobbiamo assicurarci di disporre di due cose: un computer e Blender. 6 Capitolo

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli