
preamble.tex
다른 문서에서 내 목적으로 사용하는 파일이 있습니다 .
%description: Basic Article in Cyrilics
% Based on a TeXnicCenter-Template by Gyorgy SZEIDL.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[12pt]{book}
\usepackage{textcase}
\usepackage{tikz}
\usetikzlibrary{positioning, shapes}
\usetikzlibrary{shapes,arrows,calc}
\usetikzlibrary{trees}
\usetikzlibrary{decorations.pathmorphing}
\usetikzlibrary{decorations.pathreplacing}
\usetikzlibrary{decorations.markings}
\usepackage{pgfplots}
%packages-------------------------------------------------------------------------------
\usepackage[cp1251]{inputenc}
\usepackage[T2A,T1]{fontenc}
\usepackage[ukrainian]{babel}
\pdfoutput=1 %For postig in ArXiv.org
\usepackage{literat}
\usepackage{indentfirst}
\usepackage{misccorr}
\usepackage{fancyhdr}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{subfigure}
\usepackage[colorlinks=true,
bookmarks,
bookmarksnumbered=true,
unicode,
pdfauthor={It's me}
]{hyperref}
\usepackage{color}
\usepackage{enumitem}
\usepackage[a4paper]{geometry}
\geometry{top=2cm, %поле сверху
bottom=2.5cm, %поле снизу
left=2.5cm, %поле справа
right=2cm} %поле слева
%\usepackage{background}
%---------------Headers and footers---------------
\usepackage{fancyhdr}
\fancypagestyle{myfancy}{%
\fancyhf{}%
\fancyfoot[ER]
{
\tikz[baseline={(0,0)},anchor=center]
\node [rectangle, text=white, fill = black!30, text width = 5cm]{\thepage\hfill};
}%
\fancyfoot[OL]
{
\tikz[baseline={(0,0)},anchor=center]
\node [rectangle, text=white, fill = black!30, text width = 5cm]{\hfill\thepage};
}%
\renewcommand{\headrulewidth}{0pt}%
\renewcommand{\footrulewidth}{0pt}%
}%
\fancyhfoffset[ER]{5cm}
\fancyhfoffset[OL]{5cm}
%---------------Sections---------------
\usepackage{titlesec,titletoc,chngcntr, microtype}
\let\cleardoublepage\clearpage
\renewcommand{\chaptertitlename}{Глава}
\titleformat{\chapter}[display]
{\vspace*{-10ex}\Large}
{\titleline[l]{\textls[200]{\MakeTextUppercase{\chaptertitlename}}\ \thechapter}\vspace{6pt}\titlerule[.8pt]}
{\dimexpr-\baselineskip+6pt\relax}
{\bfseries\MakeUppercase}
\titleformat{\section}[block]
{\bfseries}
{\S\ \thesection.}
{\fontdimen2\font}
{}
\titlecontents{chapter}[0pt]
{}
{\textls[200]{\chaptertitlename} \thecontentslabel\ \bfseries}
{}
{\titlerule*[6pt]{.}\contentspage}
%[\addvspace{3pt}]
\titlecontents{section}[1.5em]
{}
{\S\ \makebox[1.5em][l]{\thecontentslabel.}}
{}
{\titlerule*[6pt]{.}\contentspage}
\makeatletter
\renewcommand\frontmatter{\cleardoublepage\@mainmatterfalse}
\renewcommand\mainmatter{\cleardoublepage\@mainmattertrue}
\makeatother
\renewcommand{\thechapter}{\Roman{chapter}}
\counterwithout{section}{chapter}
%---------------TOC---------------
\let\origtableofcontents\tableofcontents
\renewcommand{\tableofcontents}{%
\begingroup
\titleformat{\chapter}[display]
{\Large}
{\titleline[l]{\textls[200]{\MakeTextUppercase{\chaptertitlename}}\ \thechapter}\vspace{6pt}\titlerule[.8pt]}
{\dimexpr-\baselineskip+6pt\relax}
{\bfseries\MakeUppercase}%
\origtableofcontents
\endgroup}
%------------------------------------
\usepackage{amsthm}
\usepackage[framemethod=tikz]{mdframed}
\usepackage[most, breakable, many]{tcolorbox}
%------------emphz----------------
\newlength{\torninnersep}
\setlength{\torninnersep}{1.5mm}
\newlength{\tornamplitude}
\setlength{\tornamplitude}{1pt}
\newlength{\tornshift}
\setlength{\tornshift}{1.5mm}
\newcommand\emphz[1]{%
\noindent
\begin{tikzpicture}[
pencildraw/.style={%
decorate,
decoration={
random steps,
segment length=2pt,
amplitude=\tornamplitude
}
}%
]
\node[
preaction={
fill=black!50,
opacity=0.5,
transform canvas={xshift=\tornshift,yshift=-\tornshift}
},
pencildraw,
draw,
fill=yellow!30,
opacity=1,
text width=\dimexpr
\linewidth
-2\torninnersep
-2\tornamplitude
-\pgflinewidth
\relax,
inner sep=\torninnersep,
] {#1};
\end{tikzpicture}%
}
%--------------------------------------------
% \tcbuselibrary{skins,xparse}
\NewTColorBox[auto counter,number within=section]{solution}{+O{}}{%
breakable, enhanced,colframe=gray,colback=white,coltitle=green!40!black,
fonttitle=\bfseries,
underlay={\begin{tcbclipinterior}
\draw[help lines,step=5mm,blue!20!white,shift={(interior.north west)}]
(interior.south west) grid (interior.north east);
\end{tcbclipinterior}},
title={Solution: },
label={},
attach title to upper=\quad,
after upper={\par\hfill\textcolor{green!40!black}%
{}},
lowerbox=ignored,
#1,
}
\newtcolorbox[blend into=figures]{myfigure}[2][]{
center title,
center upper,
colupper=red!50!black,collower=green!50!black,
float=!ht,
title={#2},every float=\centering}
\newtcolorbox{problema}[1][\unskip]
{
colframe=red!75!black,
breakable,
fonttitle=\bfseries,
title={#1}
}
\def\problem#1#2#3{%
\phantomsection\addcontentsline{toc}{section}{Задача: #1 № #2}
\begin{problema}[Problem: #1 № #2]
#3
\end{problema}
\setcounter{equation}{0}
}%
하지만 패키지로 만들려고 하면 다음과 같습니다.
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{MyBook}[2005/01/22]
%-----------------------
\RequirePackage{geometry}
%------------------Page geometry--------------------------------------------------
\DeclareOption{a4}{
\geometry{
top=2cm, %поле сверху
bottom=2.5cm, %поле снизу
left=2.5cm, %поле справа
right=2cm} %поле слева
}
\ExecuteOption{a4}
\ProcessOptions\relax
\RequirePackage{textcase}
\RequirePackage{tikz}
\usetikzlibrary{positioning, shapes, shapes,arrows,calc, trees, decorations.pathmorphing, decorations.pathmorphing, decorations.pathmorphing, decorations.pathreplacing, decorations.markings}
%packages---------------------
\RequirePackage[cp1251]{inputenc}
\RequirePackage[T2A,T1]{fontenc}
\RequirePackage[ukrainian, russian]{babel}
\RequirePackage{literat}
\RequirePackage{indentfirst}
\RequirePackage{misccorr}
\RequirePackage{fancyhdr}
\RequirePackage{amsmath}
\RequirePackage{graphicx}
\RequirePackage{xcolor}
\RequirePackage{subfigure}
\RequirePackage[colorlinks=true,
bookmarks,
bookmarksnumbered=true,
unicode,
pdfauthor={It's me}]{hyperref}
\RequirePackage{enumitem}
\fancypagestyle{myfancy}{%
\fancyhf{}%
\fancyfoot[ER]
{
\tikz[baseline={(0,0)},anchor=center]
\node [rectangle, text=white, fill = black!30, text width = 5cm]{\thepage\hfill};
}%
\fancyfoot[OL]
{
\tikz[baseline={(0,0)},anchor=center]
\node [rectangle, text=white, fill = black!30, text width = 5cm]{\hfill\thepage};
}%
\renewcommand{\headrulewidth}{0pt}%
\renewcommand{\footrulewidth}{0pt}%
}%
\fancyhfoffset[ER]{5cm}
\fancyhfoffset[OL]{5cm}
%--------------Sections---------------
\RequirePackage{titlesec,titletoc,chngcntr, microtype}
\let\cleardoublepage\clearpage
\renewcommand{\chaptertitlename}{Глава}
\titleformat{\chapter}[display]
{\vspace*{-10ex}\Large}
{\titleline[l]{\textls[200]{\MakeTextUppercase{\chaptertitlename}}\ \thechapter}\vspace{6pt}\titlerule[.8pt]}
{\dimexpr-\baselineskip+6pt\relax}
{\bfseries\MakeUppercase}
\titleformat{\section}[block]
{\bfseries}
{\S\ \thesection.}
{\fontdimen2\font}
{}
\titlecontents{chapter}[0pt]
{}
{\textls[200]{\chaptertitlename} \thecontentslabel\ \bfseries}
{}
{\titlerule*[6pt]{.}\contentspage}
%[\addvspace{3pt}]
\titlecontents{section}[1.5em]
{}
{\S\ \makebox[1.5em][l]{\thecontentslabel.}}
{}
{\titlerule*[6pt]{.}\contentspage}
\renewcommand\frontmatter{\cleardoublepage\@mainmatterfalse}
\renewcommand\mainmatter{\cleardoublepage\@mainmattertrue}
\renewcommand{\thechapter}{\Roman{chapter}}
\counterwithout{section}{chapter}
%---------------TOC---------------
\let\origtableofcontents\tableofcontents
\renewcommand{\tableofcontents}{%
\begingroup
\titleformat{\chapter}[display]
{\Large}
{\titleline[l]{\textls[200]{\MakeTextUppercase{\chaptertitlename}}\ \thechapter}\vspace{6pt}\titlerule[.8pt]}
{\dimexpr-\baselineskip+6pt\relax}
{\bfseries\MakeUppercase}%
\origtableofcontents
\endgroup}
%------------------------------------
\RequirePackage{amsthm}
\RequirePackage[framemethod=tikz]{mdframed}
\RequirePackage[most, breakable, many]{tcolorbox}
%------------emphz----------------
\newlength{\torninnersep}
\setlength{\torninnersep}{1.5mm}
\newlength{\tornamplitude}
\setlength{\tornamplitude}{1pt}
\newlength{\tornshift}
\setlength{\tornshift}{1.5mm}
\newcommand\emphz[1]{%
\noindent
\begin{tikzpicture}[
pencildraw/.style={%
decorate,
decoration={
random steps,
segment length=2pt,
amplitude=\tornamplitude
}
}%
]
\node[
preaction={
fill=black!50,
opacity=0.5,
transform canvas={xshift=\tornshift,yshift=-\tornshift}
},
pencildraw,
draw,
fill=yellow!30,
opacity=1,
text width=\dimexpr
\linewidth
-2\torninnersep
-2\tornamplitude
-\pgflinewidth
\relax,
inner sep=\torninnersep,
] {#1};
\end{tikzpicture}%
}
%--------------------------------------------
% \tcbuselibrary{skins,xparse}
\NewTColorBox[auto counter,number within=section]{solution}{+O{}}{%
breakable, enhanced,colframe=gray,colback=white,coltitle=green!40!black,
fonttitle=\bfseries,
underlay={\begin{tcbclipinterior}
\draw[help lines,step=5mm,blue!20!white,shift={(interior.north west)}]
(interior.south west) grid (interior.north east);
\end{tcbclipinterior}},
title={Розв'язок: },
label={},
attach title to upper=\quad,
after upper={\par\hfill\textcolor{green!40!black}%
{}},
lowerbox=ignored,
#1,
}
\newtcolorbox[blend into=figures]{myfigure}[2][]{
center title,
center upper,
colupper=red!50!black,collower=green!50!black,
float=!ht,
title={#2},every float=\centering}
\newtcolorbox{problema}[1][\unskip]
{
colframe=red!75!black,
breakable,
fonttitle=\bfseries,
title={#1}
}
\def\problem#1#2#3{%
\phantomsection\addcontentsline{toc}{section}{Задача: #1 № #2}
\begin{problema}[Задача: #1 № #2]
#3
\end{problema}
\setcounter{equation}{0}
}%
\endinput
그런 다음 사용합니다.file.tex
\documentclass[10pt]{book}
\usepackage{e:/projects/Latex/MyPackage/Mybook}
\begin{document}
some
\end{document}
그리고 얻다
Undefined control sequence. \ExecuteOptions{a4}
답변1
오류
\RequirePackage or \LoadClass in Options Section.
\DeclareOption
이는 \ProcessOptions
허용되지 않는 명령이 있음을 의미합니다 . 특히 이 경우에는 다음과 같이 선언합니다.
\DeclareOption{a4}{
\geometry{
top=2cm, %поле сверху
bottom=2.5cm, %поле снизу
left=2.5cm, %поле справа
right=2cm} %поле слева
}
textcase
하지만 사용하기 전에 더 많은 패키지( )를 로드합니다.\ProcessOptions
질문 편집 후 명령 이름에 오타가 있어서 \ExecuteOption-s-
그 뒤에 있어야 합니다.\ProcesssOptions
\ProcessOptions\relax
\ExecuteOptions{a4}
옵션 을 선언한 다음 무조건 실행하는 것이 이상해 보이지만 a4
전혀 선택 사항이 아닙니다. 모든 옵션 처리를 제거하고 \geometry
명령을 실행하는 것은 어떨까요?