
내 문서는 다음과 같습니다.
\documentclass{article}
\usepackage{amssymb}
\begin{document}
$ \square \Box $
\end{document}
둘 다 나와 똑같은 모양의 상자를 생산합니다. 명령 \square
과 사이에 차이점이 있습니까 \Box
? 그렇다면 차이점은 무엇입니까? 그렇지 않다면 왜 동일한 명령에 대해 두 개의 명령이 존재합니까?
답변1
의심이 든다면 TeX에게 명령이 무엇을 하는지 말해달라고 요청하여 의심을 지울 수 있습니다.
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\ttfamily
\meaning\square
\meaning\Box
\end{document}
당신은 얻을 것이다
\mathchar"403
\mathchar"403
따라서 글리프는 정확히 동일합니다. amsfonts.sty
(에 의해 로드된 ) 끝에서 amssymb
다음을 찾습니다.
\begingroup \catcode`\"=12
\DeclareMathSymbol{\square} {\mathord}{AMSa}{"03}
\DeclareMathSymbol{\lozenge} {\mathord}{AMSa}{"06}
\ams@DeclareMathSymbol{\vartriangleright} {\mathrel}{AMSa}{"42}
\ams@DeclareMathSymbol{\vartriangleleft} {\mathrel}{AMSa}{"43}
\ams@DeclareMathSymbol{\trianglerighteq} {\mathrel}{AMSa}{"44}
\ams@DeclareMathSymbol{\trianglelefteq} {\mathrel}{AMSa}{"45}
\ams@DeclareMathSymbol{\rightsquigarrow} {\mathrel}{AMSa}{"20}
\@ifpackageloaded{latexsym}{\@tempswafalse}{\@tempswatrue}
\if@tempswa
\global\let\Box\square
\global\let\Diamond\lozenge
\global\let\leadsto\rightsquigarrow
\global\let\lhd\@@undefined
\global\let\unlhd\@@undefined
\global\let\rhd\@@undefined
\global\let\unrhd\@@undefined
\DeclareMathSymbol{\lhd} {\mathbin}{AMSa}{"43}
\DeclareMathSymbol{\unlhd} {\mathbin}{AMSa}{"45}
\DeclareMathSymbol{\rhd} {\mathbin}{AMSa}{"42}
\DeclareMathSymbol{\unrhd} {\mathbin}{AMSa}{"44}
\xdef\Join{\mathrel{\mathchar"0\hexnumber@\symAMSb 6F\mkern-13.8mu%
\mathchar"0\hexnumber@\symAMSb 6E}}
\fi
\endgroup
정의된 기호 와 동등한 것을 제공하기 위해 latexsym
.
답변2
\Box
핵심 라텍스 글꼴( latexsym
기본 배포판의 패키지)을 사용하여 LaTeX에 의해 정의됩니다. AMS 글꼴의 문자를 사용 \square
하여 정의되지만 amssymb
기본적으로는
\global\let\Box\square
그래서 둘은 똑같아