WWW XSL-FO Fabio Vitali (sulla base di lucidi di Massimiliano Tambini -- grazie!)

Slides:



Advertisements
Presentazioni simili
WWW XML-Namespace Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo: u Lesigenza e il funzionamento dei Namespace in XML.
Advertisements

Introduzione ad XML Mario Arrigoni Neri.
CSS CASCADING STYLE SHEET Alberto Ferrari. Cascading Style Sheet I fogli di stile a cascata (detti anche semplicemente fogli di stile) vengono usati per.
CSS CASCADING STYLE SHEET Alberto Ferrari.
A. FERRARI Alberto Ferrari. L'HyperText Markup Language (HTML) (traduzione letterale: linguaggio di marcatura per ipertesti) è un linguaggio usato per.
Introduzione alla programmazione A. Ferrari. Il linguaggio C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede.
Introduzione ai CSS. Cosa è successo allHTML Perché usare i CSS Introduzione ai CSS Fondamenti.
HTML LE PAGINE WEB COME SI SA, INTERNET E UN SISTEMA MONDIALE DI RETI DI COMPUTER CHE PERMETTE DI UTILIZZARE UN SISTEMA DI CONNESSIONE TRA COMPUTER.
Il linguaggio HTML.
XSLT (eXtensible Stylesheet Language Transformation) Laurea Magistrale in Informatica Reti 2 (2005/06) dott. Francesco De Angelis
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web Cascading Style Sheets (CSS): Concetti Fondamentali versione.
Numerico-Vespignani, Informatica per le scienze umanistiche, Il Mulino, La rappresentazione dellinformazione testuale e i linguaggi di codifica.
TW Analisi dei documenti n Classificazione dei componenti n Selezione dei componenti, costruzione della gerarchia, dei blocchi informativi e degli elementi.
WWW Link in XML Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo: u XLink.
CSS: Cascading Style Sheets Specifiche del formato del documento tramite un linguaggio Come modelli.dot di Word o file di stile.sty per latex Separazione.
Laboratorio di Applicazioni Informatiche II mod. A
1 HTML - I Frame Laboratorio di Applicazioni Informatiche II mod. A.
Cascading Style Sheet CSS2 – CSS/P
Esempi sui CSS.
Fogli stile a cascata Danilo Deana.
Ovvero lo stile di Internet TC-WEB Torino, 5 settembre 2012.
Linguaggi per il Web Linguaggi di markup: CSS. Cascading Style Sheets (CSS) servono per facilitare la creazione di pagine HTML con un aspetto uniforme.
XSLT Trasformazioni XSL Ing. Luca Sabatucci. XSLT Uno dei vantaggi principali nell'utilizzo dell'Extensible Markup Language è la facilità con cui si possono.
Modulo 6 – Strumenti di presentazione POWER POINT
Dott. Chiara Braghin Corso IFTS Informatica, Modulo 3 – Progettazione pagine web statiche (50 ore) HTML e i fogli di stile Dott.
1 IsaPress. 2 Obiettivo Realizzare uno strumento di facile uso per estrarre il contenuto da documenti binari di vario tipo in un formato utile per l'impaginazione.
1 IsaPress. 2 Obiettivo Realizzare uno strumento di facile uso per estrarre il contenuto da documenti binari di vario tipo in un formato utile per l'impaginazione.
HyperText Markup Language 17-23/6/08 Informatica applicata B Cristina Bosco.
CSS : Cascading Style Sheet
IL BOX MODEL Ogni box è caratterizzato da 1.Larghezza dello spazio per i contenuti ( width ) 2.Altezza dello spazio per i contenuti ( height ) 3.Spazio.
FORMATTARE LE LISTE DI LINK  MENU
Tecniche di accessibilità web Lezione 2 - Tecniche di layout avanzate Box model.
Cascading Style Sheet (Fogli di Stile in Cascata)
HTML Lezione 5 Immagini. URL Un Uniform Resource Locator o URL (Localizzatore di risorsa uniforme) è una sequenza di caratteri che identifica univocamente.
HTML Lezione 8 I collegamenti ipertestuali (link).
Paragrafi e allineamenti
Creare pagine web Xhtlm. Struttura di una pagina.
HTML Lezione 3 Stili.
HTML Lezione 7 Il modello dei contenitori. Gestire lo spazio tra gli elementi Lo spazio tra gli elementi della pagina o allinterno del contenuto di un.
CSS CASCADING STYLE SHEETS : CASCADING STYLE SHEETS : Fogli di stile a cascata Definisce il modo in cui verranno visualizzati gli elementi di una pagina.
Il Linguaggio HTML “Profe, ma io a casa l’HTML non ce l’ho!“
HTML HyperText Markup Language Linguaggio per marcare un’Ipertesto
Floating div. IL FLUSSO I diversi box sono inseriti nel così detto “flusso” I box a livello di blocco (compresi i box anonimi) si dispongono uno di seguito.
Corso Web CSV – Andiamo on-line 1 Andiamo on-line Corso di formazione Elementi base per la costruzione di un sito web.
TAG e CSS Ricalcare la grgilia di impaginazione. UNA STRUTTURA PER I CONTENUTI Oltre a caratterizzare i contenuti (titoli, paragrafi, liste, collegamenti),
La struttura del documento
WWW Link in XML Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo: u XLink.
CORSO Di WEB DESIGN prof. Leonardo Moriello
Corso di Introduzione all’Informatica
Programma delle lezioni LABORATORIO B  Lezione 01: 27/02martedi  Lezione 02: 06/03martedi  Lezione 03: 13/03martedi  Lezione 04:
Impostare i caratteri. Le prime versioni del linguaggio HTML così come le prime versioni dei browser consentivano unicamente la scelta tra due tipi di.
HTML e CSS C. Gena, C. Picardi, J. Sproston HTML e CSS.
WWW XSLT Ing. Michele Vindigni. WWW 2 Introduzione Oggi esaminiamo in breve: u XSLT, ovvero il linguaggio trasformazione per documenti XML con sintassi.
CSS Cascading Style Sheet
Fondamenti di Markup Languages: Richiami di HTML © 2005 Stefano Clemente Stefano Clemente
I fogli di stile XSL.
WWW XSLT Fabio Vitali. WWW Fabio Vitali2 Introduzione Oggi esaminiamo in breve: u XSLT, ovvero il linguaggio di stile di XML.
WWW XSL-FO Fabio Vitali. WWW A seguire: CSS (un ricapitolo)2/29 Introduzione Oggi esaminiamo in breve: u XSLFO, ovvero un vocabolario di elementi che.
Tesi di Laurea di: Relatore: Mariano Diasio Prof. Fabio Vitali
Master in Telemedicina HTML per iniziare Maria Simi, dicembre 2004 [da un tutorial di Rigget]
Tecnologia per la comunicazione
Il Fogli di Stile - CSS.
Riprendendo Il tag il tag Div rappresenta un contenitore. Tutto quello che è incluso fra il tag iniziale e quello di chiusura reagisce secondo gli stili.
INFORMAZIONE E PRESENTAZIONE Lo scopo di una pagina web è, essenzialmente la trasmissione di una informazione. L’informazione è costituita da due aspetti.
Una pagina HTML non è altro che un insieme di box rettangolari e che il flusso dell’informazione è sempre verticale. Gli elementi si dispongono sempre.
Linguaggi per il Web Linguaggi di markup: CSS. Fogli di stile Cascading Style Sheets Fogli di stile sovrapposti DEFINIZIONE Il CSS è l’insieme delle regole.
Float - ripresa. Float left: dispone a pila tutti i div sulla sinistra.
CSS. I FOGLI DI STILE HTML serve informare il browser di quali sono le componenti necessarie a mostrare un documento e ad articolare il documento in blocchi.
.… FRAME. Cosa è un FRAME Frame  cornice, riquadro Frame  cornice, riquadro. In HTML, frame è un’area nella finestra del browser nel quale possiamo.
LEZIONE 04 Riepilogo CSS. SELETTORI I selettori sono pattern (criteri di selezione) usati per individuare l'elemento (o gli elementi) a cui si desidera.
Transcript della presentazione:

