Risposte nei forum create
-
AutoreRisposte
-
::
L’opzione che passi al pacchetto [tt]inputenc[/tt] serve per “avvertire” LaTeX su quale codifica tu stai impiegando, ma cambiarla non influisce sulla codifica reale del file interessato (per questo il file ti dà problemi). Affinché tutto funzioni correttamente devono coincidere la codifica che passi a [tt]inputenc[/tt] e la codifica dei file che compili (principale e tutti quelli inclusi). Ora non so quale sia il tuo editor, ma negli editor LaTeX-friendly di solito la codifica del file viene riportata. Per farti un esempio con TeXStudio, che io impiego, viene riportata in basso a destra. Apri il tuo file quindi e guarda qual’è la codifica riportata e imposta la stessa che passo a [tt]inputenc[/tt] per tutti i file.Ancora meglio, cambia la codifica di tutti i file che compili in [tt]utf8[/tt] (passando lo stesso a [tt]inputenc[/tt])
::
Premesso che io la tesi la devo ancora scrivere 😀 (se tutto va bene tra un po’ di mesi), quindi le mie sono considerazioni piuttosto pratiche, da lettore.Detto questo, io le porrei il più vicino possibile a dove ti riferisci a loro: posizionarle in fondo alla tesi renderebbe scomodo consultare il tuo testo. Prendi per esempio una frase dove dici «come si può osservare in figura x.xx». Se la figura è posizionata in fondo alla tesi il lettore è costretto ad andare in fondo a cercare la figura ed è facile perdere il filo del discorso.
4 Marzo 2015 alle 17:15 in risposta a: Come allineare il testo di diverse scatole sulla stessa riga #100584::
Prova a vedere se così va bene:
`
\documentclass{article}
\usepackage{fancybox}
\begin{document}
\begin{center}
\shadowbox{\large An open search server based on Apache Lucene}\\
\medskip
{\Large$\Downarrow$} \\
\medskip
\textbf{Word tokenizer}\\
\medskip
{\Large$\Downarrow$} \\
\medskip
\shadowbox{\strut\large An} \shadowbox{\strut\large open} \shadowbox{\strut\large search} \shadowbox{\strut\large server} \shadowbox{\strut\large based} \shadowbox{\strut\large on} \shadowbox{\strut\large Apache} \shadowbox{\strut\large Lucene}\\
\end{center}
\end{document}
`
Il comando [tt]\strut[/tt] è un puntello, ossia un elemento di altezza e profondità, ma senza spessore, per cui non lo vedi stampato ma influisce sulla dimensione della scatola. Ti consiglio però, per il futuro, di fornire un esempio minimo compilabile, ossia del codice che comprende la classe che utilizzi, i minimi pacchetti necessari a far funzionare il tuo esempio e il codice che ti dà dei problemi. In questo modo ci semplifichi il lavoro per aiutarti.
3 Marzo 2015 alle 21:44 in risposta a: sistema di equazioni lunghe con ambiente longequation #100549::
L’ambiente [tt]longequation[/tt] non può funzionare nel tuo caso, perché [tt]aligned[/tt] è una tabella (nelle retrovie), quindi viene considerata come un blocco unico, senza risentire minimamente dell’ambiente che lo contiene. Non saprei sinceramente cosa consigliarti per spezzare nel modo opportuno il tuo sistema. Prova a consultare la guida che ti consiglia @OldClaudio
::
Scusa @Aimè devo correggerti un piccolo refuso che mi è sfuggito. 😳 Nel pacchetto cambia la riga di codice
`
\ProvidesPackage{sk-chem}[2015/03/02 Draw ECG]
`
con
`
\ProvidesPackage{ECG}[2015/03/02 Draw ECG]
`
È una svista, ho copia-incollato la riga da un altro file e mi è sfuggito il nome. Se compili il pacchetto dovrebbe comparirti un warning. In questo modo lo rimuovi. Ho già corretto il codice precedente.Se vuoi scrivere un articolo sulla questione sarei anche disponibile a darti una mano. 😀 Contattami alla mail [tt]scavino dot marco93 at gmail dot com[/tt]
::
Se poi ha i tempo, ti consiglio di leggerti la guida “Introtex”, che spiega come funzionano LaTeX (e sotto di lui TeX). Nel caso di questo codice, in cui ho impiegato LaTeX3, puoi provare a leggerne la documentazione con
`
texdoc interface3.
`
È un progetto che stanno ancora ampliando, ma come hai potuto osservare ha grandi potenzialità.
::
Se ho capito bene, le opzioni che vuoi le ho già definite, presupponendo proprio questo 😀 Se vuoi modificare la dimensione della carta millimetrata dietro usa le opzioni [tt]grid height[/tt] , [tt]grid width[/tt] e [tt]grid depth[/tt] da dare nell’argomento opzionale dell’ambiente [tt]ecg[/tt]. Di seguito un esempio.
`
\begin{ecg}[grid width=3cm,grid height=1cm]
\ECG{p1,r1,t1,prg}
\end{ecg}
`
::
Dipende da com’è scritto il tuo database. Dovresti scrivere tutte le varie forme con il comando [tt]\nuovoECG[/tt] con annessa sigla di riconoscimento e poi porli in un file con un nome che preferisci (tipo picchi_ECG.tex) e richiamarlo nel preambolo con [tt]\input{picchi_ECG}[/tt] dopo aver caricato il pacchetto [tt]ECG[/tt].Fatto questo, ogni volta che usi l’ambiente potrai disegnare i tuoi ECG semplicemente inserendo la sequenza che ti interessa delle varie sigle di picchi.
::
Basta che lo spezzi in tre diversi elementi:
`
\documentclass{article}
\usepackage{ECG}
\nuovoECG{p1}{(0,0)–(0.2,0)–(0.3,0.1)–(0.4,0)–(1,0)}
\nuovoECG{r1}{(0,0)–(.05,0.5)–(.15,-1.6)–(.2,0)–(.6,0)}
\nuovoECG{t1}{(0,0) — (.3,0.25)–(.6,0)–(1,0)}
\begin{document}
\begin{ecg}
\ECG{p1,r1,t1}
\end{ecg}
\end{document}
`
Nota che ogni volta devi ricominciare da zero perché il picco viene poi spostato nella posizione opportuna.
::
Dovresti creare un nuovo file di nome [tt]ECG.sty[/tt] e incollarci il codice del pacchetto che ho riportato sopra. Poi salvi il file nella stessa cartella che contiene anche l’esempio minimo compilabile e compili per vedere il risultato.Purtroppo non riesco ad allegarti il file [tt].sty[/tt] con il codice.
::
Ho provato a buttare giù due linee di codice con [tt]LaTeX3[/tt]. In sostanza il pacchetto che ho creato ti permette di creare un ECG con l’ambiente [tt]ecg[/tt]. Questo accetta un comando opzionale, che viene passato a tikzpicture. Ho definito per comodità tre nuove key: [tt]grid width[/tt], [tt]grid height[/tt] e [tt]grid depth[/tt], che ti permettono di passare a [tt]tikz[/tt] la larghezza, l’altezza e la profondità della griglia alle spalle del ECG.Per disegnare l’ECG puoi usare il comando [tt]\ECG[1]{2}[/tt] che accetta un comando opzionale [tt]1[/tt], passato al comando [tt]\draw[/tt] di [tt]tikz[/tt], e uno obbligatorio [tt]2[/tt], dove poni una lista separata da virgole con tutte le sigle dei vari picchi. Il comando è in grado di collocare automaticamente i vari picchi uno di seguito all’altro. In più se devi evidenziare un picco ti basta passare a [tt\]draw[/tt] le opportune chiavi.
Per definire i vari picchi usi [tt]\nuovoECG[/tt] che ti permette di “associare” a una sigla un codice di [tt]tikz[/tt]. La sintassi è [tt]\nuovoECG{1}{2}[/tt], dove [tt]1[/tt] è la sigla del picco, mentre in due poni il codice [tt]tikz[/tt], senza però il comando [tt]\draw[/tt] e il punto virgola finale.
Per completezza ti lascio anche un minimo esempio compilabile che mostra il risultato.
`
\documentclass{article}
\usepackage{ECG}\nuovoECG{prg}{(0,0)–(0.2,0)–(0.3,0.1)–(0.4,0)–(1,0)–(1.05,0.5)–(1.15,-1.6)–(1.2,0)–(1.6,0)–(1.9,0.25)–(2.2,0)–(2.6,0)}
\begin{document}
\begin{ecg}
\ECG{prg,prg,prg}
\end{ecg}
\end{document}
`Poni questo codice nel file [tt]ECG.sty[/tt]
`
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{ECG}[2015/03/02 Draw ECG]\RequirePackage{tikz}
\RequirePackage{xparse}\ExplSyntaxOn
\tikzset { grid ~ depth / .store ~ in = \sk_ECG_griddp_tl, grid ~ height / .store ~ in = \sk_ECG_gridht_tl, grid ~ width / .store ~ in = \sk_ECG_gridwd_tl , grid ~ depth = 2cm, grid ~ height = 2cm, grid ~ width = 11cm }
\DeclareDocumentEnvironment { ecg } { O{} }
{ \DeclareDocumentCommand \ECG { O{} m } { \sk_ECG:nn { ##2 } { ##1 } }
\begin{center}\begin{tikzpicture}[#1]
\draw(-0.5cm,-\sk_ECG_griddp_tl)grid(\sk_ECG_gridwd_tl,\sk_ECG_gridht_tl);
\draw(-0.5cm,-\sk_ECG_griddp_tl)grid(\sk_ECG_gridwd_tl,\sk_ECG_gridht_tl);
\coordinate(sk_end) at (0,0); }
{ \end{tikzpicture}\end{center} }\clist_new:N \sk_ECG_clist
\cs_set_nopar:Npn \sk_ECG:nn #1 #2
{
\clist_set:Nn \sk_ECG_clist { #1 }
\clist_map_inline:Nn \sk_ECG_clist { \use:c { sk_ECG_ ##1 } { #2 } }
}\cs_set_nopar:Npn \sk_ECG_new:nn #1 #2 #3
{
\cs_if_exist:cF { sk_ECG_ #1 } { \cs_set_nopar:cpn { sk_ECG_ #1 } ##1 {\draw[thick,rounded ~ corners=2pt,shift=(sk_end),##1] #3 coordinate(sk_end);} }
}
\DeclareDocumentCommand \nuovoECG { m O{} m }
{
\sk_ECG_new:nn { #1 } { #2 } { #3 }
}
\ExplSyntaxOff
\endinput
`
-
AutoreRisposte