[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico] [volume] [parte]


Capitolo 107.   AbiWord

AbiWord (1) è un applicativo per la scrittura a formattazione visuale (WYSIWYG), disponibile anche su piattaforme diverse dai sistemi Unix. Per quanto riguarda questi ultimi, si tratta ovviamente di un'applicazione per X, che utilizza in particolare le librerie GTK, cosa che lo integra esteticamente nell'ambiente di Gnome.

L'eseguibile da avviare è abiword e il suo aspetto si vede nella figura 107.1.

Figura 107.1. L'aspetto di AbiWord.

figure/a2-abiword-inizio

107.1   Formato del documento di AbiWord

AbiWord può utilizzare diversi formati per la memorizzazione dei dati. In generale, il formato normale, a cui corrisponde l'estensione .abw, è basato su un sistema XML con DTD proprio. L'esempio seguente rappresenta un estratto del file che descrive quanto appare nella figura 107.1:


<?xml version="1.0"?>
<!DOCTYPE abiword PUBLIC "-//ABISOURCE//DTD AWML 1.0 Strict//EN"
 "http://www.abisource.com/awml.dtd">
<abiword xmlns:awml="http://www.abisource.com/awml.dtd" version="unnumbered"
 fileformat="1.0" styles="unlocked">
<!-- =====================================================================  -->
<!-- This file is an AbiWord document.                                      -->
<!-- AbiWord is a free, Open Source word processor.                         -->
<!-- You may obtain more information about AbiWord at www.abisource.com     -->
<!-- You should not edit this file by hand.                                 -->
<!-- =====================================================================  -->

<styles>
...
</styles>
<pagesize pagetype="A4" orientation="portrait" width="210.000000"
 height="297.000000" units="mm" page-scale="1.000000"/>
<section props="page-margin-footer:0.0000in; page-margin-header:0.0000in;
 page-margin-right:1.0000in; page-margin-left:1.0000in;
 page-margin-top:1.0000in; page-margin-bottom:1.0000in">
<p style="Heading 1">AbiWord Help</p>
<p style="Normal">These are the help files for AbiWord. They are normally
 installed with the program, but if you have found them elsewhere, you can
 read an introduction to AbiWord.</p>
...
</section>
</abiword>

Pur non conoscendo il DTD di questo sistema XML, si intende intuitivamente il significato degli elementi e degli attributi relativi, consentendo così un modo alternativo e facile per modificare il documento attraverso un programma di scrittura normale.

Il file XML generato da AbiWord utilizza la codifica UTF-8 (Unicode); pertanto, se il contenuto va al di fuori dei soliti 127 punti di codifica, vengono usati più byte per un solo carattere. In tal senso, la modifica di un file di AbiWord può essere fatta solo con un programma che sia in grado di riconoscere la codifica UTF-8 e in generale le varie codifiche Unicode, ovvero ISO 10646.

Il file XML di AbiWord può anche essere compresso con Gzip, ma AbiWord, contrariamente a Gnumeric, salva solo nel modo normale.

107.2   Stili

Una caratteristica importante di AbiWord è la capacità di gestire degli stili; ciò consente di realizzare e modificare facilmente un documento uniforme esteticamente. Il principio di funzionamento è relativamente semplice: si distinguono stili riferiti a porzioni di testo e stili riferiti a blocchi di testo (paragrafi). Ogni stile ha un nome e si applica alla porzione di testo o al blocco, in base alle sue caratteristiche; modificando lo stile, si modifica automaticamente tutto ciò che in precedenza è stato abbinato a quello stile.

AbiWord offre degli stili predefiniti, che facilitano notevolmente l'utilizzo di questa tecnica; inoltre, nel momento in cui si crea uno stile personalizzato, si parte preferibilmente dai valori di uno stile pre-esistente (di solito uno di quelli predefiniti), che vengono poi modificati in base alle esigenze.

Figura 107.2. La maschera iniziale per l'accesso alla gestione degli stili. Si osservi il fatto che è stato richiesto l'elenco di tutti gli stili: quelli predefiniti e quelli definiti dall'utente.

figure/a2-abiword-stili

