1 / 28

Codifica dell'informazione testuale

Presentazione 1.4. Codifica dell'informazione testuale. Architettura dell'informazione | Prof. Luca A. Ludovico. Informazione testuale. Obiettivo: definire e descrivere i principali formati di file per la codifica di informazione testuale

jaeger
Download Presentation

Codifica dell'informazione testuale

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Presentazione 1.4 Codifica dell'informazione testuale Architettura dell'informazione | Prof. Luca A. Ludovico

  2. Informazione testuale • Obiettivo: definire e descrivere i principali formati di file per la codifica di informazione testuale • Solo testo semplice? Non necessariamente: sia nell’editoria tradizionale sia in quella digitale, i testi possono essere arricchiti da informazione ulteriore: • Aspetti di formattazione (tipo e dimensione del carattere, colore del testo, …) e di layout (margini, disposizione del testo in colonne, …) • Aggiunta di immagini, grafici, formule matematiche, collegamenti ipertestuali, suoni, … • Strutturazione logica del documento (titoli di vario livello, citazioni, …) Architettura dell'informazione Prof. Luca A. Ludovico

  3. Testo semplice Parte 1

  4. Testo semplice (plain text) • Il formato più semplice per codificare testo digitale è il cosiddetto testo semplice, o plain text • Si tratta del contenuto di un file binario interpretabile come materiale testuale semplicemente traducendo la codifica dei caratteri uno ad uno, senza ricorrere a ulteriori elaborazioni • La codifica storicamente ha utilizzato i caratteri della tabella ASCII e i suoi derivati Architettura dell'informazione Prof. Luca A. Ludovico

  5. ASCII • L’American Standard Code for Information Interchange (pronuncia fonetica: /ˈæski/ ass-kee) è uno schema di codifica dei caratteri basato originariamente sull’alfabeto inglese • La standardizzazione trae origine dal mondo dei codici telegrafici, e ha inizio nel 1960 presso i laboratori Bell. I codici telegrafici vengono migliorati per quanto riguarda l’ordine dei caratteri e il supporto di caratteristiche superiori rispetto alle telescriventi dell’epoca • Al giorno d’oggi si utilizzano schemi estesi con un maggior numero di caratteri (si veda ad es. l’UTF-8 più avanti), ma spesso basati sulla codifica ASCII Architettura dell'informazione Prof. Luca A. Ludovico

  6. ASCII • ASCII utilizza una codifica a 7 bit. Ne consegue la possibilità di rappresentare 27 diverse combinazioni di caratteri binari {0000000..1111111}2 = {0..127}10 • ASCII fornisce la definizione di 128 caratteri: • 33 caratteri di controllo non stampabili (parecchi obsoleti) che riguardano il controllo dei dispositivi di stampaAd esempio, il carattere 8 è il backspace mentre il 10 rappresenta la funzione "line feed“, che provoca l’avanzamento della carta in una stampante • 95 caratteri stampabili, tra cui le cifre 0..9, le lettere minuscole a..z e le corrispettive maiuscole A..Z, comuni segni di punteggiatura e il carattere spazio (segno grafico invisibile) Architettura dell'informazione Prof. Luca A. Ludovico

  7. ASCII Tabella dei codici ASCII a 7 bit {0..127}

  8. Esempio di file TXT • Creiamo un file di testo contenente la stringa:Ciao alunni! • Una volta salvato, ha dimensione 12 Byte = 12 · 8 bit • Coerente con la codifica ASCII estesa, in quanto il file contiene 12 caratteri da 8 bit ciascuno • Apriamo il file con un viewer esadecimale • Ad esempio, si può sfruttare il servizio on-line gratuito offerto da http://webhex.net/ Architettura dell'informazione Prof. Luca A. Ludovico

  9. ASCII esteso Aggiungendo un ottavo bit, si raddoppia lo spazio di indirizzamento e di conseguenza il numero di caratteri rappresentabili. Alla tabella precedente {0..127} si aggiungono i caratteri qui mostrati {128..255}

  10. Curiosità: ASCII art • L’ASCII art è una tecnica grafica per la creazione di immagini facendo uso di combinazioni opportune dei 95 caratteri stampabili ASCII • Un’opera in ASCII art può essere creata con qualsiasi editor di testo semplice • La maggior parte degli esempi richiede per la visualizzazione l’adozione di un font monospaziato, quale il Courier • In un font monospaziato, ogni carattere tipografico occupa un ugual numero di punti, che sia “largo” (ad esempio “m”) o stretto (ad esempio “l”) Architettura dell'informazione Prof. Luca A. Ludovico

  11. Emoticon e smiley • Sono le formepiùsemplici di ASCII art: combinazioni di pochicaratteri, convenzionalmenteusate per esprimereemozioniall’interno di messaggi di testosemplice • SMS, applicazioni di messaggisticaistantanea, … :-) :-( :’( :D =D • Al contrario, ikaomojio ASCII face non richiedono la rotazionementaledell’immagine (O.O) (-.-') (>.<) Architettura dell'informazione Prof. Luca A. Ludovico

  12. Esempio http://upload.wikimedia.org/wikipedia/commons/4/4a/Wikipedia-Ascii.png

  13. ASCII art converter Esempio di software di conversione online (gratuito): http://picascii.com/ Esempi di conversione: http://www.text-image.com/samples.html Architettura dell'informazione Prof. Luca A. Ludovico

  14. Evoluzioni dell’ASCII: ISO/IEC 8859 • Standard per la codifica di caratteri ad 8 bit per il trattamento informatico di testi. La norma è divisa in parti numerate pubblicate separatamente (ISO/IEC 8859-1, ISO/IEC 8859-2, etc), ognuna delle quali può essere considerata standard a sé stante. Ci sono attualmente 15 parti definite, escludendo la ISO/IEC 8859-12, abbandonata. • Idea: usando l'ottavo bit del byte, si definiscono altri 128 caratteri rispetto ad ASCII. Vengono dunque sviluppate diverse mappe di caratteri, in cui i 128 caratteri aggiuntivi si fanno corrispondere a simboli differenti a seconda della mappa • Una decina di mappe copre le sole lingue latine Architettura dell'informazione Prof. Luca A. Ludovico

  15. Comparazione tra le parti di ISO 8859

  16. Evoluzioni dell’ASCII: Unicode • Unicode è un sistema di codifica che assegna un numero univoco ad ogni carattere usato per la scrittura di testi, in maniera indipendente dalla lingua, dalla piattaforma informatica e dal programma utilizzato • Unicode incorpora, nella primissima parte, la codifica ISO/IEC 8859-1, ma va molto oltre, codificando i caratteri usati in quasi tutte le lingue vive e in alcune lingue morte, nonché simboli matematici e chimici, cartografici, l'alfabeto Braille, ideogrammi ecc. • Il codice assegnato al carattere viene rappresentato con U+, seguito dalle quattro (o sei) cifre esadecimali del numero che lo individua • Esempio: in Windows, si apra Mappa caratteri relativa al font Times New Roman Architettura dell'informazione Prof. Luca A. Ludovico

  17. Evoluzioni dell’ASCII: Unicode • Unicode è un sistema di codifica che assegna un numero univoco ad ogni carattere usato per la scrittura di testi, in maniera indipendente dalla lingua, dalla piattaforma informatica e dal programma utilizzato • Il codice assegnato al carattere viene rappresentato con U+, seguito dalle quattro (o sei) cifre esadecimali del numero che lo individua • Unicode incorpora, nella primissima parte, la codifica ISO/IEC 8859-1, ma va molto oltre, codificando i caratteri usati in quasi tutte le lingue vive e in alcune lingue morte, nonché simboli matematici e chimici, cartografici, l'alfabeto Braille, ideogrammi ecc. Architettura dell'informazione Prof. Luca A. Ludovico

  18. UTF-8 • UTF-8 (Unicode Transformation Format, 8 bit) è una codifica dei caratteri Unicode in sequenze di lunghezza variabile di byte • UTF-8 usa da 1 a 4 byte per rappresentare un carattere Unicode. Per esempio un solo byte è necessario per rappresentare i 128 caratteri dell'alfabeto ASCII, corrispondenti alle posizioni Unicode da U+0000 a U+007F. • La IETF (Internet Engineering Task Force) richiede che tutti i protocolli Internet identifichino la codifica dei caratteri utilizzata, e che siano in grado di utilizzare UTF-8 Architettura dell'informazione Prof. Luca A. Ludovico

  19. Codifica dei caratteri in UTF-8 • Quanti caratteri differenti si possono rappresentare in UTF-8?In teoria 232 = 4.294.967.296 = circa 4 miliardi • In realtà le sequenze di byte godono di queste proprietà: • Il bit più significativo di ogni sequenza composta di un singolo byte è sempre 0. • I bit più significativi del primo di una sequenza di più byte indicano la lunghezza della sequenza. Questi bit sono 110 per le sequenze di due byte, e 1110 per quelle di tre. • I byte successivi al primo in una sequenza composta da più byte hanno sempre 10 come bit più significativi • UTF-8 è stato progettato per soddisfare queste tre proprietà, in modo da garantire che nessuna sequenza di byte corrispondente a uno specifico carattere sia contenuta in una sequenza più lunga, usata per codificare un carattere diverso. Architettura dell'informazione Prof. Luca A. Ludovico

  20. Testo formattato Parte 2

  21. Plain text vs. styled (rich) text • Secondo lo standard Unicode, esistono due proprietà che permettono di distinguere immediatamente il testo semplice da quello formattato: • Il testosemplice è ilcontenuto cui sipuòapplicare la formattazione«Plain text is the underlying content stream to which formatting can be applied» • Il testosemplice è pubblico, standard e universalmenteleggibile«Plain text is public, standardized, and universally readable» Architettura dell'informazione Prof. Luca A. Ludovico

  22. Rich Text Format (RTF) • Formato proprietario per documenti multipiattaforma, sviluppato nel 1981 e perfezionato nel 1987 da Microsoft • La maggior parte degli editor di testo e dei word processor disponibili per Microsoft Windows, Mac OS e Linux sono in grado di leggere e scrivere documenti RTF →interoperabilità (anche se è un formato proprietario e mai standardizzato, spesso «protetto» da Microsoft contro i concorrenti) • Un documento RTF è un file ASCII con stringhe di comandi speciali in grado di controllare le informazioni riguardanti la formattazione del testo: il tipo di carattere e il colore, i margini, i bordi ecc. Architettura dell'informazione Prof. Luca A. Ludovico

  23. Caratteristiche supportate in RTF • Immagini: JPEG, Portable Network Graphics (PNG), Enhanced Metafile (EMF), Windows Metafile (WMF), Apple PICT, Windows bitmap • Oggetti disegnati: rettangoli, ellissi, ecc. • Font: inclusione di font specifici (spesso non gestita dai software) e di generiche famiglie di font per le sostituzioni: roman (serif), swiss (sans-serif), modern (monospace), ecc. • Commenti e metadati (titolo, autore, …) Architettura dell'informazione Prof. Luca A. Ludovico

  24. Un semplice esempio RTF { \rtf Ciao!\par Ecco del testo in {\b grassetto}.\par } Ciao! Ecco del testo in grassetto. • La barra rovesciata (backslash) indica l'inizio di un codice di comando RTF • Il comando \par introduce una nuova riga • Il comando \b attiva il testo in grassetto • Le parentesi graffe { e } definiscono un gruppo per limitare il raggio d'azione di un comando • Tutto il resto viene trattato come testo semplice o da formattare • Un documento RTF valido è un gruppo il cui primo comando è \rtf Architettura dell'informazione Prof. Luca A. Ludovico

  25. Markup (vedi prossima lezione) • Un linguaggio di marcatura (markup) è un insieme di regole (convenzioni) che descrivono i meccanismi di rappresentazione di un testo. Un file in un linguaggio di marcatura contiene dati testuali e metadati strutturali, semantici o presentazionali. • Situazione ambigua: • i file contenenti markup generalmente sono considerati plain text in quanto contengono testo semplice (anche i marcatori sono espressi in testo semplice) • però contengono anche informazione di formattazione (si pensi ad HTML e RTF) Architettura dell'informazione Prof. Luca A. Ludovico

  26. Conclusioni

  27. Il plain text nelle definizioni Unicode Plain text represents the basic, interchangeable content of text. Plain text represents character content only, not its appearance. It can be displayed in a variety of ways and requires a rendering process to make it visible with a particular appearance. If the same plain text sequence is given to disparate rendering processes, there is no expectation that rendered text in each instance should have the same appearance. Instead, the disparate rendering processes are simply required to make the text legible according to the intended reading. The relationship between appearance and content of plain text may be summarized as follows: Plain text must contain enough information to permit the text to be rendered legibly, and nothing more. Architettura dell'informazione Prof. Luca A. Ludovico

  28. Contesti d’uso • Indipendenza da software e architetture HW • I file plain text si possono aprire, leggere e modificare con numerosissime applicazioni, tra cui Notepad (Windows), edit (DOS), ed, emacs, vi, vim, Gedit or nano (Unix, Linux), SimpleText (Mac OS) e TextEdit (Mac OS X). • Uso radicato per alcune applicazioni, quali i file di configurazione e di avvio, la posta elettronica e i web browser testuali (ad es. Lynx) • Scrittura di codice sorgente (istruzioni) nei linguaggi di programmazione ad alto livello (ad es. C++, Java, HTML) Architettura dell'informazione Prof. Luca A. Ludovico

More Related