Risposte nei forum create
-
AutoreRisposte
-
::
Turbodede” post=80601salve a tutti
Volevo sapere se potevate aiutarmi in merito al posizionamento di una figura. In particolare nel mio testo per la tesi sto ho intenzione di anteporre ad una tabella una figura. Sul file di Texworks ho fatto così ma quando elabora il pdf le figure vengono spostate in maniera abbastanza folle. Sono a conoscenza del posizionamento delle figure e nell`esempio credo che la follia sia più totale (vedi esempio allegato) in quanto nella pagina lo spazio c è ma il posizionamento è fatto in maniera casuale.
posso anche incollarvi lo scripting per chiarire meglio la faccenda:`\subsection{Description}
\subsubsection{General}
\begin{figure} [!htp]
\begin{center}
\includegraphics[width=.8\textwidth]{Lato_numerato.jpg}
\caption{Main parts, PFT fan}
\label{Lato_numerato}
\end{center}
\end{figure}\begin{center}
\begin{tabular}{ll}
\toprule
1. & Flexible connection, inlet\\
2. & Inlet box\\
3. & Impeller casings\\
4. & Intermediate part\\
5. & Diffuser\\
6. & Flexible connection, outlet\\
7. & Motor\\
8. & Main bearing\\
9. & Impellers\\
10. & Control mechanism\\
11. & Hydraulic oil unit \\
12. & Sealing air fan system\\
\bottomrule
\end{tabular}
\end{center}All static parts of the fan, e.g. the inlet box (2), the impeller casing (3),
the intermediate part (4) and the diffuser (5) are of welded design and
fastened together with bolts. Moving parts are of machine-made design. The
impeller blades are made of modular iron while other parts are fabricated
mainly in steel.
Access doors are provided for the purpos…bla bla bla`pensate che ci sia una soluzione al mio problema? Calcolate anche che nella mia tesi ci sono moltissime immagini e che una soluzione complessa implicherebbe un mucchio di lavoro per me…ma a mali estremi…
Grazie mille per il vostro tempo…come al solito la mia tesi ringrazia…:smile:
Solo se sei alla fase finale di correzione delle bozze, prova a spostare l’inserimento del codice dell’oggetto mobile nel sorgente.
Di solito io risolvo così.
Altrimenti il comando \clearpage inserisce una barriera oltre la quale gli oggetti non possono essere collocati.
Ancora, se hai molte figure e tabelle è comunque normale un posizionamento degli oggetti mobili da parte di LaTeX non proprio ottimale.
Prova a dare l’opzione p all’ambiente flottante perché questi vengano sistemati in una pagina intera lasciando un po’ di respiro al testo.Saluti.
Ps. Nell’Arte di Pantieri e Gordini c’è comunque scritto tutto ed anche molto meglio.
Bye
::Elrond” post=80598Un consiglio:
`git rm *.aux *.log *.out *.synctex.gz *.toc`
Personalmente cancellerei anche il documento PDF: in un repository andrebbe solo il sorgente, non i binari (o qualsiasi altro file) prodotto a partire dal sorgente già presente. Motivo: se creo un fork il repository e se per qualche motivo con la mia infrastruttura LaTeX produco un PDF diverso (per esempio a causa di versioni differenti dei pacchetti), potrei accidentalmente fare un commit in cui è cambiato solo il PDF senza toccare il sorgente, cioè sarebbe un commit “a vuoto”. Con i software è ancora più semplice incappare in problemi simili, basta lavorare su architetture diverse, il file binario verrebbe continuamente modificato da ogni utente che ha accesso al repository.Comunque grazie, volevo proprio dare un’occhiata al sorgente di questa guida, mi serve una cosa in particolare, dopo che nei giorni scorsi sono riuscito a vedere finalmente la classe guidatematica 😀
Grazie per i consigli.
Mi chiedevo giusto gusto come regolarmi sugli aspetti che hai segnalato.
Grazie per il comando git (servirà una piccola guida per aiutare gli utenti con questo progetto… 🙂 ).
In realtà i file ausiliari mi sono “scappati” nel repo mentre il pdf è giustamente inutile anzi dannoso comprenderlo.
Grazie.
R.
::
Ciao a tutti.
I sorgenti della ‘Guida tematica alla riga di comando’ sono disponibili nel repository github del gruppo.Come promesso, da ora in avanti la guida potrà essere sviluppata in modo collaborativo attraverso il sistema di controllo git che permette di inviare ‘pull request’ all’indirizzo del repository principale.
Veramente interessante non credete?
Roberto
::tipografialeone” post=80557Salve a tutti, volevo chiedere se ci saranno corsi per principianti in zona Firenze o limitrofe, oppure se potete consigliarmi dei libri di testo diciamo “abbastanza abbordabili” per poter iniziare ad usare questo programma che mi incuriosisce moltissimo. Grazie a tutti!
Nella sezione del sito “Documentazione” è spiegato (quasi) tutto:
ci sono tre livelli di guide
1 le guide per iniziare
2 le guide robuste
3 le guide tematicheCiao.
R.
::
Ciao,
ho usato un po’ menukeys per una mia guida tematica (scaricabile dal sito del GuIT).
Per cambiare stile mi pare si debba usare \renewmenumacro.
Puoi anche definire un tuo comando di menù che adotta uno stile predefinito o costruito ex novo:
Leggi questo codice:
`\documentclass{report}\usepackage[os=win]{menukeys}
\begin{document}
\menu[,]{Tools,Commands,PFDLaTeX}\providemenumacro{\mymenu}{roundedmenus}
\mymenu{Tools,Commands,PFDLaTeX}
\end{document}`
Un saluto.
R.
::
Ciao,
direi che è un ottimo inizio.
Una classe è certamente un modo per rendere più efficiente il linguaggio e la produzione dei documenti, ma viene solo dopo aver svolto un po’ di prove ed accumulato esperienza.
A volte non conviene creare un comando di formattazione perché diviene semplicemente un alias di un comando LaTeX e quindi nasconde inutilmente il codice, altre volte è utile rendere coerente il complesso dei comandi.
Una questione di equilibrio quindi.
Quello che ti consiglio di fare è senz’altro di documentare i comandi, anche in maniera elementare. A che serve creare un comando che magari si usa poco se poi tutte le volte devo aprire il file di classe per ricordarmi della sintassi?Ti segnalo che con LaTeX esiste un punto di inizio ma non quello di fine. Capita spesso che improvvisamente si impari a fare qualcosa in un modo milgiore. Per esempio integrare in LaTeX un database DBMS. Immaginati di inserire i dati di un atto nel db e di usare LaTeX come motore di report. Io sto entrando in questa logica da poco e devo dire che è porta notevoli potenzialità.
Ciao e buon lavoro.
R.
27 Novembre 2012 alle 8:28 in risposta a: [L3] Chiave con valore di default di un’altra chiave #80972::
Speriamo di non avere problemi di espansione.
Credo di no perché l’uso previsto è quello mostrato e non dovrebbero esserci situazioni nidificate.Inoltre stavo ragionando su due punti:
1 – forse non vale la pena di usare le proprietà come array associativo (nel contesto di un post precedente).
2 – se si decidesse di cambiare il codice usando al posto di una variabile proprietà un meccanismo più semplice, come fatto in questo posto sfruttando i nomi delle variabili tl, l’utente non dovrebbe cambiare nulla, e questo è un bel vantaggio.Adesso sono impegnato nella scrittura del codice di un comando che mostrerò in un prossimo post.
Un saluto.
Ciao.
27 Novembre 2012 alle 7:39 in risposta a: [L3] Chiave con valore di default di un’altra chiave #80970::egreg9″ post=80203
Ciao,
nel seguente codice LaTeX3 definisco due chiavi, la prima chiamata ‘name’ e la seconda chiamata ‘secname’ (secondo nome).
L’effetto che vorrei ottenere è che se non specifico un valore per la chiave secname, questa assuma il valore della chiave ‘name’.
`
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}\usepackage{expl3}
\usepackage{xparse}\ExplSyntaxOn
\keys_define:nn { gdsfamily }
{
name .tl_set:N = \g_gds_name_tl,
name .default:n = Paperino,secname .tl_set:N = \g_gds_secname_tl,
secname .default:V = \g_gds_name_tl % non funziona con .default:n si
}\keys_set:nn { gdsfamily } { name }
\keys_set:nn { gdsfamily } { secname }\NewDocumentCommand { \name } { }
{
\tl_use:N \g_gds_name_tl
}\NewDocumentCommand { \secname } { }
{
\tl_use:N \g_gds_secname_tl
}
\ExplSyntaxOff\begin{document}
Il nome è il seguente: \name{} \secname.
\end{document}`
Il codice non funziona, ma se cambio la funzione da .default:V a .default:n funziona, come mai?
Grazie R.Con [tt].default:V= \g_gds_name_tl[/tt] imposti il valore di default al valore attuale della variabile che, naturalmente è vuoto perché [tt]name[/tt] non è ancora stata impostata, ma solo definita. Se usi [tt].default:n[/tt] come valore viene presa la variabile [tt]\g_gds_name_tl[/tt]. Se infatti provi senza impostare un valore per [tt]name[/tt] avrai un valore vuoto.
Devi definire la chiave in modo diverso:
`\keys_define:nn { gdsfamily }
{
secname .code:n =
\tl_if_empty:nTF { #1 }
{ \tl_gset:NV \g_gds_secname_tl \g_gds_name_tl }
{ \tl_gset:Nn \g_gds_secname_tl { #1 } }
}`
Tiratina d’orecchie quotidiana. 🙂 Le variabili globali vanno sempre usate globalmente. Quindi [tt]_gset[/tt], non [tt]_set[/tt].Ciao
EnricoQuesta volta la tiratina d’orecchie, una volta tanto, posso fartela io! 🙂
Infatti ho modificato la definizione delle chiavi con la tua proposta:
`\keys_define:nn { gdsfamily }
{
name .tl_gset:N = \g_gds_name_tl,
name .default:n = Paperino,secname .code:n =
\tl_if_empty:nTF { #1 }
{\tl_gset:NV \g_gds_secname_tl \g_gds_name_tl}
{\tl_gset:Nn \g_gds_secname_tl { #1 } },
}
\keys_set:nn { gdsfamily } { name }
\keys_set:nn { gdsfamily } { secname }`Tutto bene, un codice pulito e semplice: quando assegno la chiave ‘secname’ senza valore essa imposterà la sua corrispondente variabile a quello della variabile in cui è salvato il valore della chiave ‘name’, mentre se passo un valore questo diverrà quello salvato.
Se però chiamo assegno solamente la chiave ‘name’ la chiave ‘secname’ non prenderà il nuovo valore se non verrà espressa:
Con questi comandi infatti
`\NewDocumentCommand { \name } { m }
{
\keys_set:nn { gdsfamily } { name = #1 }
\tl_use:N \g_gds_name_tl
}\NewDocumentCommand { \secname } { }
{
\tl_use:N \g_gds_secname_tl
}`
e questo codice utente:
`Il nome è il seguente: \name{Pluto} \secname.`
Ottengo (ovviamente) non: “Il nome è il seguente: Pluto Pluto.” ma “Il nome è il seguente: Pluto Paperino.”L’importante è che LaTeX3 sia in grado di creare un ambiente di programmazione pulito.
Illustro adesso un codice che funziona (considera che ho le orecchie già abbastanza tirate…).
Assegno i valori di default con .default:n:
`\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}\usepackage{expl3}
\usepackage{xparse}\ExplSyntaxOn
\keys_define:nn { gdsfamily }
{
name .tl_gset:N = \g_gds_name_tl,
name .default:n = Paperino,secname .tl_gset:N = \g_gds_secname_tl,
secname .default:n = \g_gds_name_tl,
}\keys_set:nn { gdsfamily } { name , secname }
\NewDocumentCommand { \setnames } { m }
{
\keys_set:nn { gdsfamily } { #1 }
}\NewDocumentCommand { \getname } { m }
{
\tl_use:c { g_gds_#1_tl }
}
\ExplSyntaxOff\begin{document}
Se non si impostano le chiavi esse prendono il valore di default: Il nome è il seguente: \getname{name}, il secondo nome è \getname{secname}.\setnames{ name = Pluto }
Adesso, il nome è \getname{name}, e la chiave dovrebbe essere con lo stesso valore che è appunto: \getname{secname}.
\setnames{secname = Mitico Pippo}
Dopo aver assegnato anche la chiave del secondo nome lo stampiamo: \getname{secname} (il nome principale è rimasto a \getname{name}).\setnames{name = Topolino}
Se a questo punto modifichiamo anche il primo nome avremo: nome = \getname{name}, secondo nome = \getname{secname}.
\end{document}
`Alla prossima3.
Ciao e grazie.
R.
::claudio” post=80183Ottimo lavoro ! come ormai ci avete abituato
ma se mi permettete una critica
l’Arte ha un grosso difetto, è un libro!
Mi chiedo ha senso di questi tempi
per una pubblicazione elettronica mantenere il formato di un libro?
La mia è un opinione
mi piacerebbe sentire le vostre
ciao
claudioIntendi il formato e-book?
R.
::
A ecco.
Cercavo una funzione del genere nella documentazione interface3 e non ero accorto della funzione alternativa \clist_map_inline:nn.
Questa funzione accetta una lista esplicita come primo argomento ed applica a tutti gli elementi della lista la funzione esplicita del secondo argomento.
L’elemento della lista è rappresentato da ##1 poiché siamo all’interno di un’altra funzione.Grazie.
R.
::
Ciao,
io direi qualcosa del genere:”
La via più conveniente per installare TeX Live in Linux consiste semplicemente nello scaricare sul proprio sistema la versione \emph{completa} direttamente dai server CTAN con un doppio click sul file install-tl scaricabile all’indirizzo \url{http://www.tug.org/texlive/acquire-netinstall.html}.Le distribuzioni Linux offrono quasi sempre proprie infrastrutture per la gestione dei programmi progettate secondo regole che assicurano stabilità e sicurezza con accesso tramite permessi utente. Queste caratteristiche influenzano anche le procedure d’installazione di TeX Live a seconda degli obiettivi che si vogliono raggiungere. Gli utenti con un po’ di confidenza con il terminale — coerentemente con la natura altamente configurabile ed aperta di Linux — possono personalizzare l’installazione di TeX Live per esempio per farne coesistere versioni differenti, scegliere diverse modalità di download selezionando il mirror o scaricandone il file immagine, oppure ancora impostando il modo con cui il sistema riconosce gli eseguibili fino ad arrivare alla compilazione dei sorgenti.
Semmai la procedura automatica non dovesse soddisfare le necessità dell’utente, la documentazione disponibile anche in italiano guida l’utente nel configurare il sistema come si preferisce, a cominciare da quella ufficiiale di TeX Live accessibile con il comando da terminale \$ texdoc texlive-it, dalla guida di Enrico Gregorio, e dalla guida tematica alla riga di comando, scaricabile dalla sezione Documentazione del sito del GuIT ed utile per conoscere i concetti di base della shell.
”
Saluti
R.
::
Ecco un miglioramento per la funzione interna che salva in una variabile proprietà un valore in virgola mobile. Invece di chiamarla tante volte quante sono le variabili in virgola mobile, è possibile passare l’elenco delle variabili una sola volta come lista di valori.
La funzione diventerebbe quindi questa:
`\cs_new:Nn \gds_save_values:
{
\prop_gput:NnV \g_gds_salval_prop { numsal } \g_gds_numsal_tl
\gds_savein_fpval:n { impsal,
implav,
impsalnetto,
implavnetto,
impsic,
rib
}
}`
mentre la funzione di servizio verrebbe modificata molto poco in questa:
`\cs_new:Nn \gds_savein_fpval:n
{
\clist_set:Nn \l_tmpa_clist { #1 }
\clist_map_inline:Nn \l_tmpa_clist
{
\prop_gput:Nnx \g_gds_salval_prop { ##1 }
{
\fp_use:c { g_gds_##1_fp }
}
}
}`
Buona domenica!
R.
::
Eccomi.
Ho sistemato il prefisso. Grazie. Ed ecco il codice completo compilabile e funzionante.
Quando serve solo il numero uso \num{\getdata{}} come nella tabella, e quando serve anche l’unità di misura uso \SI, come nel testo:
`\documentclass{article}\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}\usepackage{siunitx}
\usepackage{eurosym}
\usepackage{booktabs}\sisetup{output-decimal-marker={,},
round-mode = places,
round-precision = 2,
round-integer-to-decimal}% prefix name
% gds := gestione dati sal\ExplSyntaxOn
\fp_new:N \g_gds_impsal_fp
\fp_new:N \g_gds_implavnetto_fp
\fp_new:N \g_gds_impsalnetto_fp\cs_new:Nn \gds_process_values:
{
\fp_set:Nn \g_gds_impsal_fp
{
\fp_use:N \g_gds_implav_fp + \fp_use:N \g_gds_impsic_fp
}
\fp_set:Nn \g_gds_implavnetto_fp
{
( 1 – \fp_use:N \g_gds_rib_fp/100 ) * \fp_use:N \g_gds_implav_fp
}
\fp_set:Nn \g_gds_impsalnetto_fp
{
\fp_use:N \g_gds_implavnetto_fp + \fp_use:N \g_gds_impsic_fp
}
}\prop_new:N \g_gds_salval_prop
\cs_new:Nn \gds_save_values:
{
\prop_gput:NnV \g_gds_salval_prop { numsal } \g_gds_numsal_tl
\prop_gput:Nnx \g_gds_salval_prop { impsal }
{
\fp_use:N \g_gds_impsal_fp
}
\prop_gput:Nnx \g_gds_salval_prop { implav }
{
\fp_use:N \g_gds_implav_fp
}
\prop_gput:Nnx \g_gds_salval_prop { impsalnetto }
{
\fp_use:N \g_gds_impsalnetto_fp
}
\prop_gput:Nnx \g_gds_salval_prop { implavnetto }
{
\fp_use:N \g_gds_implavnetto_fp
}
\prop_gput:Nnx \g_gds_salval_prop { impsic }
{
\fp_use:N \g_gds_impsic_fp
}
\prop_gput:Nnx \g_gds_salval_prop { rib }
{
\fp_use:N \g_gds_rib_fp
}
}\keys_define:nn { gdsfamily }
{
numsal .tl_set:N = \g_gds_numsal_tl,
numsal .default:n = x,implav .fp_set:N = \g_gds_implav_fp,
impsic .fp_set:N = \g_gds_impsic_fp,
rib .fp_set:N = \g_gds_rib_fp,
}\NewDocumentCommand { \setdata } { m }
{
\keys_set:nn { gdsfamily }
{ #1 }
\gds_process_values:
\gds_save_values:
}
\DeclareExpandableDocumentCommand { \getdata } { m }
{
\prop_get:Nn \g_gds_salval_prop { #1 }
}
\ExplSyntaxOff\setdata{
numsal = 3,
implav = 12819.01,
impsic = 1000,
rib = 25.151,
}\begin{document}
% ok
Il numero del sal è \getdata{numsal} per un valore di \SI{\getdata{impsal}}{\euro}, di cui \SI{\getdata{impsic}}{\euro} sono oneri di sicurezza. Il valore netto in euro dei lavori è \num{\getdata{implavnetto}}.% ok
\bigskip
\begin{tabular}{cccc}
\toprule
Lavori & Sicurezza & Totale SAL & Totale netto\\
\euro & \euro & \euro & \euro \\
\midrule
\num{\getdata{implav}} & \num{\getdata{impsic}} & \num{\getdata{impsal}} & \num{\getdata{impsalnetto}}\\
\bottomrule
\end{tabular}\end{document}`
Per aumentare la leggibilità del codice (cosa che con TeX penso sia molto più difficile), si può anche creare la seguente funzione di servizio:
`\cs_new:Nn \gds_savein_fpval:n
{
\prop_gput:Nnx \g_gds_salval_prop { #1 }
{
\fp_use:c { g_gds_#1_fp }
}
}`Da usare poi così:
`\cs_new:Nn \gds_save_values:
{
\prop_gput:NnV \g_gds_salval_prop { numsal } \g_gds_numsal_tl
\gds_savein_fpval:n { impsal }
\gds_savein_fpval:n { implav }
\gds_savein_fpval:n { impsalnetto }
\gds_savein_fpval:n { implavnetto }
\gds_savein_fpval:n { impsic }
\gds_savein_fpval:n { rib }
}`Probabilmente si può fare ancora meglio…
Un saluto e buon weekend3!
R.
::
L’idea è quella di inserire con la sintassi chiave valore una serie di dati, elaborarne numericamente alcuni e rendere disponibili i risultati con un altrettanto semplice comando \getdata{}. Per il primo passo ci pensa l3keys, per il secondo l3fp e per il terzo l3prop:
`\documentclass{article}\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}\usepackage{siunitx}
\usepackage{eurosym}
\usepackage{booktabs}\sisetup{output-decimal-marker={,}}
\ExplSyntaxOn
\fp_new:N \g_impsal_fp
\fp_new:N \g_implavnetto_fp
\fp_new:N \g_impsalnetto_fp\cs_new:Nn \my_process_values:
{
\fp_set:Nn \g_impsal_fp
{
\fp_use:N \g_implav_fp + \fp_use:N \g_impsic_fp
}
\fp_set:Nn \g_implavnetto_fp
{
( 1 – \fp_use:N \g_rib_fp/100 ) * \fp_use:N \g_implav_fp
}
\fp_set:Nn \g_impsalnetto_fp
{
\fp_use:N \g_implavnetto_fp + \fp_use:N \g_impsic_fp
}
}\prop_new:N \g_salval_prop
\cs_new:Nn \my_save_values:
{
\prop_put:NnV \g_salval_prop { numsal } \g_numsal_tl
\prop_put:Nnn \g_salval_prop { impsal }
{
\fp_use:N \g_impsal_fp
}
\prop_put:Nnn \g_salval_prop { implav }
{
\SI[ round-mode = places ,
round-precision = 2 ]
{ \fp_use:N \g_implav_fp }{ \euro }
}
\prop_put:Nnn \g_salval_prop { impsalnetto }
{
\SI[ round-mode = places ,
round-precision = 2 ]
{ \fp_use:N \g_impsalnetto_fp }{ \euro }
}
\prop_put:Nnn \g_salval_prop { implavnetto }
{
\SI[ round-mode = places ,
round-precision = 2 ]
{ \fp_use:N \g_implavnetto_fp }{ \euro }
}
\prop_put:Nnn \g_salval_prop { impsic }
{
\SI[ round-mode = places ,
round-precision = 2 ]
{ \fp_use:N \g_impsic_fp }{ \euro }
}
\prop_put:Nnn \g_salval_prop { rib }
{
\SI{ \fp_use:N \g_rib_fp }{ \percent }
}}
\keys_define:nn { salValues }
{
numsal .tl_set:N = \g_numsal_tl,
numsal .default:n = x,implav .fp_set:N = \g_implav_fp,
impsic .fp_set:N = \g_impsic_fp,
rib .fp_set:N = \g_rib_fp,
}\NewDocumentCommand { \setdata } { m }
{
\keys_set:nn { salValues }
{ #1 }
\my_process_values:
\my_save_values:
}
\NewDocumentCommand { \getdata } { m }
{
\prop_get:NnN \g_salval_prop { #1 } \l_tmpa_tl
\tl_use:N \l_tmpa_tl
}
\ExplSyntaxOff\setdata{
numsal = 3,
implav = 12819.01,
impsic = 1.00,
rib = 25.151,
}\begin{document}
% ok
Il numero del sal è \getdata{numsal}.% ok
Il valore netto dei lavori è \getdata{implavnetto}.% ok
L'importo del sal numero \getdata{numsal} è \getdata{impsal}~\euro.% error
%L'importo del sal numero \getdata{numsal} è \SI{\getdata{impsal}}{\euro}.\end{document}`
Come vedete dal codice che segue la strategia descritta e che funziona abbastanza bene, ci sono un po’ di guai.
Non riesco ad espandere correttamente il numero nel comando \SI (funziona solo se memorizzo nella proprietà l’intera formattazione con siunitx.
Se per caso digito una chiave dalla sintassi sbagliata la compilazione si blocca indefinitivamente (per esempio un \getdata{nonesisto}).
Ho un po’ troppa ridondanza nei nomi tra funzioni e variabili, come si può notare dal codice delle funzioni \my_process_values: e \my_save_values: (la leggibilità non è il massimo)Ho implementato il tutto anche in LuaTeX incontrando meno problemi. Non ho ancora risolto del tutto l’argomento con LuaTeX perciò non vi riporterò qui il codice.
Grazie per aver seguito fino a qui.
R.
-
AutoreRisposte