Risposte nei forum create
-
AutoreRisposte
-
10 Aprile 2013 alle 14:02 in risposta a: Problema con un comando con numero variabile di argomenti #84641::
No, non è perfetto…
Questo è un codice un po’ più vicino a quello che immaginavi:Bravo Roberto, si tratta di senso pratico, anche perché lavorare con al ricorsione dentro una tabella è virtualmente impossibile; ogni cella costituisce ua specie di grupp a se stante; quindi qualunque ricorsione che tu faccia a tabella cominciata si esaurisce dentro al cella dentro al quale è fatta, quindi non c’è prricolo che si riesca a raggiungere la fine in modo corretto.
Tuttavia vorrei far notare che esiste un comando poco sfruttato che si chiama \arraystretch il cui valore serve per scalare lo \strutt che viene inserito nella prima cella di ogni riga di una tabella, quindi è in grado di spaziare la tabella di quel che si desidera in modo uniforme, senza bisogno i di ricorrere a una misura fissa, come \rule{0pt}{12pt} oppure a \newdimen\hr \hr=12pt; basta dare la ridefinizione, per esempio`\renewcommand\arraystretch{1.5}` e le varie righe risultano distanziate di quel che occorre (di più o di meno a seconda del fattore introdotto); tieni presente che lo \strut (pilastrino) predefinito, componendo a 10pt, è alto 8.4pt e profondo 3.6pt (circa) per u totale di 12pt; moltiplicare queste misure per 1.5 porta le due misure a circa 12.6pt e 5.4pt. Ovviamente si potrebbe scegliere un fattore di 1.4 per la definizione di \arraystretch, ma non è quello il vantaggio; il vantaggio è che si cambia anche la profondità, in modo che i filetti orizzontali non battano contro i discendenti dei caratteri contenuti nella cella; per fare le cose bene con le colonne di tipo p bisognerebbe mettere qualcosa anche alla fine del testo di ciascuna cella di tipo p, perché per impostazione predefinita lo il pilastrino che rende omogenee le altezze delle righe è pensato per tabelle le cui celle contengono una sola riga.
::
`\section{Codifica capace di correggere \texorpdfstring{$t$}{t}-errori}`Questa è la prima correzione; ridurre il tiolo all’essenziale; inoltre il carattere < valido nel file sorgente, non è valido nel file composto, visto che usi i font cmr; la codifica ASCII di < corrisponde nel file cmr a qualche virgoletta o a qualche altro segno che non corriponde al segno di "minore". In matematica andrebbe bene, ma non puoi usarlo nella parte corrispondente alla "pdfstring". Invece i Warning che ottieni sono dovuti al fatto che non segui i consigli che cerco di dare a tutti: 1) NON usare mai i font Compuer Modern con codifica OT1 (quelli che stai usando tu) 2) Usare sempre la codifica T1 (quella che non stai usando tu) 3) Fra i font con la codifica T!, preferire quelli che hanno i corpi ottici; gli unici che conosco sono i Latin Modern I font Latin Modern si possono caricare usando sia il pacchetto lmodern, sia il pacchetto cfr-lm; il secondo offre più funzionalità, ma è più difficile da usare del primo. I font usati sono gli stessi con i due pacchetti, ma il secondo pacchetto conesente di usare varianti che con il primo sono inaccessibili o difficilmente accessibili. La particolarita dei Latin Modern è che sono scalabili con continuità, pur mantenendo il pregio di corpi ottici; usando quei font il corpo di 12.5pt ti esce senza problemi. I due secondi due Warning riguardano il font cmm, il corsivo matematico, e il font cmsy, il font dei simboli matematici; su quelli non puoi farci niente, nemmeno usando i LaTin Modern; puoi però evitare di configurare i tuoi titoli con font di corpi non disponibili. Puoi aggirare il problema scegliendo i pacchetti che ti consentono di usare altri font vettoriali sia per il testo sia per la matematica; non sono datati di copri ottici, ma se non vai ai pedici dei pedici in una nota (che è in corpo più piccolo del testo normale) e se non ti formalizzi troppo per i caratteri dei titoli troppo neri, puoi usare pacchetti con fourier, oppure kpfonts, che usano per il testo i font Utopia oppure Palladio, e i rispettivi font matematici formano l'accoppiata giusta. Puoi rivolgerti al pacchetto mathdesign, di cui ti consiglio di leggere la documentazione prima di cimentarti; il pacchetto consente di usare i font Charter, oppure Garamond oppure Utopia, e i fot matematici sono sempre accoppiati bene con quelli del testo; puoi usare anche i nuovi Times eXtended, i TX fonts: leggi la documentazione con texdoc newtxfonts.
Credo di averti detto tutto quello che posso sui font; ma la raccomandazione importante è: non usare mai la codifica OT1 e possibilmente usa sempre font continuamente scalabili.
::
Infatti non avresti dovuto definire quel comando di cui hai parlato nell’altro filone.Senza definire o ridefinire niente, dovresti semplicemente citare le tue cose mettendo tu il nome generico dell’oggetto nel richiamo:
… come spiegato nel capitolo~\vref{cap:etichetta}, si vede che…
… (si veda l’appendice~\vref{app:etichetta}).
La figura~\vref{fig:etichetta} mostra …
Non ha nessuna importanza che citando un capitolo se ne citi anche il titolo, tanto più che se sai di disporre di \nameref, sai che stai usando hyperref e che quindi la citazione è ipercollegata; se il lettore vuol vedere di che capitolo si tratta, basta che clicchi il link, si spostata nel capitolo specifico, nel legge i titolo e magari anche le prime righe, poi clicca la freccina a sinistra che la barra degli strumenti del visualizzatore PDF contiene (oppure la freccina si trova in un menù a discesa), e la visualizzazione si sposta al punto di prima, dove c’era il richiamo.
Come ti ho suggerito di fare la lettura del documento risulta più scorrevole, e la navigazione interna del file PDF consente di avere anche le altre informazioni, ma solo a discrezione del lettore.
Naturalmente questo è quello che farei io, ma siccome è una questione di gusti, tu fai come meglio credi.
Se vuoi citare i titoli, allora esamina i pacchetti presenti nella tua distribuzione del sistema TeX; anni fa avevo visto un pacchetto che consentiva di fare quello che vorresti fare, ma non ricordo assolutamente come si chiamasse.
::
Mi stupirei se MiKTeX 2.9 non fosse tanto aggiornato da maneggiare “direttamente” le immagini in formato .eps. TeX Live le gestisce “direttamente” dalla versione 2012. Può darsi che il tuo MiKTeX 2.9 non sia aggiornatissimo; nel qual caso prova ad aggiornarlo.Ma leggi il file .log verso la fine dove si presenta il messaggio d’errore che dice che non trova il file foto.eps. toran indietro nel file .log fino a quando non trovi la riga che contiene tutte le estensioni grafiche che pdflatex può manipolare; se l’ultima è .eps, allora la tua versione di MiKTeX 2.9 è sufficientemente aggiornata, ma se non lo è il metodo che ti ha indicato Enrico funziona da alcuni anni.
Funziona da quando esiste la possibilità di attivare lo shell escape, la modalità con al quale i compilatori del sistema TeX, compreso pdflatex.exe, possono auto sospendersi, e richiedere al sistema operativo di eseguire un comando esterno al sistema TeX, dopo l’esecuzione del quale il controllo torna a programma di compilazione che prosegue da punto dal quale si era autosospeso; questa azione è pericolosa, specialmente sulle macchine Windows, perché apre al possibilità di lanciare programmi infetti. Può darsi che MiKTeX non attivi questa modalità per impostazione predefinita.
Comunuqe, forse MiKTeX lo esprime ancora con l’opzione –write18-enable (oppure –enable-write18 — verifica sul manuale MiKTeX Help che puoi aprire da Start -> Programmi -> MikTeX -> 2.9 -> MiKTeX Help). Ma per essere sicuro vai in testa al file .log e guarda se c’è scritto nelle prime righe
write18 enabled
oppure
protected write18 enabled
Se nessuna di queste due scritte appare, non funziona nemmeno il metodo di Enrico.
Allora questa sarebbe la soluzione del tuo problema: sempre dopo esserti documentato sul MiKTeX Help, vedi di configurare la tua distribuzione di MiKTeX in modo che sia attiva almeno la modalità protected del write18.
Se è così, allora sei a cavallo: la tua foto viene convertita in formato pdf, grazie al write18, e poi inglobata nel tuo file in formato pdf.
::
No, non esistono metodi alterativi, ma se non dici che errore ti da è difficile cercare di capire che cosa tu abbia sbagliato.Propendo per supporre che tu non abbai caricato il pacchetto color, oppure che tu non abbia definito il colore che vuoi usare.
La mia propensione però e del tutto sterile senza vedere il messaggio d’errore.
::
Quelle stringhe b/c0/c mi lasciano perplesso, molto perplesso; ma forse sono io che rendo fichi epr fiaschi.Il messaggio dice che a un certo punto del tuo scritto vuoi usare il font tondo, nero esteso, diritto con la codfica OT1 con un corpo di 12.5pt; quel corpo non esiste, quindi ti prende il corpo più vicino a quello che richiedi.
Ora se quello è un corpo matematico, si può chiudere un occhio; ma se si tratta di un font di testo, allora mi domando perché usi la codifica OT1, che raccomandiamo sempre di non usare. Oltre tutto hai scelto i font newtxtext e newtxmath, che sono font continuamente scalabili; il cmr appartiene alla famiglia dei Computer Modern, non a quella dei New TX; da dove salta fuori?
Cerca di isolare il punto dove viene usato quel font e cerca di evitare di usarlo.Alla seconda domanda capisco che non hai capito la differenza fra \mathbf e \bm.
\mathbof serve per mettere in nero le lettere che fanno parte della famiglia matematica operators; \bm serve per mettere in nero i simboli matematici e le lettere della famiglia letters. Generalmente il secondo serve per rendere nero un singolo simbolo, non un’intera espressione matematica; il primo serve per mettere in nero qualche simbolo in tondo, come quelli delle matrici (che per altro andrebbero in corsivo); per avere un’intera espressione nera bisogna dichiararlo prima di entrare in modo matematico, come, per esempio, una breve espressione matematic fa parte di un titolo di paragrafo (cosa sempre sconsigliabile). In questo caso si scriverà:`\section{Il triangolo rettangolo e la relazione \boldmath$a^2 +b^2 = c^2$\unboldmath}` ricordando di usare anche l’argomento facoltativo del comando \section, perché da \boldmath fino alla fine possono succedere cose inenarrabili prima che quella roba vada a finire nell’indice.
Concludendo i ocmandi \mathbf e \bm non sono intercambiabili ed entrambi non servono per mettere in nero una “formula”, ma caso mai segni isolati dentro una “formula”.
::
Da un lato potresti installare il dizionario per l’italiano, così potresti avere la verifica ortografica anche per l’italiano.Dall’altro uno dei menù a discesa contiene tutte le opzioni per gestire la correzione on line, e per gestire i dizionari. Inolte il menù a discesa Edit contiene l’impostazione per la correzione on line, quindi se vuoi disabilitare la verifica ortografica devi agire lì.
WinEdt ti consente anche di gestire i progetti; una delle caratteristiche è quella di associare un dato dizionario/lingua ad un dato progetto, quindi se imposti questa configurazione pper ogni file che “lavori” puoi avere sempre attivo il correttore ortografico relativo alla sua lingua. WinEdt ha molte funzionalità comode; queste sono alcune funzionalità che rimpiango un poco da quando non lavro più con Windows, e quindi da quando non posso più usare WinEdt.
::
Non hai bisogno di cercare in rete. I file .fd sono sparsi epr tutto il tuo disco; ci sono per i font CM, per i font EC, per i font Latin Modern, per i font greci, per i font cirillici, e via di questo passo.È tutto documentato nella guida fntguide.pdf da leggere con il solito texdoc. con pdflatex tu hai bisogno, sostanzialmente, di solo tre famiglie (con grazie, senza grazie, monospaziati) e quindi te file .fd; in ognuna specifichi per ogni shape e per ogni series da dove prendere i corpi dei font che vuoi usare; il modello che hai proposto scaricato dalla rete, non sfrutta bene le potenzialità dei font dotati di copri ottici; nella guida tematica Font e Tipografia si spiega anche perché l’approccio dei font LM, quello di serie, non quello che hai indicato tu scaricato dalla rete) sia, secondo me, l’aproccio migliore per usare i font dotati di corpi ottici; se usi quel modello di file .fd puoi usare i quattro corpi dei tuoi MinionPro senza problemi; mi stupisco che autoinst non abbia preparato quei file .fd secondo quelle linee.
Tra la’tro sia con in file .f, sia con i comandi per fontspec, non hai bisogno di aggiungere 0.0 ai corpi della definizione successiva : l’intervallo [tt]corpo1 — corpo2[/tt] è un intervallo aperto dal alto superiore quindi indica tutti i corpi maggiori o uguali a corpo1 e minori a corpo2; quindi non hai bisogno di separare gli intervalli con nessun. Tutto scritto nella guida fntguide.pdf. 😉
::
È difficile dire come migliorare un codice, se non quello di segnalare pacchetti obsoleti e posizioni sbagliate di altri pacchetti; per esempio il pacchetto hyperref deve essere caricato per ultimo (deve significa DEVE, non che è possibile caricarlo per ultimo);; enumerate è un pacchetto che sopravvive per compatibilità con il passato, e oggi bisognerebbe usare enumitem; luainputenc serve per comporre con lualatex vecchi documenti; oggi se si compila con lualatex o xelatex un documento nuovo basta salvare il file sorgente con la codifica utf8 e non c’è bisogno di chiamare nessuna pacchetto specifico per la codifica perché la codifica utf8 è quella di default. Se compili con lualatex dovresti usare \fontspec per specificare i font che vuoi usare o almeno invocare il pacchetto e lasciare al pacchetto di scegliersi i font di default. 15m di binding offset sono una enormità: prima di tutto non li specifichi prima di sapere di quante pagine sarà la tesi e che tipo di rilegatura avrà; dopo potrei specificare qualche millimetro se ssi tratta di una brossura incollata, 5mm sono già tanti; ricordati che se stampi fronte retro, il margine esterno dovrebbe essere maggiore del margine interno, binding offset o no. Se carichi asmsymb non hai bisogno di caricare amsfonts; ma se unsi la matematica composta con i font opentype 9sia pure quelli die default) NON devi chiamare né amssymb né amsfonts ma per la matematica estesa devi chiamare solo amsmath.Con la tabella girata con l’ambiente turn credo che si possa fare di meglio; in particolare non dovresti usare i filetti verticali e dovrsti usare quei pochi filetti orizzontali che ti produce il pacchetto booktabs, visto che lo carichi, ma non lo usi.
Ritengo che sia pericoloso usare l’argomento facoltativo dell’ambiente Tabular come l’hai definito tu; se tu volessi allargare le rige di una tabella con un fattore 1.2, quel comando ti definirebbe il coefficiente di allargamento del fattore 1.2.5 che evidentemente ti viene preso come errore grave e ti blocca la compilazione; invece di una valore di default “blank” metti 1.5, e lascia che l’utente (cioè tu) usi un fattore completo di virgola e di decimali se vuole un fattore diverso.Però come vedi, chiedere se si può migliorare vuol dire chiedere di essere criticato per le scelte che hai fatto. Qualcuno potrebbe, naturalmente, critiare le osservazioni che ho fatto io, perché alcune sono legate al gusto personale.
::
Samiel, come te lo devo dire: pdftex.map non ha nulla a che vedere con Xe(La)Tex.Pdftex.map serve solo per pdflatex (come suggerisce il nome); sul mio Mac ce ne è uno solol quello in /usr/local/texlive/2012/texmf-var/fonts/map/pdftex/updmap/pdftex.map. Comunque, se leggi la documentazione di TeXlive, vedi qual è la sequenza nella quale i vari alberi vengono esplorati; quando un compilatore del sistema TeX cerca qualcosa, prende la prima cosa che incontra. Questo è il motivo per il quale se hai due file con lo stesso nome nell’albero personale e in un albero di sistema, ti prende il file che si trova nell’albero personale, perché questo albero viene esaminato per primo.
::
Sembrerebbe proprio che pdflatex usi un solo corpo; ma oltre all’esperimento che hai fatto prova ad aprire il file pdftex.map e a cercare la stringa MinionPro e vedi se quanti record compaiono in quel file Se MinionProCaption non vi compare, allora hai la prova provata che usa un solo corpo.
Se invece MinionProCaption vi compare, allora vuol dire che sono i file ly1minion.fd (o come si chiamano) che sono messi male.
::
Non mi sono spiegato bene, evidentemente; XeLaTeX non ha nulla a che vedere con i file .map; questi sercovono solo per pdflatex.XeLaTeX accede direttamante i font .otf senza nessun intermediario di file map, font virtuali, font pfb creati smembrandoli un tante piccole parti gestibili da pdflatex che non può accedere direttamente ai font .otf.
XeLaTeX accede direttamente ai font .otf senza passare per autoinst e senza passare per i file di mappa.
Come potrebbe usare i file .otf del sistema operativo, di cui il sistema TeX non sa niente, se fossero necessari i file di mappa?
::
Preambolo e composizione sono, purtroppo, pieni di errori, che sarebbe molto lungo elencarti, specialmente visto che sono errori generici e non hanno nulla a che vedere con il tuo problema di affiancre un testo ad una tabella ruotata.Il concetto è questo; se tu usi l’ambiente sidewaystable, questo ti compone tabella e didascalia in una scatola, la ruota, e poi inserisce il tutto in una pagina a se stante. In quella pagina non puoi più mettere niente.
Quello che vuoi fare tu, perciò, non si può fare con sidewaystable: si può fare componendo tabella e didascalia dentro una scatola, ruotala come si desidera, mettere accanto alal tabella ruotata una minipage con il testo che vuoi, avendo avuto cura di fare tutte queste operazioni dentro l’ambiente table, non sidewaystable. Per farlo dovresti avere delle competenze che leggendo il tuo preambolo non mi sembra che tu abbia ancora acquisito; ovviamente posso sbagliarmi alla grade, ma è l’impressione che ho.
Se vuoi cimentarti con questa operazione non difficilissima, ma delicata, ti suggerisco di legger eil manuale di LaTeX tradotto in italiano e commentato, che trovi fra le guide tematiche nella sezione Documentazione di questo forum; lì sono descritti tutti gli strumenti che ti potrebbero servire, ma sta a te servirtene oculatamente. Se ci provi e non ci riesci, chiedi di nuovo sul forum.
E, mi raccomando, LEGGI LA DOCUMENTAZIONE! quello che ti ho detto a proposito di sidewaystable è detto chiaramente nella documentazione del pacchetto rotating.
-
AutoreRisposte