2010-06-24 12 views
28

Ho un'equazione che è solo un po 'troppo larga per una linea. Mi piacerebbe davvero evitare di avere il numero dell'equazione sulla riga successiva. Come si ottiene questo? Attualmente sto usando \small, ma questo è eccessivo.Ridimensionare un'equazione per adattarla alla larghezza esatta della pagina

Nota. Ho provato scalebox e fittowidth ma ottengo errori sulla mancanza di \endgroup. Ho anche usato \! nella sua misura massima. Sto sperando in una soluzione che mi consenta di ridimensionare la corretta equazione di una riga alla larghezza della pagina.

Ecco un esempio (non il mio attuale equazione): Long equation

+0

vi sono caratteri non necessari nell'equazione potresti cancellare? In qualche modo potresti riscriverlo per essere un po 'più breve? (Nel caso in cui nessuno si presenti con una soluzione reale) –

+0

Inoltre, perché non usare 'split' di amsmath per equazioni o' multiline'? Tutto il resto sarà un dolore da leggere comunque. –

+0

Se puoi, penso che dovresti definire alcune funzioni e variabili per abbreviare l'espressione principale. Può essere difficile leggere e capire comunque un'espressione così lunga. – Nubsis

risposta

46
\begin{equation} 
\resizebox{.9\hsize}{!}{$A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z$} 
\end{equation} 

o

\begin{equation} 
\resizebox{.8\hsize}{!}{$A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z$} 
\end{equation} 
+1

+1 Quindi ero molto vicino a 'scalebox'. Perché deve essere all'interno dell'ambiente di equazione? Inoltre, perché sono quindi costretto a utilizzare la modalità matematica in linea anziché lo stile di visualizzazione? Grazie per questa buona risposta. – Geoff

+4

'Perché deve essere all'interno dell'ambiente di equazione?' Non è necessario. Come vuoi. Per esempio. 'Inoltre, perché sono quindi costretto a usare la modalità matematica in-line invece di visualizzare lo stile?' Perché '\ resizebox' si occupa di box e devi formare tale box. Qualsiasi matematica all'interno della casella orizzontale è matematica in modalità testo. –

+0

@AlexeyMalistov Puoi usare questo anche per ridurre le dimensioni di solo una parte di un'equazione centrata? Come '$$ aaa = \ resizebox {...} {!} Bbb $$'. – Karlo

1

Il graphicx package fornisce il comando \resizebox{width}{height}{object}:

\documentclass{article} 
\usepackage{graphicx} 
\begin{document} 
\hrule 
%%% 
\makeatletter% 
\setlength{\@tempdima}{\the\columnwidth}% the, well columnwidth 
\settowidth{\@tempdimb}{(\ref{Equ:TooLong})}% the width of the "(1)" 
\addtolength{\@tempdima}{-\the\@tempdimb}% which cannot be used for the math 
\addtolength{\@tempdima}{-1em}% 
% There is probably some variable giving the required minimal distance 
% between math and label, but because I do not know it I used 1em instead. 
\addtolength{\@tempdima}{-1pt}% distance must be greater than "1em" 
\xdef\[email protected]{\the\@tempdima}% space remaining for math 
\begin{equation}% 
\resizebox{\[email protected]}{!}{$\displaystyle{% to get everything inside "big" 
A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z}$}% 
\label{Equ:TooLong}% 
\end{equation}% 
\makeatother% 
%%% 
\hrule 
\end{document} 
Problemi correlati