För att ha följande utdata med gradsymbolen

ange bildbeskrivning här

Jag kan försöka

\documentclass{report} \begin{document} The angle is 30$^\circ$. \end{document} 

Detta är dock är ett besvärligt sätt att få examenssymbolen – man återgår till matematikläge och kastar en befintlig symbol i superscript.

Finns det ett enkelt sätt att få examenssymbolen?

Kommentarer

  • Ta en titt på Hur infogar jag Celsius-symbolen i nodtexten i pgfplots / tikz?
  • Det är inget fel med The angle is $30^\circ$., och utdata är densamma som siunitx ’ s.
  • Jag föreställde mig något som \degree.
  • @AboAmmar: Se mitt svar, siunitx gör det av kompatibilitetsskäl. Så om man strävar efter bättre utseende är det bäst att omdefiniera dem.

Svar

Jag skulle använda siunitx och så ett semantiskt kommando:

\documentclass{report} \usepackage{siunitx} \begin{document} The angle is \ang{30}. \end{document} 

ange bildbeskrivning här

Men du kan också ladda textcomp

\documentclass{report} \usepackage{siunitx} \usepackage{textcomp} \begin{document} The angle is 30\textdegree. \end{document} 

ange bildbeskrivning här

Kommentarer

  • Skulle du fortfarande använda \ang om texten var ” Temperaturen är 30 grader C ”?
  • @Viesturs: Nej. Betydelsen av \ang är vinkel, så jag skulle inte ’ inte missbruka den för en temperatur. Jag skulle använda \SI{30}{\celsius}.
  • Med ditt första exempel: Jag kommer ihåg att siunitx använder $^\circ$ krycka för sina gradssymboler (av kompatibilitetsskäl), vilket jag tycker ofta inte ser ’ inte mycket passande för teckensnittet som används (för tunna rader också stor cirkel). Så jag tenderar att omdefiniera lämpliga siunitx symbolkommandon för mina behov, vanligtvis lämpligt unicode-tecken.
  • @lblb kan du lägga till ett exempel med det som ett annat svar , snälla?
  • @ K.-Michael Aye: Klar.

Svar

Följande exempelkod tjänar till att visa att siunitx också använder den fula $^\circ$ -konstruktionen (av kompatibilitetsskäl). De flesta teckensnitt har en gradssymbol för vinklar (U+00B0 DEGREE SIGN) och vissa har en grad Celsius-symbol för temperaturer (U+2103 DEGREE CELSIUS, utmatad med \textcelsius i mitt exempel) och dessa symboler skulle vanligtvis passa bättre till teckensnittets linjebredder.

Mitt exempel visar också att singelgradssymbolen och den som ingår i specialgrad Celsius-glyf behöver inte vara densamma, så jag personligen skulle omdefiniera det därefter när jag använder båda i ett arbete, se andra raden.

Kompilera med XeLaTeX eller 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} 

skärmdump

Kommentarer

  • Jag ’ jag är inte säker på hur du mäter ’ de flesta ’ teckensnitt: klassiska TeX-sådana har normalt inte en gradssymbol. På grad Celsius är den enda Unicode-kodpunkten ett kompatibilitetstecken och sönderdelas es till ’ grad ’ + ’ bokstav C ’.
  • @Joseph Wright: Jag skrev av erfarenhet av icke-TeX-teckensnitt att alla de jag ’ har stött på har ° (grad) symbol. Med graden Celsius jämför den andra raden i mitt exempel ° + C med enstaka glyph, och de ser annorlunda ut (med CM font, haven ’ t testade andra). Det här är bara mina slutsatser, jag ’ är inte expert på detta.

Svar

Det finns också ett gensymb paket. Jag föredrar det, eftersom det bara ger en symbol för båda text- / matematiklägena och du kan göra allt vad du vill med det.

Exempel:

\usepackage{gensymb} % ... $20 \degree$ 

Kommentarer

  • Jag älskar det här enkla och praktiska svaret!

Svar

Symbolen är U + 00B0 i Unicode, och TS1-kodningen innehåller den om du vill använda äldre NFSS. Standardkommandot för det är \textdegree och definieras av antingen textcomp eller fontspec.Du kan också ange den i din UTF-8-källfil eller använda inputenc för att deklarera en annan ingångskodning. Praktiskt taget alla teckensnitt stöder det.

Exempel:

\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} 

Exempelbild

Det finns också \textcelsius för tecknet ℃ (U + 2103), men (senast när jag kollade) för att få PDFLaTeX att känna igen UTF-8-tecknet vid inmatning måste du lägga till kommandot \DeclareUnicodeCharacter{"2103}{\textcelsius}.

Svar

Du kan använda ° direkt med

\usepackage{textcomp} 

Exempel:

\documentclass{article} \usepackage{textcomp} \begin{document} I love 25 °C in my room \end{document} 

Kompilerade

Kommentarer

  • Egentligen textcomp räcker . Sedan 2018 är utf8 den fördefinierade ingångskodningen och du ’ hittar \DeclareUnicodeCharacter{00B0}{\textdegree} i utf8enc.dfu. AFAIK nuförtiden finns det i princip ingen användning för gensymb.
  • Ups, redigerade, bra
  • Hur man skriver på ° symbol?
  • beror på tangentbordets layout, du kan infoga med Alt + 248, om du har USA International-tangentbord SHIFT + CTRL + ALT + ; | Bäst i Latam-tangentbord SHIFT + `
  • På en Mac använder du command + control + space och bara söka efter gradsteg.

Svar

Jag föreslår en ganska kort och enkel lösning utan att använda ytterligare och / eller speciella paket för detta ändamål. Definiera följande i ingressen: \renewcommand{\deg}{$^\circ$}

Eftersom \deg är ett reserverat ord måste det omdefinieras för detta ändamål. I min användning har jag ännu inte sett något hinder för att göra det.

Senare, i texten, kan du helt enkelt skriva The angle is 30\deg.

Kommentarer

  • Nej, jag tror inte ’ tänker \deg (vilket är en funktionssymbol) bör omdefinieras för detta. Ditt kommando misslyckas också i matematikläget … Det föredragna sättet för närvarande bör vara siunitx. Förutom allt har ditt förslag redan gjorts av O.P., bortsett från att lägga in det i ett makro.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *