
次のコードはメッセージが表示されてビルドに失敗します
! Argument of \language@active@arg" has an extra }.
\documentclass[dvipsnames,unknownkeysallowed,12pt]{beamer}
\usepackage[brazil]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}
\usepackage{tikz}
\usetikzlibrary{arrows,babel,calc,angles,quotes}
\usepackage{tikzsymbols}
\begin{document}
\section{Figura}
\begin{frame}
TiKz \pgfversion
\begin{tikzpicture}
\draw [thick]
(3,-1) coordinate (a) node[right] {a} -- (0,0) coordinate (b) node[left] {b}
-- (2,2) coordinate (c) node[above right] {c} pic["$\alpha$", thick,draw=orange, <->, angle eccentricity=1.2, angle radius=1cm] {angle=a--b--c};
\end{tikzpicture}
\end{frame}
\end{document}
ただし、brazil babel 行がコメント化されている場合、または tikzpicture がフレームから構築されている場合は機能します。3.0.0\pgfversion
が表示されます。
答え1
TikZ ライブラリによって提供されるメカニズムは、の開始時にbabel
のカテゴリ コードを変更することです。基本的には、の後にを追加することと同じです。"
tikzpicture
\shorthandoff{"}
\begin{tikzpicture}
残念ながら、これは Beamer では機能しませんframe
。フレームの内容は処理前に吸収されるため、文字トークンはカテゴリ コードを取得し、\shorthandoff{"}
コマンドではこれを変更できなくなります。
回避策 (少し見苦しいですが) : を使用します。\begin{frame}[fragile]
これにより、Beamer はフレームの内容を書き出して、後で再読み込みできるようにします。
\end{frame}
この場合、注意してください、しなければならない左端の列に先行スペースなしで開始します。