For at have følgende output, der involverer gradssymbolet

indtast billedebeskrivelse her

Jeg kan prøve

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

Dette er dog er en akavet måde at opnå gradssymbolet på – man vender tilbage til matematisk tilstand og kaster et eksisterende symbol i overskrift.

Er der en ligetil måde at opnå gradssymbolet på?

Kommentarer

  • Se på Sådan indsættes grad Celsius-symbol i nodetekst i pgfplots / tikz?
  • Der er ikke noget galt med The angle is $30^\circ$., og output er det samme som siunitx ‘ s.
  • Jeg forestillede mig noget som \degree.
  • @AboAmmar: Se mit svar, siunitx gør det af kompatibilitetsårsager. Så hvis man stræber efter et bedre udseende, er det bedst at omdefinere dem.

Svar

Jeg bruger siunitx og så en semantisk kommando:

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

indtast billedebeskrivelse her

Men du kan også indlæse textcomp

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

indtast billedebeskrivelse her

Kommentarer

  • Vil du stadig bruge \ang hvis teksten var ” Temperaturen er 30 grader C “?
  • @Viesturs: Nej. Betydningen af \ang er vinkel, så jeg ville ikke ‘ misbruge det til en temperatur. Jeg bruger \SI{30}{\celsius}.
  • Med dit første eksempel: Jeg husker, at siunitx bruger $^\circ$ krykke for dets gradssymboler (af kompatibilitetsårsager), som jeg ofte finder ‘ ikke ser meget passende ud til den anvendte skrifttype (for tynde linjer også stor cirkel). Så jeg har tendens til at omdefinere de relevante siunitx symbolkommandoer til mine behov, normalt det passende unicode-tegn.
  • @lblb kan du tilføje et eksempel med det som et andet svar , tak?
  • @ K.-Michael Aye: Udført.

Svar

Følgende eksempelkode tjener til at vise, at siunitx også bruger den grimme $^\circ$ -konstruktion (af kompatibilitetsårsager). De fleste skrifttyper har et gradssymbol for vinkler (U+00B0 DEGREE SIGN), og nogle har et grad Celsius-symbol for temperaturer (U+2103 DEGREE CELSIUS, output med \textcelsius i mit eksempel) og disse symboler passer normalt bedre til skrifttypens linjebredder.

Mit eksempel viser også, at enkeltgrads-symbolet og det, der er inkluderet i specialgrad Celsius-glyf behøver ikke at være den samme, så jeg personligt ville omdefinere det i overensstemmelse hermed, når jeg bruger begge dele i et stykke arbejde, se anden linje.

Kompilér 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ærmbillede

Kommentarer

  • Jeg ‘ jeg er ikke sikker på, hvordan du måler ‘ mest ‘ skrifttyper: klassiske TeX-skrifter har normalt ikke et gradssymbol. På grad Celsius er det eneste Unicode-kodepunkt et kompatibilitetstegn og dekomponeres es til ‘ grad ‘ + ‘ bogstav C ‘.
  • @Joseph Wright: Jeg skrev af erfaring med ikke-TeX-skrifttyper, at alle dem, jeg ‘ har stødt på, har ° (grad) symbol. Med graden Celsius sammenligner anden linje i mit eksempel ° + C med den enkelte glyf, og de ser anderledes ud (med CM font, haven ‘ t testede andre). Dette er bare mine konklusioner, jeg ‘ er ikke ekspert på dette.

Svar

Der findes også en gensymb pakke. Jeg foretrækker det, da det kun giver et symbol til begge tekst / matematiske tilstande, og du kan gøre alt hvad du vil med det.

Eksempel:

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

Kommentarer

  • Jeg elsker dette enkle og praktiske svar!

Svar

Symbolet er U + 00B0 i Unicode, og TS1-kodningen indeholder det, hvis du vil bruge ældre NFSS. Standardkommandoen for den er \textdegree og er defineret af enten textcomp eller fontspec.Du kan også indtaste den i din UTF-8-kildefil eller bruge inputenc til at erklære en anden indgangskodning. Næsten alle tekstskrifttyper understø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} 

Prøvebillede

Der er også \textcelsius til tegnet ℃ (U + 2103), men (fra sidste gang jeg tjekkede) for at få PDFLaTeX til at genkende UTF-8-tegnet ved input, skal du tilføje kommandoen \DeclareUnicodeCharacter{"2103}{\textcelsius}.

Svar

Du kan bruge ° direkte med

\usepackage{textcomp} 

Eksempel:

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

Kompileret

Kommentarer

  • Faktisk er textcomp nok . Siden 2018 er utf8 den foruddefinerede inputkodning, og du ‘ finder \DeclareUnicodeCharacter{00B0}{\textdegree} i utf8enc.dfu. AFAIK i dag er der stort set ingen brug for gensymb.
  • Ups, redigeret, godt
  • Sådan skriver du på ° symbol?
  • afhænger af tastaturets layout, du kan indsætte med Alt + 248, hvis du har USA International tastatur SHIFT + CTRL + ALT + ; | Bedst i Latam-tastatur SHIFT + `
  • På en Mac bruger du command + control + space og søg bare efter gradstegn.

Svar

Jeg vil foreslå en ret kort og enkel løsning uden at bruge yderligere og / eller specielle pakker til det formål. I indledningen defineres følgende: \renewcommand{\deg}{$^\circ$}

Da \deg er et reserveret ord, skal det omdefineres til dette formål. I min brug har jeg endnu ikke set nogen hindring for at gøre det.

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

Kommentarer

  • Nej, jeg tror ikke ‘ t tænker \deg (hvilket er et funktionssymbol) skal omdefineres til dette. Din kommando mislykkes også i matematisk tilstand … Den foretrukne måde i dag skal være siunitx. Udover alt er dit forslag allerede gjort af O.P. bortset fra at indpakke det i en makro.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *