Я установил полный пакет texlive:
Я использую TeXmaker, и это код, в котором я хочу нарисовать сетку, как в tikzpicture. Я хочу просто вызвать функцию, \gridkar
определенную ниже. Поэтому я определил ее в \newcommand
. К сожалению, он возвращает две ошибки:
Undefined Control Sequence \gridkar
и
Package PGF Math Error: Unknown Function 'x' (in 'x')
\documentclass[12 pt]{exam}
\usepackage[T1]{fontenc}
\usepackage{tgtermes}
\usepackage{amsmath,amssymb,color}
\usepackage{enumerate,graphicx}
\usepackage{tikz}
\usepackage{xargs}
\usepackage{latexsym}
\pagestyle{head}
\firstpageheader{Math110}{October 2}{Quiz 3}
\shadedsolutions
\definecolor{SolutionColor}{rgb}{.87,.87,.87}
\newcounter{x}
\newcounter{y}
\newcommand{\gridkar}[2]
{
\begin{tikzpicture}[scale=0.4]
\forLoop{-#1}{#1}{x}
{
\draw[-] (x,-#2) -- (x,#2);
}
\forLoop{-#2}{#2}{y}
{
\draw[-] (-#1,y) -- (#1,y);
}
\end{tikzpicture}
}
\begin{document}
\noindent Name:\hfill Section: 008
\noindent Directions: For each problem please show all your work in the space provided. Calculators are permitted; however, in order to receive partial or full credit on a problem you must show your work. You could use the blank side of this sheet too.\\
\textbf{Maximum Points: 6}\hspace*{\fill}\textbf{Time Limit: 10 minutes}
\begin{questions}
\question [2]\gridkar{7}{8}
\question [3]
\question [1]
\end{questions}
\end{document}
Как это исправить? Есть ли какие-то пакеты, которые я пропустил?
решение1
Вам не нужна операция цикла for, у TikZ есть своя. Я включил одну возможность, но вы также можете использовать grid
клавишу TikZ. Я также привел еще один пример.
\documentclass[12 pt]{exam}
\usepackage[T1]{fontenc}
\usepackage{tgtermes}
\usepackage{amsmath,amssymb} % No need and deprecated -> color
\usepackage{enumerate} % % No need -> graphicx
\usepackage{tikz} % Tikz loads graphicx and xcolor
\usepackage{xargs}
\usepackage{latexsym}
\pagestyle{head}
\firstpageheader{Math110}{October 2}{Quiz 3}
\shadedsolutions
\definecolor{SolutionColor}{rgb}{.87,.87,.87}
\newcommand{\gridkar}[2]
{
\begin{tikzpicture}[scale=0.4,baseline]
\foreach\x in {-#1,...,#1}
{
\draw[-] (\x,-#2) -- (\x,#2);
}
\foreach\y in {-#2,...,#2}
{
\draw[-] (-#1,\y) -- (#1,\y);
}
\end{tikzpicture}
}
\begin{document}
\noindent Name:\hfill Section: 008
\noindent Directions: For each problem please show all your work in the space provided.
Calculators are permitted; however, in order to receive partial or full credit on a problem
you must show your work. You could use the blank side of this sheet too.
\textbf{Maximum Points: 6}\hspace*{\fill}\textbf{Time Limit: 10 minutes}
\begin{questions}
\question [2]\gridkar{7}{8}
\question [3]\tikz[baseline,scale=0.4]\draw (-7,-8) grid[step=1] (7,8);
\question [1]
\end{questions}
\end{document}
решение2
Ваша проблема в том, что вы плохо читаете файл журнала. Терминал и файл журнала говорят:
! Undefined control sequence.
\gridkar ...gin {tikzpicture}[scale=0.4] \forLoop
{-#1}{#1}{x} { \draw [-] (...
l.40 \question [2]\gridkar{7}{8}
Первая строка говорит о том, что есть неопределенная последовательность управления. Это все. Последовательность здесь не упоминается. Вторая строка разорвана в месте проблемы. Она включает часть тела макроса. Какой макрос в данный момент обрабатывается, указано слева. Проблема в месте \forLoop
. Это означает, что это неопределенная последовательность управления.
Последняя строка (с префиксом l.40
) говорит о том, что проблема возникает при чтении входного файла на строке 40. Содержимое этой строки показано здесь.