Dalla maschera iniziale per la gestione degli stili, come si vede nella figura 107.2, selezionando il pulsante grafico <Nuovo> o <Modifica>, si accede rispettivamente alla maschera per la creazione o la modifica di uno stile. Le due maschere sono uguali; la differenza sta nel fatto che nel primo caso occorre inserire il nome dello stile da creare.

Figura 107.3. La maschera per la creazione o la modifica degli stili.

figure/a2-abiword-stili-modifica

La figura 107.3 mostra l'esempio dello stile Titolo, riferibile a blocchi di testo (paragrafi), che utilizza come punto di partenza lo stile Heading 1. Nel riquadro inferiore si possono leggere le differenze rispetto allo stile di partenza.

La definizione degli stili viene incorporata nel documento che si crea, nel preambolo che precede il contenuto vero e proprio del documento. Per esempio, potrebbe apparire come nel listato 107.2. Come si può osservare, gli stili usati e quelli a cui si fa riferimento vengono descritti completamente: viene definito lo stile Normal, perché a questo fa riferimento lo stile Heading 1, inoltre viene descritto lo stile Titolo, definito dall'utente come variante di Heading 1.

Listato 107.2. Gli stili incorporati nel file del documento.


<?xml version="1.0"?>
<!DOCTYPE abiword PUBLIC "-//ABISOURCE//DTD AWML 1.0 Strict//EN"
 "http://www.abisource.com/awml.dtd">
<abiword xmlns="http://www.abisource.com/awml.dtd"
 xmlns:awml="http://www.abisource.com/awml.dtd"
 xmlns:xlink="http://www.w3.org/1999/xlink"
 xmlns:svg="http://www.w3.org/2000/svg"
 xmlns:fo="http://www.w3.org/1999/XSL/Format"
 xmlns:math="http://www.w3.org/1998/Math/MathML"
 xmlns:dc="http://purl.org/dc/elements/1.1/" version="0.99.2"
 fileformat="1.0" styles="unlocked">
<!-- =====================================================================  -->
<!-- This file is an AbiWord document.                                      -->
<!-- AbiWord is a free, Open Source word processor.                         -->
<!-- You may obtain more information about AbiWord at www.abisource.com     -->
<!-- You should not edit this file by hand.                                 -->
<!-- =====================================================================  -->

<styles>
<s followedby="Normal" name="Titolo" basedon="Heading 1" type="P"
 props="bgcolor:transparent; margin-top:28pt; font-size:18pt;
 margin-bottom:14pt; font-family:Courier New; font-weight:bold"/>
<s type="P" name="Heading 1" basedon="Normal" followedby="Normal"
 props="keep-with-next:1; margin-top:22pt; font-weight:bold;
 margin-bottom:3pt; font-family:Arial; font-size:17pt"/>
<s type="P" name="Normal" basedon="" followedby="Current Settings"
 props="font-family:Times New Roman; margin-top:0pt; font-variant:normal;
 margin-left:0pt; text-indent:0in; widows:2; font-style:normal;
 font-weight:normal; text-decoration:none; color:000000; line-height:1.0;
 text-align:left; margin-bottom:0pt; text-position:normal; margin-right:0pt;
 bgcolor:transparent; font-size:12pt; font-stretch:normal"/>
</styles>
<pagesize pagetype="A4" orientation="portrait" width="210.000000"
 height="297.000000" units="mm" page-scale="1.000000"/>
<section props="page-margin-footer:0.5in; page-margin-header:0.5in">
<p style="Titolo"><c props="lang:it-IT">Questo è un titolo</c></p>
<p style="Normal"><c props="lang:it-IT">Ciao a tutti</c></p>
<p style="Titolo"><c props="lang:it-IT"></c></p>
</section>
</abiword>

L'esempio del listato 107.2 è completo, dove in particolare la stringa è rappresenta due byte che in realtà esprimono la lettera «è» secondo la codifica UTF-8.

Si comprende dall'esempio quanto sia facile modificare gli stili anche intervenendo direttamente nel sorgente ABW del documento.

Appunti di informatica libera 2003.01.01 --- Copyright © 2000-2003 Daniele Giacomini -- daniele @ swlibero.org

1) AbiWord   GNU GPL


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome abiword.html

[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico]