usando \reflectbox para un símbolo tikz en addtocontents

usando \reflectbox para un símbolo tikz en addtocontents

He creado un libro usando la última versión de MacTex y componiéndolo con Lualatex. ( \documentclass[a4paper,11pt,twoside]{book}) Lo he probado \reflectboxen todo el documento y siempre funciona bien; sin embargo, cuando quiero usar el comando para voltear un símbolo, lo incluyo en el ToC a través de

\addtocontents{toc}{~\noindent\hfil\reflectbox{\fontsize{20pt}{20pt}{\fryingpan}} \hspace{2pt} {\textbf{\large{Recipes}}} \hspace{2pt} {\fontsize{20pt}{20pt}{\fryingpan}}\hfil\par}

Obtengo Tex:661:Secuencia de control indefinida.

También intenté incluir más corchetes, por ejemplo

\addtocontents{toc}{~\noindent\hfil{\reflectbox{\fontsize{20pt}{20pt}{\fryingpan}}} \hspace{2pt} {\textbf{\large{Recipes}}} \hspace{2pt} {\fontsize{20pt}{20pt}{\fryingpan}}\hfil\par}

pero termina con el mismo error.

Sin el \reflectbox, el código funciona bien:

\addtocontents{toc}{~\noindent\hfil{\fontsize{20pt}{20pt}{\fryingpan}} \hspace{2pt} {\textbf{\large{Recipes}}} \hspace{2pt} {\fontsize{20pt}{20pt}{\fryingpan}}\hfil\par}

¿Algunas ideas? Jaime

Este es mi preámbulo:

\documentclass[a4paper,11pt,twoside]{book}
\renewcommand{\baselinestretch}{1}

\usepackage[no-math]{luatexja-fontspec}
\setmainjfont{Hiragino Mincho Pro}
\setsansjfont{Hiragino Sans}

\setmainfont[Ligatures=TeX]{CMU Serif}
\setsansfont[Ligatures=TeX]{Linux Biolinum O}

\ltjsetparameter{jacharrange={-1, -2, +3, -4, -5, +6, +7, +8}}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{russian}
\setotherlanguage{japanese}

\setlength{\columnsep}{3em}
\setlength{\columnseprule}{0.5pt}
%\setlength{\footnotesep}{0.3cm}
\setlength{\skip\footins}{18pt}

\usepackage [top=1.8cm,
        bottom=1.8cm,
        left=3cm,
        right=2cm,
        headheight=17pt,
        includehead,includefoot,
        %heightrounded,
        %showframe
        ]{geometry}
\usepackage{multicol}
\usepackage{parskip}
    \setlength{\parindent}{0pt}
    \setlength{\parskip}{\baselineskip}
\usepackage{verbatim}
\usepackage{graphicx}
    \setlength{\intextsep}{18pt}
    \setlength{\textfloatsep}{\baselineskip}
    \setlength{\floatsep}{\baselineskip}
\usepackage[export]{adjustbox}
\usepackage{rotating}
\usepackage{fancyhdr}
\usepackage{float}
\usepackage{wrapfig}
%\usepackage{subcaption}
\usepackage{caption}
\captionsetup[figure]{aboveskip=7pt, belowskip=-            \baselineskip,font=footnotesize,labelfont=bf}
\usepackage{enumitem}
\setlist[itemize]{parsep=4pt}
\setlist[enumerate]{parsep=5pt}
\usepackage{gensymb}
%\usepackage{wrapfig}
\usepackage{natbib}
\usepackage{array,tabu}
\usepackage{amssymb, pifont, marvosym, tikzsymbols, fdsymbol, wasysym, fontawesome, ifsym, academicons}
\usepackage{setspace}
\usepackage{xcolor}
    \definecolor{orcid}{HTML}{a7cc46}
    \definecolor{RG}{HTML}{21cbbb}
    \definecolor{linkedin}{HTML}{1078b3}
    \definecolor{twitter}{HTML}{2aa3ef}
    \definecolor{face}{HTML}{4469b0}
\usepackage{skak}
\usepackage{chngcntr}
\usepackage{textcomp}
\usepackage{titlesec}
\usepackage{longtable}
%\usepackage{amsmath}
%\usepackage{svg}
\usepackage{nicefrac}
\usepackage{balance}
\usepackage{mdwlist}
\usepackage{imakeidx}
%\usepackage[font=normalsize]{idxlayout}
\usepackage[final]{pdfpages}
\makeindex[columns=2, columnseprule, title=Index]
\PassOptionsToPackage{hyphens}{url}\usepackage[breaklinks,hidelinks,linktocpage=true]{hyperref}
\hypersetup{%
            colorlinks = true,
            linkcolor = blue,
            urlcolor = blue
            }

\setlistdepth{4}
\newlist{myEnumerate}{enumerate}{4}
\setlist[enumerate,1]{label=\textit{\arabic*.}}
\setlist[enumerate,2]{label=\textit{\alph*.}}
\setlist[enumerate,3]{label=\textit{\roman*.}}
\setlist[enumerate,4]{label=$$}

\titleformat{\chapter}[block]{\color{black}\Large\bfseries\filcenter}{}{0pt}{}
\titlespacing*{\chapter}{0pt}{0pt}{0pt}
\titleformat{\section}[block]{\color{black}\Large\bfseries\filcenter}{}{1em}{}
\setcounter{secnumdepth}{0}

\setcounter{tocdepth}{3} %definition of the no. of levels in the ToC list

\renewcommand{\thefootnote}{\scriptsize{\roman{footnote}}} %fontsize footnote
\addto\captionsenglish{\renewcommand{\contentsname}{Table of Contents \label{TaoCo}}} %Title of ToC

%definition of \quote margins 
\renewenvironment{quote}{%
   \list{}{%
     \leftmargin20pt   % this is the adjusting screw
     \rightmargin\leftmargin
   }
   \item\relax
}
{\endlist}
%--------------------------PAGESTYLE Preface-----------------------------------------
\fancypagestyle{preface}{
    \fancyhf{}
    \renewcommand{\headrulewidth}{0pt}
    \renewcommand{\footrulewidth}{0pt}
    \fancyhead[L]{\small Preface}
    \fancyhead[R]{\small Name}
    \fancyfoot[C]{\small Name}
    %\fancyfoot[LE,RO]{\small \thepage}
}

Respuesta1

Si vas a utilizar mucho esta sartén reflejada, te sugiero que escribas una macro para ella:

\newcommand\napgniyrf{\protect\reflectbox{\fontsize{20pt}{20pt}{\fryingpan}}}

Tenga en cuenta lo \protectsugerido anteriormente en los comentarios. Con este cambio, su MWE (¡o al menos lo que debería haber sido su MWE! :) funciona bien para producir:

ingrese la descripción de la imagen aquí

Aquí está el código completo:

\documentclass{article}
\usepackage{tikzsymbols}
\usepackage{graphicx}

\newcommand\napgniyrf{\protect\reflectbox{\fontsize{20pt}{20pt}{\fryingpan}}}
\begin{document}

\addtocontents{toc}{~\noindent\hfil{\fontsize{20pt}{20pt}{\fryingpan}}\hspace{2pt}{\textbf{\large{Recipes}}}\hspace{2pt}{\fontsize{20pt}{20pt}{\fryingpan}}\hfil\par}

\addtocontents{toc}{~\noindent\hfil\napgniyrf\hspace{2pt}{\textbf{\large{Recipes}}}\hspace{2pt}{\napgniyrf}\hfil\par}

\tableofcontents
\end{document}

Es posible que también desee definir

\newcommand\Fryingpan{\fontsize{20pt}{20pt}{\fryingpan}}

para que no necesites usarlo \fontsizecuando quieras usar un archivo \fryingpan.

Respuesta2

El argumento \addtocontentses conmovedor, por lo que los comandos frágiles \reflectboxdeben protegerse. En su lugar, es más fácil definir un comando robusto.

Lo evitaría \fontsize{20pt}{20pt}por esto: \scaleboxes mejor.

\documentclass{article}
\usepackage{tikzsymbols}
\usepackage{graphicx}

\DeclareRobustCommand\mnapgniyrf{\scalebox{-2}[2]{\fryingpan}}
\DeclareRobustCommand\mfryingpan{\scalebox{2}{\fryingpan}}

\begin{document}

\addtocontents{toc}{%
  \noindent\hfil\mfryingpan
  \hspace{2pt}\textbf{\large{Recipes}}\hspace{2pt}%
  \mnapgniyrf\par
}

\tableofcontents
\end{document}

ingrese la descripción de la imagen aquí

Una estrategia diferente, si necesita utilizar los símbolos en diferentes tamaños, es

\DeclareRobustCommand\mnapgniyrf[1]{\scalebox{-#1}[#1]{\fryingpan}}
\DeclareRobustCommand\mfryingpan[1]{\scalebox{#1}{\fryingpan}}

y las llamadas para obtener el doble de tamaño serían

\mfryingpan{2}
\mnapgniyrf{2}

información relacionada