Risposte nei forum create
-
AutoreRisposte
-
::
Bhè che dire…
i miei complimenti!
Sono rimasto molto colpito.
Ahimè però effettivamente è tutto molto oscuro…
Come funziona questo mkern2.3mu?
In ogni caso i due segni + non dovrebbereo essere allineati, benzi quello “verticale” dovrebbe corrispondere alla E.Comuque mi sarebbe molto comoda una spiegazione…
Un mago non dovrebbe mai rivelare i suoi trucchi. 😀 Farò un’eccezione. 😀
Per ottenere l’allineamento che vuoi (guardando meglio riesco a capire perché), cambia il preambolo in
`\begin{array}{@{}l@{}*{4}{c@{}}}`
La notazione *{numero}{specificatori di colonne} in un preambolo di tabella (array o tabular) serve per ripetere “numero” volte quelle specifiche. Il @{} serve per annullare lo spazio fra le colonne.La parte più complicata è nel comando \rotarrow. La parte principale è chiara:
`\rotatebox[origin=c]{$\ce{<=>}$}`
compone la doppia freccia e la ruota di 90 gradi in senso antiorario attorno al suo centro grafico. Una costruzione come
`\vcenter{\hbox{roba}}`
in modo matematico, compone la “roba” e la piazza centrandola rispetto all’asse delle formule, cioè all’altezza dove andrebbero le linee di frazione.Lo stesso fa
`\vcenter{\rlap{roba}}`
solo che la “roba” è composta in modo che non occupi spazio orizzontale e “sporga” sulla destra.Mettiamo tutto in un ambiente array. Et voilà.
Il comando \mkern
mu serve per inserire uno spazio, non preoccupartene troppo; avevo erroneamente inteso che i due segni più andassero allineati. Toglilo. Ultima annotazione. Si scrive be’, perché viene da “bene”, come po’ viene da “poco”. Qualcuno lo scrive “beh”, ma io lo trovo un po’ troppo da ovini. 🙂
Ciao
Enrico
::Grazie
così funziona… comunque la differenza stlistica con le altre reazioni è evidente… quindi mi impegnerò a cercare una soluzione diversa… se magari ci dovessi riuscire posterò la soluzione, nel frattempo sarò grato a chiunque voglia darmi una mano.
JacopoOccorre il pacchetto graphicx oltre a mhchem
`\newcommand{\rotarrow}[1]{%
\vcenter{\hbox{\rotatebox[origin=c]{90}{$\ce{<=>}$}}}%
\vcenter{\rlap{$\scriptstyle#1$}}%
}\begin{equation}
\begin{array}{@{}*{5}{c@{}}}
E+S\mkern2.3mu&\ce{<=>[K_S]}&ES&\ce{->[k_3]}&E+P\\
+ & & + \\
I & &I \\
\rotarrow{K_I}&&\rotarrow{K_I}\\
EI+S&\ce{<=>[K_S]}&ESI
\end{array}
\end{equation}`
Quel misterioso \mkern2.3mu l’ho aggiunto per allineare i due segni + nella prima colonna, facendo qualche prova a occhio. Non che il resto sia meno misterioso, che dici? 😀Ciao
Enrico
::Salve
sto screivendo la mia tesi di laurea in latex utilizzando winedt 5.4 e miktex 2.5
Ho bisogno di inserire una reazione chimica come questa e di numerarla come se fosse una equazione.
Ho letto la documentazione del pacchetto mhchem ma non vengono contemplate soluzione come queste…
Ho provato anche a trasformarla in un’immagine e inserirla in un ambiente equation ma niente…Un po’ troppo complicata per studiare una soluzione, quella con un’immagine sembra il modo più veloce. Per inserirla in un ambiente equation con la numerazione all’altezza giusta, puoi fare così, usando il pacchetto amsmath:
`\begin{equation}
\label{etichetta}
\begin{gathered}
\includegraphics[…]{immagine}
\end{gathered}
\end{equation}`
Ciao
Enrico
::Non ricordo se l’ho visto da qualche parte ma io vi chiedo se ci sono dei comandi che modificano lo spazio verticale prima e dopo una formula senza fare uso di vspace del tutto simili a \parskip, \topsep…. per le liste.
Ci sono quattro parametri, \abovedisplayskip, \abovedisplayshortskip, \belowdisplayskip e \belowdisplayshortskip, i nomi dovrebbero rendere l’idea. I due con “short” nel nome sono usati quando la formula centrata è “corta” rispetto alla riga precedente, secondo una precisa regola spiegata nel TeXbook.
Nella classe article a corpo 10, i parametri valgono
`\abovedisplayskip=10.0pt plus 2.0pt minus 5.0pt
\abovedisplayshortskip=0.0pt plus 3.0pt
\belowdisplayskip=10.0pt plus 2.0pt minus 5.0pt
\belowdisplayshortskip=6.0pt plus 3.0pt minus 3.0pt`
Come vedi sono “lunghezze elastiche”. Si possono modificare con \setlength.Per informazione, in Plain TeX la scelta è
`\abovedisplayskip=12.0pt plus 3.0pt minus 9.0pt
\abovedisplayshortskip=0.0pt plus 3.0pt
\belowdisplayskip=12.0pt plus 3.0pt minus 9.0pt
\belowdisplayshortskip=7.0pt plus 3.0pt minus 4.0pt`
Ciao
Enrico
::eh no…
continua sempre a mettermi l immagine nella prima pagina con niente sotto e il titolo nellaseconda pagina.
l immagine l ho ritagliata con gimp e ne ho fatto un png delle dimensioni giuste,ma nn sembra essere quello il problema
Non puoi usare titlepage in quel modo. Se usi \maketitle lasci alla classe il completo controllo della pagina del titolo, con il suo modo di default di comporla. Non ci puoi mettere nient’altro. Se vuoi inserire la tua immagine, devi fare “a mano” la titlepage:
`\begin{titlepage}
\centering
\vspace*{\stretch{1}}
\includegraphics{immagine}
\vspace*{\stretch{1}}
{\Large Nome Cognome\par}
\vspace{1cm}
{\LARGE Il titolo bellissimo\par}
\vspace*{\stretch{2}}
\end{titlepage}`
Naturalmente questo è solo un esempio.Ciao
Enrico
::Cari tutti,
sto cercando di utilizzare il pacchetto pstricks (leggendo il manuale http://www.batmath.it/latex/pdfs/guida_pstricks.pdf) ma quando cerco di compilare un semplicissimo file Latex seguendo lo schema di pag.4, per ottenere il file dvi, ottengo l’errrore “host not found”. Il pacchetto pstricks è caricato (lo vedo su MPM): che significa tutto ciò.Quando ottieni l’errore? Compilando con LaTeX? Non mi risulta che faccia parte dei messaggi di errore mai visti. Credo piuttosto che sia un problema di MiKTeX che non trova dove prendere un pacchetto dalla rete. Fa’ un “refresh del database”.
Ciao
Enrico
1 Dicembre 2006 alle 12:01 in risposta a: Scrivere modelli di programmazione lineare con Align. #11515::Di default non dovrebbe spezzarti gli ambienti display. Sei sicuro di non aver dichiarato globalmente \allowdisplaybreaks?
Il problema è la presenza di \intertext, che fa il suo mestiere con un \noalign nel quale introduce un paio di \penalty, che sono punti legali dove eseguire un cambio pagina. Infatti noterai che ho scritto \\* nell’ultima riga prima di \intertext e \noalign{\nobreak} che dovrebbero impedire il cambio pagina sia prima che dopo \intertext.
Per olotiv: hai ragione, si usa \min e non \text{min}; nel copia-incolla non ci avevo fatto caso.
Ciao
Enrico
::allora, arrivo a chiedere una cosa in prossimità della consegna della tesi della morosa (domani mattina alle 9 si va in stampa). se qualcuno ha la soluzione a portata di mano, bene, altrimenti non ci sono problemi.
la sto curando sotto l’aspetto grafico, uso macosx, texshop e XeLaTeX, ma è un problema comune. per i titoli ho usato il pacchetto fncychap con l’opzione Bjarne e sono molto contento del risultato ottenuto. tuttavia mi sono accordo di una incongruenza non da poco.
il pacchetto si prende cura dei capitoli ma ignora le sezioni. così, in questo caso specifico mi trovo con i titoli allineati a destra e le sezioni allineate a sinistra. così non va.come posso risolvere? è una tesina triennale, sono ci sono solo 3 sezioni e 5 capitoli.
sto provando con un esempio minimale
\documentclass{book}
\usepackage [italian] {babel}%per la sillabazione in italiano
\usepackage[latin1]{inputenc}
\usepackage[Bjarne]{fncychap}
\begin{document}
\include{excursusstorico} % è un capitolo
\include{multiculturalismosoft} % è una sezione
\end {document}e ho provato ad impostare sia un renewcommand che un
\newcommand{\mysection}{\raggedright\section}ma non ne vengo a capo. qualche idea?
intanto scrivo un altro post per un altro problema, grazieDirei che a questo punto non c’è molto da fare. Il pacchetto titlesec è molto più flessibile rispetto a fncychap.
Se poi vuoi la mia opinione, lo stile Bjarne è orribile, come del resto gli altri.
La soluzione che hai trovato è la peggiore in assoluto. Avresti dovuto togliere l’uso di fncychap.
Mi domando: come fanno a esserci tre sezioni e cinque capitoli? Di solito sono i capitoli a essere divisi in sezioni. E usare \include per inserire una sezione è un grave errore, visto che \include produce un cambio pagina.
La prossima volta che produci un documento, usa \input. Non fidarti di chi ti dice che \include è meglio. È falso.
Ciao
Enrico
30 Novembre 2006 alle 13:59 in risposta a: eliminazione grassetto da titoli e tableofcontents #11526::Ti ringrazio Enrico. Purtroppo, però, non ho le conoscenze sufficienti per capire il codice che mi hai dato. Per questo mi devo limitare a dire, “brutalmente”, che funziona.
Mi scuso per la mia ignoranza. Devo dire tuttavia che di guide a Latex ne ho recuperate molte, ma ho difficoltà a passare oltre al livello di “Una (mica tanto) breve introduzione a Latex” o di altre guide simili. Spesso non riesco a capire la documentazione di alcuni pacchetti e devo accontentarmi di fare funzionare le cose per tentativi ed errori, cosa oltremodo deprimente…
qualsiasi consiglio sarà cosa gradita.Non c’è niente da “capire”. È un modo sintetico di ottenere l’eliminazione del nero dal tuo documento. Se però ne stai scrivendo uno, puoi prima di tutto non usare \textbf e \bfseries e modificare il formato dei titoli di sezione con il pacchetto titlesec
Ciao
Enrico
::premetto che sono abbastanza scarso nell’uso di Latex (perdonatemi).
Avrei un quesito/necessità.In breve: dovrei creare delle macro per poter creare una tabella in modo iterativo ed in punti diversi del documento.
Mi spiego meglio. Vorrei creare una macro (od insieme di macro) che mi permetta di aggiungere delle righe alla tabella (che contiene informazioni tipo: data, versione, commento, …) in modo disgiunto dall’implementazione “tipografica”. Il codice di utilizzo dovrebbe essere:
`\addlogentry{30/06/2006}{1.0}{Prima releas ufficiale}
\addlogentry{1/07/2006}{1.1}{Correzione baco di sicurezza}
\addlogentry{2/08/2006}{1.0}{Aggiornamento libreria pincopallo}
…`
Poi, da qualche parte nel documento:
`\makelogtable`
che genera la tabella con i datti caricati.
[…]Direi che qui ci vuole una “token list”, ma si va su cose non documentate in LaTeX e che trovi sul TeXbook.
`\makeatletter
\newtoks\logentrytoks
\newcommand{\addlogentry}[5]{%
\logentrytoks=\expandafter{\the\logentrytoks
\rt@entry
\rt@date{#1}\rt@ver{#2}\rt@status{#3}\rt@comment{#4}\rt@author{#5}%
\rt@endentry}
}\def\makelogtable{%
\begingroup
\let\rt@entry\relax
\def\rt@date##1{##1&}%
\let\rt@ver\@gobble
\let\rt@status\@gobble
\let\rt@comment\@gobble
\def\rt@author##1{##1}%
\def\rt@endentry{\\}
\begin{tabular}{rl}
Data & autore\\
\hline
\the\logentrytoks
\hline
\end{tabular}%
\endgroup}
\makeatother`
A ogni chiamata di \addlogentry, alla token list viene aggiunta una nuova lista di token, ben strutturata in modo che poi si possano usare i dati come ci pare. Definisco allora \makelogtable dicendo che il comando \rt@entry non fa niente, i comandi \rt@ver, \rt@status e \rt@comment si mangiano il loro argomento, mentre usiamo solo i campi \rt@date e \rt@author.Puoi ottenere tabelle che usano i dati come preferisci. Così solo nell’ordine in cui compaiono, ma si può ridefinire \rt@entry in modo che si possa anche modificare l’ordine. O anche che numeri automaticamente i vari elementi, eccetera.
Ciao
EnricoPS: Ho spostato il topic nel forum più appropriato.
28 Novembre 2006 alle 15:22 in risposta a: eliminazione grassetto da titoli e tableofcontents #11523::
robdex\nLa cosa più brutale che mi viene in mente è
`\let\grassetto\bfseries%
\renewcommand{\bfseries}{}`Un po’ troppo brutale, direi, potrebbe anche avere conseguenze inaspettate. Meglio
`\makeatletter
\let\mybf\bfseries
\DeclareTextFontCommand{\textmybf}{\mybf}
\renewcommand{\bfseries}{%
\not@math@alphabet\bfseries\mathbf\fontseries\mddefault\selectfont}
\makeatother`
In questo modo hai il fallback da usare sia come {\mybf pippo} che come \textmybf{pippo}.Ciao
Enrico
::Ciao con la classe book, esiste un modo per aggiungere un sottotitolo al titolo di un capitolo?
tipo:Capitolo 1
Questo è il titolo
e questo è il sottotitolo`\chapter[Questo è il titolo]
{Questo è il titolo\\[.5ex]
\normalsize\textit{Con un sottotitolo}}`
Puoi ovviamente cambiare .5ex, \normalsize e \textit Meglio definire un comando più comodo,
`\newcommand{\mychapter}[2]{\chapter[#1]{#1\\[.5ex]\normalsize\textit{#2}}}`
che userai come
`\mychapter{Questo è il titolo}{Con un sottotitolo}`
Lo scopo dell’argomento opzionale a \chapter è di dare ciò che andrebbe nell’indice e nele testatine, cioè il titolo “ufficiale”.Ciao
Enrico
28 Novembre 2006 alle 13:57 in risposta a: Scrivere modelli di programmazione lineare con Align. #11512::Ciao ragazzi. Sto usando LaTex da un mese (o poco più) per scrivere la tesi. Ogni tanto un’occhiata al forum mi risolve dei problemi…ma non sono riuscito a trovare una soluzione per la seguente questione.
Il codice sottostante rappresenta il modello di un problema di programmazione lineare:
`\begin{align}
&\text{min}\sum_{e_{ij}\in E}(c_{ij}x_{ij}+c_{ji}x_{ji}) &&\textrm{(WPP)}\\
\intertext{soggetto a}
&x_{ij}+x_{ji}\geq 1 &&\forall e_{ij}\in E,\\
&\sum_{e_{ij}\in\delta(i)}(x_{ij}-x_{ji})=0 &&\forall i\in V,\\
&x_{ij},x_{ji}\geq 0 &&\forall e_{ij}\in E,\\
&x_{ij},x_{ji}\text{ interi} &&\forall e_{ij}\in E.
\end{align}`
..abbiamo una funzione obiettivo (la prima riga), e i vincoli da rispettare (dopo l’intertext).
Capita spesso che il layout in pdf della compilazione si trovi diviso su due pagine…con la funzione obiettivo al termine di una pagina e le altre equazioni/disequazioni all’inizio della pagina successiva…mentre vorrei ottenere un risulato simile all’ ambiente table. Avere tutto il modello scritto sulla stessa pagina sarebbe certamente più elegante e di più facile lettura.Ti prego, scrivi le parole intere. 😕 PDF va bene, qlcs no.
Premesso che questi problemi di impaginazione vanno risolti alla fine, quando il testo è definitivo, obietterei sull’uso di \intertext, perché la locuzione “soggetto a” fa parte di tutto l’insieme. Ma sono opinioni.
Ti suggerirei di usare il pacchetto mathtools che mette a disposizione \shortintertext che diminuisce gli spazi verticali rispetto a \intertext. Userei anche l’ambiente alignat
`\begin{alignat}{2}
&\text{min}\sum_{e_{ij}\in E}(c_{ij}x_{ij}+c_{ji}x_{ji})\qquad &&\textrm{(WPP)}\\*
\shortintertext{soggetto a}\noalign{\nobreak}
&x_{ij}+x_{ji}\geq 1 &&\forall e_{ij}\in E,\\
&\sum_{e_{ij}\in\delta(i)}(x_{ij}-x_{ji})=0 &&\forall i\in V,\\
&x_{ij},x_{ji}\geq 0 &&\forall e_{ij}\in E,\\
&x_{ij},x_{ji}\text{ interi} &&\forall e_{ij}\in E.
\end{alignat}`
L’aggiunta di \noalign{\nobreak} e dell’asterisco dovrebbero curare il problema. Puoi naturalmente usare anche align (togli quel \qquad, in tal caso).Ciao
Enrico
28 Novembre 2006 alle 13:56 in risposta a: eliminazione grassetto da titoli e tableofcontents #11521::Ciao a tutti,
dopo qualche mese di utilizzo silenzioso delle vostre preziose informazioni, sono costretto a chiedere aiuto. Vorrei eliminare la formattazione in grassetto nei titoli di capitoli e sezioni (compresi i numeri), e in particolare nella tableofcontents (compreso il numero di pagina); …in definitiva da tutto il documento. Tutto il resto è ok. Qualcuno mi può aiutare?Pacchetto tocloft per l’indice, pacchetto titlesec per i titoli delle sezioni.
Ciao
Enrico
-
AutoreRisposte