For å få følgende utgang som involverer gradssymbolet

skriv inn bildebeskrivelse her

Jeg kan prøve

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

Dette er en vanskelig måte å få gradssymbolet på – man går tilbake til matematikkmodus og kaster et eksisterende symbol i overskrift.

Er det en grei måte å få gradssymbolet på?

Kommentarer

  • Ta en titt på Hvordan setter du inn grad Celsius-symbol i nodetekst i pgfplots / tikz?
  • Det er ikke noe galt med The angle is $30^\circ$., og utgangen er den samme som siunitx ‘ s.
  • Jeg forestilte meg noe sånt som \degree.
  • @AboAmmar: Se svaret mitt, siunitx gjør det av kompatibilitetsgrunner. Så hvis man strever for bedre utseende, er det best å omdefinere dem.

Svar

Jeg vil bruke siunitx og så en semantisk kommando:

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

skriv inn bildebeskrivelse her

Men du kan også laste textcomp

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

skriv inn bildebeskrivelse her

Kommentarer

  • Vil du fortsatt bruke \ang hvis teksten var » Temperaturen er 30 grader C «?
  • @Viesturs: Nei. Betydningen av \ang er vinkel, så jeg ville ikke ‘ ikke misbruke den til en temperatur. Jeg vil bruke \SI{30}{\celsius}.
  • Med ditt første eksempel: Jeg husker at siunitx bruker $^\circ$ krykke for sine gradssymboler (av kompatibilitetsårsaker), som jeg ofte synes ‘ ikke ser veldig passende ut til skriften som er i bruk (for tynne linjer også stor sirkel). Så jeg pleier å omdefinere passende siunitx symbolkommandoer for mine behov, vanligvis det riktige unicode-tegnet.
  • @lblb kan du legge til et eksempel med det som et annet svar , vær så snill?
  • @ K.-Michael Aye: Ferdig.

Svar

Følgende eksempelkode tjener til å vise at siunitx også bruker den stygge $^\circ$ -konstruksjonen (av kompatibilitetsårsaker). De fleste skriftene har et gradssymbol for vinkler (U+00B0 DEGREE SIGN), og noen har et grad Celsius-symbol for temperaturer (U+2103 DEGREE CELSIUS, utgitt av \textcelsius i mitt eksempel) og disse symbolene passer vanligvis bedre til linjebreddene til skriften.

Mitt eksempel viser også at enkeltgrads-symbolet og det som er inkludert i spesialgrad Celsius-glyf trenger ikke å være den samme, så jeg personlig vil omdefinere den tilsvarende når jeg bruker begge deler i et stykke arbeid, se andre linje.

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

skjermbilde

Kommentarer

  • Jeg ‘ jeg er ikke sikker på hvordan du måler ‘ de fleste ‘ skrifttyper: klassiske TeX-skrifter har normalt ikke et gradssymbol. På grad Celsius er det eneste Unicode-kodepunktet et kompatibilitetstegn og dekomponerer es til ‘ grad ‘ + ‘ bokstav C ‘.
  • @Joseph Wright: Jeg skrev fra erfaring fra ikke-TeX-skrifter at alle de jeg ‘ har kommet over har ° (grad) symbol. Med graden Celsius sammenligner den andre linjen i mitt eksempel ° + C med enkelttegnen, og de ser annerledes ut (med CM font, haven ‘ t testet andre). Dette er bare konklusjonene mine, jeg ‘ er ikke ekspert på dette.

Svar

Det er også en gensymb pakke. Jeg foretrekker det, siden det bare gir et symbol for begge tekst / matematiske moduser, og du kan gjøre alt du vil med det.

Eksempel:

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

Kommentarer

  • Jeg elsker dette enkle og praktiske svaret!

Svar

Symbolet er U + 00B0 i Unicode, og TS1-kodingen inneholder det hvis du vil bruke eldre NFSS. Standardkommandoen for den er \textdegree og er definert av enten textcomp eller fontspec.Du kan også angi den i UTF-8-kildefilen din, eller bruke inputenc for å erklære en annen inngangskoding. Nesten alle tekstskrifter støtter det.

Eksempel:

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

Eksempelbilde

Det er også \textcelsius for tegnet ℃ (U + 2103), men (sist jeg sjekket) for å få PDFLaTeX til å gjenkjenne UTF-8-tegnet ved inngang, må du legge til kommandoen \DeclareUnicodeCharacter{"2103}{\textcelsius}.

Svar

Du kan bruke ° direkte med

\usepackage{textcomp} 

Eksempel:

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

Kompilert

Kommentarer

  • Egentlig er textcomp . Siden 2018 er utf8 den forhåndsdefinerte inngangskodingen, og du ‘ finner \DeclareUnicodeCharacter{00B0}{\textdegree} i utf8enc.dfu. AFAIK nå til dags er det i utgangspunktet ikke bruk for gensymb.
  • Ups, redigert, bra
  • Slik skriver du ° symbol?
  • avhenger av tastaturoppsettet, du kan sette inn med Alt + 248, hvis du har USAs internasjonale tastatur SHIFT + CTRL + ALT + ; | Best in Latam Keyboard SHIFT + `
  • På en Mac bruker du command + control + space og bare søk etter gradstegn.

Svar

Jeg vil foreslå en ganske kort og enkel løsning uten å bruke tilleggs- og / eller spesielle pakker til det formålet. I innledningen definerer du følgende: \renewcommand{\deg}{$^\circ$}

Da \deg er et reservert ord, må det omdefineres for dette hensikt. I min bruk har jeg ennå ikke sett noen hindring for å gjøre det.

Senere, i teksten, kan du bare skrive The angle is 30\deg.

Kommentarer

  • Nei, jeg tror ikke ‘ t tror \deg (som er et funksjonsymbol) bør omdefineres for dette. Kommandoen din mislykkes også i matematikkmodus … Den foretrukne måten i dag bør være siunitx. I tillegg til at ditt forslag allerede er gjort av O.P., bortsett fra å pakke det inn i en makro.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *