다음 코드를 시도 중입니다.
\documentclass[pdftex,spanish]{article}
\usepackage{babel}
\usepackage{tikz}
\begin{document}
Simple arrow:
\begin{tikzpicture}
\draw[->] (-1.5,0) -- (1.5,0);
\end{tikzpicture}
\end{document}
하지만 작동하지 않습니다. 오류가 발생합니다.
! Argument of \language@active@arg> has an extra }.
! Paragraph ended before \language@active@arg> was complete.<to be read again>\par \draw[->]
babel 패키지 없이도 제대로 작동한다면 어떻게 해야 하나요?
답변1
문제는 스페인어 인용문의 특수 관리를 위해 해당 spanish
모듈이 활성 문자 를 babel
만든다는 것입니다.>
<
업데이트:
babel
PGF/TikZ 버전 3.0.0에는 일부 모듈에서 발생한 카테고리 코드 변경으로 인해 발생하는 문제를 해결하는 라이브러리가 있으므로 babel
라이브러리를 로드하는 것으로 충분합니다.
\documentclass[spanish]{article}
\usepackage{babel}
\usepackage{tikz}
\usetikzlibrary{babel}
\begin{document}
Simple arrows:
\begin{tikzpicture}
\draw[->] (-1.5,0) -- (1.5,0);
\end{tikzpicture}
\tikz\draw[->] (-1.5,0) -- (1.5,0);
\end{document}
(덕분에클라우디오 피안드리노이것을 지적해 주셔서그의 코멘트).
PGF/TikZ 버전 2.10
s 에 대한 원하지 않는 재정의를 비활성화 tikzpicture
하고 문서의 다른 부분에 대해서는 이를 유지하려면 다음을 사용할 수 있습니다.
execute at begin picture={\deactivatequoting},
execute at end picture={\activatequoting}
모든 tikzpicture
. 이 접근 방식에는 두 가지 장점이 있습니다.
추가 패키지가 필요하지 않습니다.
또한 명령 버전을 사용할 때 원하는 결과를 생성합니다
\tikz
(아래 예제 코드 참조).
코드:
\documentclass[spanish]{article}
\usepackage{babel}
\usepackage{tikz}
\tikzset{
every picture/.append style={
execute at begin picture={\deactivatequoting},
execute at end picture={\activatequoting}
}
}
\begin{document}
Simple arrows:
\begin{tikzpicture}
\draw[->] (-1.5,0) -- (1.5,0);
\end{tikzpicture}
\tikz\draw[->] (-1.5,0) -- (1.5,0);
\end{document}
참고로 pdftex
옵션을 사용하지 마세요. 최신 LaTeX 시스템은 드라이버를 자동으로 감지합니다.
답변2
Malipivo가 언급한 대로 spanish
make 옵션이 활성화 babel
됩니다 >
. 환경 내에서 로컬로 비활성화할 수 있습니다 tikzpicture
. 프리앰블에 다음을 추가하세요.
\usepackage{etoolbox}
\AtBeginEnvironment{tikzpicture}{\shorthandoff{>}\shorthandoff{<}}{}{}
전체 코드:
\documentclass{article}
\usepackage[spanish]{babel}
\usepackage{tikz}
\usepackage{etoolbox}
\AtBeginEnvironment{tikzpicture}{\shorthandoff{>}\shorthandoff{<}}{}{}
\begin{document}
Simple arrow:
\begin{tikzpicture}
\draw[->] (-1.5,0) -- (1.5,0);
\end{tikzpicture}
\end{document}
답변3
를 사용할 필요가 없다면 바벨 옵션 spanish quotes
만 추가하면 화살표가 다시 나타납니다.es-noquoting
TiKZ
\documentclass[pdftex,spanish]{article}
\usepackage[es-noquoting]{babel}
\usepackage{tikz}
\begin{document}
Simple arrow:
\begin{tikzpicture}
\draw[->] (-1.5,0) -- (1.5,0);
\end{tikzpicture}
\end{document}
spanish quotes
새로운 TiKZ 3.0 라이브러리를 사용해야 하는 경우 babel
(Claudio가 제안한 대로) 여기에 예가 있습니다.
\documentclass[pdftex,spanish]{article}
\usepackage{babel}
\usepackage{tikz}
\usetikzlibrary{babel}
\begin{document}
Simple arrow:
\begin{tikzpicture}
\draw[->] (-1.5,0) -- (1.5,0) node[right] {<<Hola>>};
\end{tikzpicture}
<<Hola>>
\end{document}
답변4
이유는 모르겠지만 이전 답변 중 어느 것도 나에게 도움이 되지 않았습니다. 하지만 그들은 나에게 올바른 길을 보여주었습니다. 그냥 추가
\deactivatequoting
프리앰블에서 문제가 해결되었습니다.
전화를 걸 babel
거나 english
트릭 spanish
을 사용하는 것도 중요합니다.
\usepackage[spanish,english]{babel}