WWW XSL-FO Fabio Vitali (sulla base di lucidi di Massimiliano Tambini -- grazie!)

WWW Fabio Vitali2 Introduzione Oggi esaminiamo in breve: u XSLFO, ovvero un vocabolario di elementi che specificano una semantica di formattazione per documenti XML.

WWW Fabio Vitali3 CSS (un ricapitolo) Linguaggio per assegnare proprietaà di formattazione a documenti HTML e XML. u Non ha meccanismi di manipolazione del contenuto u Non fissa in maniera definitiva le proprie tà del documento(possono essere cambiate dal lettore) u Orientatop ad un flusso continuo (paginazione come concetto aggiunto) Identifica le caratteristiche di presentazione come ornamenti dell'albero di partenza. u Informazioni stilistiche sono aggiunte ai nodi esistenti u Posso fare semplici prefissi e suffissi al contenuto dei nodi u Usa in maniera significativo il concetto di ereditarietà delle proprietà stilistiche. Supporto per media multipli u Su display interattivo grafico, display interattivo testuale (terminale VT100 o terminale braille), su supporto cartaceo, su presentatore vocale. Il W3C spinge per uniformare il modello e il vocabolario di proprietà stilistiche tra i linguaggi a quello di CSS.

WWW Fabio Vitali4 XSL (un ricapitolo) Composto da due linguaggi: u XSLT esegue trasformazioni attraverso regole. Qualunque linguaggio di destinazione è accettabile, perché dipende dall'applicazione che ne fa uso: un browser HTML vuole HTML, un browser WAP vuole WML, un browser XSLFO vuole XSLFO). u XSLFO (anche noto come XSL e basta): linguaggio di formattazione basato sulla paginazione di documenti di flusso. Permette costrutti di formattazione device-independent: è sempre possibile specificare due fogli di stile per due media diversi (es. carta e schermo), ma comunque il risultato nell'usarne uno solo può essere comunque reso accettabile. u Distingue tra proprietà visive e uditive (aurali)

WWW Fabio Vitali5 Evoluzione di XSL u 27 agosto 1997: prima nota del W3C che stabilisce la filosofia generale del linguaggio. u 18 agosto 1998: primo Working Draft che separa nettamente la fase di trasformazione dalla fase di visualizzazione. Cambia la sintassi. Sono introdotti i namespace. u 21 aprile 1999: separazione di XSL in due Draft distinti XSLT e XSL-FO. u Situazione attuale: Entrambi recommendation. Di XSLT esistono decine di implementazioni, di XSL- FO alcune per la creazione di documenti cartacei, solo una per la visualizzazione a schermo.

WWW Fabio Vitali6 Alcune distinzioni Rendering a layout o a flusso u Rendering a layout: la formattazione rispetta le caratteristiche fisiche del medium ponendo dei limiti sulla quantità o l'aspetto delle informazioni da presentare u Rendering a flusso: la formattazione rispetta le caratteristiche fisiche del contenuto generando quanto medium serve (nuove pagine o scroll più lunghi) Paginazione o scrolling u Lo scrolling è basato sul concetto di canvas infinito (o forse finito in una direzione sola), all'interno del quale le aree di visualizzazione si presentano in sequenza senza interruzioni. La presentazione uditivsa è in un certo senso a scrolling u La paginazione introduce dimensioni assolute e non modificabili (la pagina) e la possibilità di specificare regioni fisse e ripetibili (logo, intestazione, piè pagina, ecc.). Analogo al caso dei frame, più o meno.

WWW Fabio Vitali7 XSL-FO Scopi del linguaggio: u definire la fase di formattazione. u definire un vocabolario di elementi di formattazione indipendenti dal tipo di supporto utilizzato per l’output. Il legame tra le due definizioni è ovviamente molto stretto in quanto la fase di formattazione interpreta l’albero che risulta dall’eventuale trasformazione in base alla semantica degli oggetti di formattazione che lo costituiscono.

WWW Fabio Vitali8 Introduzione alla formattazione Nell’output su supporti visuali per astrarre dal tipo di scrittura usato (ad esempio occidentale o orientale) si introduce il concetto di writing- mode che definisce: u Direzioni relative (block- e inline- progression- direction) u Riferimenti relativi (before, after, start o end)

WWW Fabio Vitali9 Fasi della formattazione La fase di formattazione è schematizzabile in cinque passi: 1. Trasformazione del documento XML attraverso un documento XSLT in un documento XSLFO 2. Trasformazione dell’albero in uno costituito, non da elementi e attributi, ma da oggetti di formattazione e loro proprietà. 3. Raffinamento dell’albero degli oggetti di formattazione ovvero mapping dalle proprietà nelle caratteristiche. Scioglimento dei valori relativi, ereditati, calcolati, raggruppati 4. Costruzione dell’albero delle aree. Identificazione degli elementi ripetuti, fissi, ecc. 5. Rendering finale

WWW Fabio Vitali10 1: Generazione del documento XSLFO n La trasformazione cambia completamente il modello dell'albero, generando nuovi oggetti e anche nuovo contenuto (ad esempio elementi ripetuti o fissi). n La forma dell'albero è completamente diversa dal documento di partenza.

WWW Fabio Vitali11 2: Costruzione dell’albero dei FO n Vengono generati gli elementi di formattazione. n Ogni elemento genera un oggetto, ogni attributo genera un proprietà dell'albero. n Identificazione degli elementi del namespace FO e mantenimento degli altri.

WWW Fabio Vitali Raffinamento dell’albero Valori specificati, calcolati e applicabili. u Valore in % u Valore assoluto u Valore espresso in unità di misura utilizzate dall'output (es. pixel) Proprietà espresse in forma breve  Border: “ 10px solid blue ” Mapping di proprietà relative u Border-before = border-top se writing-mode è lr-tb

WWW Fabio Vitali Albero delle aree e rendering n Vengono generati gli oggetti di visualizzazione con le dimensioni definitive n Avviene la paginazione con la moltiplicazione degli oggetti ripetuti, ecc. n L'oggetto viene visualizzato sull device di output specificato.

WWW Fabio Vitali14 Un esempio Ciao mondo Ciao mondo!

WWW Fabio Vitali15 Modello delle aree Il modello delle aree definisce aree rettangolari e spazi tra aree. Le aree rettangolari, generate dagli oggetti di formattazione, riservano spazio e racchiudono contenuto. Gli spazi riservano spazio prima e dopo le aree rettangolari e non hanno contenuto.

WWW Fabio Vitali16 Aree Rettangolari u Block-area u Inline-area. La loro differenza principale sta nel modo in cui normalmente il formatter le posiziona. Esse vengono tipicamente posizionate seguendo rispettivamente la block-progression-direction e la inline-progression-direction, in alcuni casi però è possibile che siano posizionate esplicitamente (ad esempio in base alle absolute-position-properties).

WWW Fabio Vitali17 Aree Rettangolari, caratteristiche comuni

WWW Fabio Vitali18 Caratteristiche comuni (2) u Content rectangle. u Padding Rectangle. u Border Rectangle. u Allocation Rectangle: definisce la dimensione usata per allocare spazio quando l’area viene posizionata nell’area padre.

WWW Fabio Vitali19 Aree Rettangolari e writing-mode

WWW Fabio Vitali20 Spazi Gli spazi riservano spazio prima e dopo le aree rettangolari e non hanno contenuto. Essi vengono definiti attraverso un tipo di dato composto dalle seguenti informazioni: u Space.minimum u Space.maximum u Space.optimum u Space.conditionality u Space.precedence In generale gli stessi formatting-object che generano aree rettangolari generano gli spazi ad esse associati.

WWW Fabio Vitali21 Viewport Ci sono situazioni in cui il contenuto di un’area non viene completamente visualizzato. Questo può accadere se tale contenuto genera un overflow e l’area che lo contiene ha la proprietà overflow uguale a hidden. Un altro caso può verificarsi se il designer riduce la zona visibile di un’area attraverso la proprietà clip. Date queste situazioni si definisce viewport la zona visibile di un area, ad esempio page-viewport-area o block-viewport-area.

WWW Fabio Vitali22 I formatting-object Ci sono tre tipi di formatting-object: quelli che generano aree, quelli che restituiscono aree modificandone eventualmente le caratteristiche e quelli usati da altri formatting-object per generare aree. I primi due tipi sono comunemente chiamati flow-object, il terzo tipo può essere detto layout-object o auxiliary- object.

WWW Fabio Vitali23 FO di impaginazione e layout Permettono di definire sia la struttura di layout di una pagina o frame (dimensioni e posizione del body e sua eventuale suddivisione in colonne, header, footer, side-bar) sia le regole attraverso cui il contenuto di partenza è sistemato in questi contenitori attraverso: u fo:simple-page-master u fo:page-sequence

WWW Fabio Vitali24 Block-level FO u Sono generalmente usati per la formattazione di titoli, paragrafi, didascalie di immagini, tabelle o liste. u Generano block-area. Ad esempio: <fo:block text-align="center" space-after="8pt" space-before="16pt" space-after.precedence="3"> Contenuto dell'area

WWW Fabio Vitali25 Inline-level FO u Il loro utilizzo più comune è per la gestione di immagini, la formattazione di elementi all’interno di linee come ad esempio assegnare bordi colorati a caratteri o parole e la formattazione di elementi di link. Il contenuto dell'elemento

WWW Fabio Vitali26 Altri FO u fo:wrapper Permette di attribuire un set di proprietà a tutti i suoi elementi figli. u Utilizzo classico: Testo in stile corsivo

WWW Fabio Vitali27 Proprietà dei FO (1) Le proprietà di XSLFO sono in buona parte uguali a quelle di CSS (per volontà del W3C, che vuole uniformare concetti e vocabolari fin dove possibile). Quindi ogni proprietà XSLFO (un attributo) può essere uno di: u Una proprietà CSS2 non modificata u Una proprietà CSS2 con valori in un set esteso u Una proprietà CSS2 modificata o estesa in ambito u Una proprietà solo XSLFO Le proprietà possono essere caratterizzate nel seguente modo: u Posizionamento assoluto (top, bottom, left, right) u Proprietà uditive (pause, pitch, stress, voice-family, ecc) u Proprietà di border, padding e background u Proprietà di font (font-family, font-size, font-style, font-weight, ecc.)

WWW Fabio Vitali28 Proprietà dei FO (2) u Proprietà di sillabazione (dipendenti dal linguaggio) u Proprietà di margine per blocchi e inline u Posizionamento relativo u Proprietà di area u Proprietà di blocchi e inline u Proprietà di carattere u Colori u Elementi Float, keep e break (inclusi orfani e vedove) u Proprietà per effetti dinamici u Proprietà di paginazione e layout u Proprietà di tabelle u Altre proprietà miste

WWW Fabio Vitali29 Riferimenti n S. Adler et alii., Extensible Stylesheet Language (XSL) Version 1.0, W3C Recommendation 15 October 2001, n Crane Softwrights, Practical Formatting Using XSLFO, Second Edition - ISBN , , prev-a4-dbl-pdf.zip