度記号を含む次の出力を取得するため

ここに画像の説明を入力

試すことができます

\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は使用されません。

  • 上向き、編集済み、良い
  • キーボードで
  • 記号?

  • キーボードのレイアウトによって異なりますが、Alt + 、USAInternationalキーボードをお持ちの場合SHIFT + CTRL + ALT + ; |最高のラテンアメリカのキーボードSHIFT + `
  • Macではcommand + control + spaceそして度グリフを検索します。
  • 回答

    その目的のために追加のパッケージや特別なパッケージを使用せずに、かなり短くて単純な解決策を提案します。前文で次のように定義します。\renewcommand{\deg}{$^\circ$}

    \degは予約語であるため、このために再定義する必要があります目的。私の使用法では、それを行うための障害はまだ見ていません。

    後で、テキストで、単にThe angle is 30\deg.

    コメント
    • いいえ、'は\degとは思いません(これは関数シンボル)は、このために再定義する必要があります。コマンドは数学モードでも失敗します…最近の推奨される方法はsiunitxです。それに加えて、あなたの提案は、マクロにまとめることを除けば、すでにO.P.によって行われています。