2010-06-24 34 views
28

Tôi có một phương trình chỉ hơi nhỏ quá rộng cho một dòng. Tôi thực sự muốn tránh có số phương trình trên dòng tiếp theo. Làm thế nào để bạn đạt được điều này? Hiện tại tôi đang sử dụng \small, nhưng điều này là quá mức cần thiết.Chia tỷ lệ phương trình cho vừa với chiều rộng trang chính xác

Xin lưu ý. Tôi đã thử scaleboxfittowidth nhưng gặp lỗi về thiếu \endgroup. Tôi cũng đã sử dụng \! đến mức tối đa của nó. Tôi hy vọng cho một giải pháp mà sẽ cho phép tôi để quy mô các phương trình một dòng thích hợp với chiều rộng của trang.

Dưới đây là một ví dụ (không phương trình thực tế của tôi): Long equation

+0

Có bất kỳ ký tự không cần thiết trong phương trình bạn có thể xóa? Bất kỳ cách nào bạn có thể viết lại nó ngắn hơn một chút? (Chỉ trong trường hợp không ai đến cùng với một giải pháp thực tế) –

+0

Ngoài ra, tại sao không sử dụng 'chia tách' của amsmath cho phương trình hay một 'multiline'? Mọi thứ khác sẽ là một nỗi đau để đọc anyway. –

+0

Nếu bạn có thể, tôi nghĩ bạn nên xác định một số hàm và biến để rút ngắn biểu thức chính xuống. Nó có thể được khó khăn để đọc và hiểu một biểu hiện dài như vậy anyway. – Nubsis

Trả lời

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} 

hoặc

\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 Vì vậy, tôi đã thực sự gần gũi với 'scalebox'. Tại sao nó phải ở bên trong môi trường phương trình? Ngoài ra, tại sao tôi buộc phải sử dụng chế độ toán học trực tuyến thay vì kiểu hiển thị? Cảm ơn câu trả lời tốt này. – Geoff

+4

'Tại sao nó phải ở bên trong môi trường phương trình? 'Nó không cần thiết. Như bạn ước. Ví dụ. 'Ngoài ra, tại sao tôi sau đó buộc phải sử dụng chế độ toán học trực tuyến thay vì kiểu hiển thị? 'Bởi vì' \ resizebox' giao dịch với hộp và bạn phải tạo thành hộp như vậy. Bất kỳ toán học bên trong hộp ngang là toán học chế độ văn bản. –

+0

@AlexeyMalistov Bạn có thể sử dụng điều này cũng để giảm kích thước của chỉ một phần của một phương trình trung tâm? Giống như '$$ aaa = \ resizebox {...} {!} Bbb $$'. – Karlo

1

Các graphicx package cung cấp lệnh \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} 
Các vấn đề liên quan