度記号を含む次の出力を取得するため
試すことができます
\documentclass{report} \begin{document} The angle is 30$^\circ$. \end{document}
ただし、これ度記号を取得するのは厄介な方法です。数学モードに戻り、既存の記号を上付き文字にキャストします。
度記号を取得する簡単な方法はありますか?
コメント
回答
siunitxなどを使用しますセマンティックコマンド:
\documentclass{report} \usepackage{siunitx} \begin{document} The angle is \ang{30}. \end{document}
ただし、textcompをロードすることもできます
\documentclass{report} \usepackage{siunitx} \usepackage{textcomp} \begin{document} The angle is 30\textdegree. \end{document}
コメント
- 引き続き
\ang
テキストが"の場合温度は30℃です"? - @Viesturs:いいえ。
\ang
の意味は角度なので、'温度と誤用することはありません。\SI{30}{\celsius}
を使用します。 - 最初の例では、
siunitx
が度記号の松葉杖(互換性の理由から)、'使用中のフォントにあまり適合していないように見えることがよくあります(細い線もあります)。大きな円)。そのため、必要に応じて適切なsiunitx
シンボルコマンド(通常は適切なUnicode文字)を再定義する傾向があります。 - @lblb別の回答として例を追加できますか、お願いしますか?
- @ K.-Michael Aye:完了。
回答
次のサンプルコードは、siunitx
が醜い$^\circ$
構造も使用していることを示しています(互換性の理由から)。ほとんどのフォントには角度の度記号(U+00B0 DEGREE SIGN
)があり、一部のフォントには温度の摂氏記号(U+2103 DEGREE CELSIUS
があり、
私の例では)これらの記号は通常、フォントの線幅によりよく適合します。
私の例では、摂氏1度の記号と特別度の摂氏グリフは同じである必要はないので、作品で両方を使用する場合は、それに応じて個人的に再定義します。2行目を参照してください。
XeLaTeXまたはLuaLaTeXとコンパイルします。
\documentclass{article} \usepackage{fontspec} \usepackage{siunitx} \begin{document} ° % degree symbol \si{\celsius} % ${}^{\circ}$ \textcelsius\ % special glyph of the font \si{\degree} % angle unit \sisetup{ math-celsius = °\text{C}, % for temperatures text-celsius = °C, math-degree = °, % for angles text-degree = ° } ° \si{\celsius} % now with the glyph \textcelsius\ % special glyph of the font \si{\degree} % angle unit \end{document}
コメント
- I 'どのように測定するかわからない'ほとんどの'フォント:従来のTeXフォントには通常、度記号がありません。摂氏度では、単一のUnicodeコードポイントは互換性のある文字であり、分解されます。 es to '度' + '文字C '。
- @Joseph Wright:TeX以外のフォントの経験から、'に出くわしたすべてのフォントに'があると書きました。 div id = “0e042ca242″>
(度)記号。摂氏度の場合、私の例の2行目は、°
+ C
を単一のグリフと比較しており、(CMでは)異なって見えます。フォント、避難所'他のものをテストしていません)。これらは私の結論にすぎません。私は'これに関する専門家ではありません。
回答
gensymb
パッケージもあります。テキスト/数学モードの両方に記号を提供するだけで、好きなことをすべて実行できるので、私はそれを好みます。
例:
\usepackage{gensymb} % ... $20 \degree$
コメント
- このシンプルで実用的な回答が大好きです!
回答
シンボルはUnicodeのU + 00B0であり、レガシーNFSSを使用する場合は、TS1エンコーディングに含まれています。その標準コマンドは\textdegree
であり、textcomp
またはfontspec
のいずれかで定義されます。UTF-8ソースファイルに入力するか、inputenc
を使用して別の入力エンコーディングを宣言することもできます。事実上すべてのテキストフォントがこれをサポートしています。
例:
\documentclass[varwidth]{standalone} \usepackage{iftex} \ifPDFTeX \usepackage[T1]{fontenc} \usepackage{textcomp} % For TS1. \usepackage[utf8]{inputenc} % The default since 2018. \else \usepackage{fontspec} \fi \begin{document} 30\textdegree{} is hot. 20\textdegree{} is pleasing. 10\textdegree{} is not. 0\textdegree{} is freezing. \end{document}
文字℃には、\textcelsius
もあります。 div>(U + 2103)ですが、(前回チェックした時点で)PDFLaTeXに入力時にUTF-8文字を認識させるには、コマンド\DeclareUnicodeCharacter{"2103}{\textcelsius}
を追加する必要があります。
回答
°
は
例:
\documentclass{article} \usepackage{textcomp} \begin{document} I love 25 °C in my room \end{document}
コメント
- 実際には
textcomp
で十分です。 2018年以降、utf8
は事前定義された入力エンコーディングであり、'は\DeclareUnicodeCharacter{00B0}{\textdegree}
にあります。 div id = “29b90b190d”>
。最近のAFAIKでは、基本的にgensymb
は使用されません。
The angle is $30^\circ$.
に問題はなく、出力はsiunitx
' s。\degree
のようなものを想像しました。siunitx
は互換性の理由でそれを行います。したがって、見栄えを良くするために努力する場合は、それらを再定義するのが最善です。