Le Tabulazioni (tabelle)
Dopo molti tentennamenti ho deciso di lasciare perdere (per il momento) la gestione delle vere e proprie tabelle in RTF perchè sono un macello inimmaginabile.
Inoltre se Word incontra una tabella fatta non proprio come si deve và irrimediabilmente in crash.
Quindi utilizzeremo solamente dei tabulatori per costruire delle visualizzazioni tabellari.
La definizione di una tabulazione in RTF consiste fondamentalmente nell'inserire un tag che specifica dove deve trovarsi la tabulazione, ed un tag per usare la tabulazione stessa.
In RTF le tabulazioni devono essere specificate in TWIPS (ventesimi di punto tipografico), per evitare problemi però si è preferito convertire i dati internamente, permettendo così di specificare il tutto in millimetri.
/*
* Imposta una tabulazione
*/
function ImpostaTabulazione( reportFile, tagFile, tabulazione )
{
var tabTwips;
var tag;
tabTwips = tabulazione * 56.7
tag = LeggiTag( "Tabulazione", tagFile ) + tabTwips + " ";
reportFile.WriteLine( tag );
}
/*
* Inizia una linea tabulata
*/
function IniziaLinea( reportFile, tagFile )
{
ScriviTagNelReport( tagFile, reportFile, "InitTab" );
}
/*
* Chiude una linea tabulata
*/
function FinisciLinea( reportFile, tagFile )
{
ScriviTagNelReport( tagFile, reportFile, "EndTab" );
}
/*
* Inserisce un carattere di tabulazione
*/
function InserisiciTab( reportFile, tagFile )
{
ScriviTagNelReport( tagFile, reportFile, "Tab" );
}
ImpostaTabulazione
ScriviTagNelReport
WriteLine
IniziaLinea
FinisciLinea
L'elenco dei Tag
Fino ad ora abbiamo definito le funzioni che leggono i vari Tag e li inseriscono nel report, ora dobbiamo definire i singoli Tag.
L'elenco dei Tag è il seguente:
InizializzaReport@{\rtf1\ansi
MarginiPagina@\margl1134\margr1134\margt1418\margb1134
TerminaReport@}
Portrait@\paperw11907\paperh16840
Landscape@\paperw16840\paperh11907
FineParagrafo@\par
InizioTabellaStili@{\fonttbl
Titolo1@{\f1\fswiss\fcharset0\fprq2 Arial;}
Titolo2@{\f2\fswiss\fcharset0\fprq2 Arial;}
Titolo3@{\f3\fswiss\fcharset0\fprq2 Arial;}
Titolo4@{\f4\froman\fcharset0\fprq2 Times New Roman;}
Normale@{\f5\froman\fcharset0\fprq2 Times New Roman;}
Testo@{\f6\froman\fcharset0\fprq2 Courier;}
PieDiPagina@{\f6\froman\fcharset0\fprq2 Courier;}
Intestazione@{\f6\froman\fcharset0\fprq2 Courier;}
FineTabellaStili@}
Stile_Titolo1@{\f1\fs48
Stile_Titolo2@{\f2\fs40
Stile_Titolo3@{\f3\fs36
Stile_Titolo4@{\f4\fs24\b
Stile_Normale@{\f5\fs20
Stile_Testo@{\f6\fs20
Stile_PieDiPagina@{\f7\fs16
Stile_Intestazione@{\f8\fs16
FineStile@}
InizioGrassetto@{\b
FineGrassetto@}
InizioCorsivo@{\i
FineCorsivo@}
Tabulazione@\tx
Tab@\tab
InitTab@{
EndTab@}\parIl tag MarginiPagina è predisposto per dimensionare la pagina come un A4 (21x29.7 cm), se si volesse usare una dimensione di pagina diversa basterà modificare la dimensione o aggiungere altri tag "specializzati" per le varie dimensioni. I margini sono specificati in TWIPS.
Contenuti dell'articolo
- Pagina 1
- Pagina 2
- Pagina 3
- Pagina 4
- Pagina 5
- Pagina 6
- Pagina 7
- I nuovi controlli di ASP.NET 3.5: LinqDataSource, ListView e DataPager
- Galleria fotografica dinamica con ASP.NET AJAX
- Usare Search come un servizio nei tuoi siti e nei tuoi client
- Mappe nel tuo sito con Virtual Earth
- Integrare Windows Live ID, Contacts e Presence API nelle tue applicazioni
- Introduzione ai cloud based service con Windows Live Services
- Realizzare un custom extender AJAX con ASP.NET 3.5
- Tracciare le modifiche ai dati e allineare i datawarehouse con il Change Data Capture in SQL Server 2008
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.





Difficoltà
Utilità
Stampa
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!