17

includegraphics コマンドを含むコマンドがあります。コマンドに画像を渡すことができ、実際に画像を含める前に標準的な書式設定を行います。このコマンドで含める画像の中には、\textwidth よりも小さいものもあれば、大きいものもあります。小さな画像を拡大せずに、大きな画像を \textwidth に縮小したいのですが、これは単にできないことを意味します

\includegraphics[width=\textwidth]{img}

maxwidth を指定する方法はありますか? または、どういうわけか画像の幅を取得して、次のようなことができますか

\ifthenelse{\imagewidth > \textwidth}{%
    \includegraphics[width=\textwidth]{img}}{%
    \includegraphics{img}}
4

5 に答える 5

22

画像の幅を取得するには、次のコードを使用できます。

\newlength{\imgwidth}
\settowidth{\imgwidth}{\includegraphics{img}}

ドキュメントのプリアンブルでこれを使用して、幅を自動的に設定する新しいコマンドを作成できます。

\usepackage{graphicx}
\usepackage{calc}

\newlength{\imgwidth}

\newcommand\scalegraphics[1]{%   
    \settowidth{\imgwidth}{\includegraphics{#1}}%
    \setlength{\imgwidth}{\minof{\imgwidth}{\textwidth}}%
    \includegraphics[width=\imgwidth]{#1}%
}

そして、あなたの文書で:

\scalegraphics{img}

これが役立つことを願っています!

于 2008-09-23T19:20:58.213 に答える
1

オプションで画像を少し縮小または拡大するための追加のパラメーターが好きなので、私のバージョンの \scalegraphics は次のようになります。

\newcommand\scalegraphics[2][]{%
    \settowidth{\imgwidth}{\includegraphics{#2}}%
    \setlength{\imgwidth}{\minof{#1\imgwidth}{\textwidth}}%
    \includegraphics[width=\imgwidth]{#2}%
}
于 2011-04-20T15:33:26.207 に答える
-4

CTAN のマニュアルと Google の検索結果を数分間検索した結果、あなたがやりたいことは不可能か非常に難しいと断言できると思います。唯一の推奨事項は、小さいイメージ用と大きいイメージ用の 2 つのコマンド、またはオプション付きの 1 つのコマンドを使用することです。

方法があるかもしれませんが、より良い答えを提供するために、他の SO LaTeX ウィザードに任せます。

編集:私は間違っています。上記を参照してください。

于 2008-09-23T18:02:21.677 に答える