Problemas con XeLaTeX y Pstricks

Problemas con XeLaTeX y Pstricks

Estoy escribiendo un libro de matemáticas y aparece este mensaje de error cuando compilo con XeLaTeX.

(/usr/share/texmf/tex/latex/pstricks/pstricks.sty
Package: pstricks 2013/12/12 v0.60 LaTeX wrapper for `PSTricks' (RN,HV)
! Undefined control sequence.
l.64 \ifnum\pdfshellescape
=\@ne\else
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
! Missing number, treated as zero.
<to be read again>
=
l.64 \ifnum\pdfshellescape=
\@ne\else
A number should have been here; I inserted `0'.
(If you can't figure out why I needed to see a number,
look up `weird error' in the index to The TeXbook.)

Necesito compilar con XeLaTeX porque tengo que usar algunas fuentes ttf y he leído que es más sencillo (usar fuentes ttf en LaTeX) con XeLaTeX. Pero primero necesito resolver este problema con Pstricks y XeLaTeX.

¿Qué pasa con Pstricks y XeLaTeX?

Este es mi preámbulo

\documentclass[letterpaper,reqno]{book}
\usepackage{makeidx}
\usepackage[spanish,es-nosectiondot]{babel}
\usepackage[utf8]{inputenc}
\usepackage{color}
\usepackage{verbatim} %Para comentar bloques de texto
\usepackage[text={168mm,240mm},centering]{geometry}%Define el ancho y la altura del texto (Página)
\usepackage{amssymb,amsmath,amsthm}
\usepackage{epsfig,graphicx,psfrag,float}
%\makeatletter
%\chardef\pdf@shellescape=1
%\makeatother
\usepackage[pdf]{pstricks}
\usepackage{pstricks-add,pst-math,pst-xkey,pst-pdf,auto-pst-pdf}
\usepackage[all]{xy}
\usepackage{enumerate}
\usepackage{hyperref}

NOTAS: 1. Estoy usando TeXmaker en Opensuse Leap 42.2 2. He instalado el paquete xetex-pstricks y casi todos los paquetes pstricks.

Ahora les voy a compartir el código del archivo principal, un ejemplo de capítulo y dos salidas en pdf: una después de compilar sin la imagen pstrick y la otra después de compilar con la imagen.

\documentclass[letterpaper,reqno,14pt]{book}
\listfiles
\usepackage{makeidx}
\usepackage[spanish,es-nosectiondot]{babel}
\usepackage[utf8]{inputenc}
\usepackage{fontspec}
\usepackage{infwarerr}
\usepackage{color}
\usepackage{verbatim} %Para comentar bloques de texto
\usepackage[text={168mm,240mm},centering]{geometry}%Define el ancho y la     altura del texto (Página)
\usepackage{amssymb,amsmath,amsthm}
\usepackage{epsfig,graphicx,psfrag,float}
\usepackage{geometry}
\usepackage{ltxcmds}
\usepackage[pdf]{pstricks}
\usepackage{pstricks-add,pst-math,pst-xkey,pst-pdf,auto-pst-pdf}
\usepackage[all]{xy}
\usepackage{tocloft}% Este paquete modifica los parámetros de la Tabla de     Contenidos (ToC)
\usepackage{fancyhdr}
\usepackage{titlesec}
\usepackage{sectsty}
\usepackage{enumerate}
\usepackage{hyperref}
\usepackage{lipsum}

\makeindex

\setmainfont{georgia.TTF}[
Path=/usr/share/fonts/Win10/,
BoldItalicFont=georgiaz.TTF,
BoldFont      =georgiab.TTF,
ItalicFont    =georgiai.TTF]

\newfontfamily\myfont{calibri.TTF}[
Path=/usr/share/fonts/Win10/,
BoldItalicFont=calibriz.TTF,
BoldFont      =calibrib.TTF,
ItalicFont    =calibrii.TTF]

\renewcommand{\cftchappresnum}{Capítulo }%Aparece "Capítulo" antes del  número correspondiente
\renewcommand{\cftchapaftersnum}{}%Lo que aparece después de "Capítulo n"
\renewcommand{\cftchapaftersnumb}{\\ }%Cambio de línea para que el Chapter    name quede en otra línea
\renewcommand{\cftchapnumwidth}{0mm}

\pagestyle{myheadings}
\renewcommand{\chaptermark}[1]{\markboth{Álgebra lineal con el uso de MATLAB}{\chaptername\ \thechapter.\ #1}}

\titleformat{\chapter}[display]{\huge\myfont}{\chaptertitlename\ \thechapter}{20pt}{\Huge}
\allsectionsfont{\myfont}

\newtheoremstyle{theorem}% name
{3pt}%      Space above
{3pt}%      Space below
{\itshape}%         Body font
{}%         Indent amount (empty = no indent, \parindent = para indent)
{\bfseries}% Thm head font
{}%        Punctuation after thm head
{.5em}%     Space after thm head: " " = normal interword space;
    %       \newline = linebreak
{}%         Thm head spec (can be left empty, meaning `normal')
\theoremstyle{theorem}
\newtheorem{theorem}{Teorema}

\begin{document}

\pagenumbering{roman}
\tableofcontents
%\newpage
\pagenumbering{arabic}
% si no queremos que añada la palabra "Capitulo"
\addcontentsline{toc}{chapter}{Prefacio}

\include{EnsayoPrefacio}
%\markboth{Algebra}{}
\include{Ensayos} % si queremos que aparezca en el índice

\include{Index}

\printindex

\end{document}

El código del primer capítulo es

\chapter{Prefacio}\label{Ensayoprefacio}
\lipsum[1-5]
\newpage
\lipsum[6-10]
\newpage
\lipsum[11-6]

El código del segundo capítulo es (sin la imagen de pstricks)

\chapter{Álgebra de matrices}\label{Ensayos}
\lipsum[1-2]
\begin{equation}
x=vt+x_0
\end{equation}
\newpage
\lipsum[3-8]
\newpage
\section{Para ensayar}
\lipsum[9-15]
\begin{theorem}
\lipsum[15]
\end{theorem}

Este código produce esta salida. ingrese la descripción de la imagen aquí

Y aquí va con la imagen de pstricks.

\begin{center}
%\centering
\newrgbcolor{xdxdff}{0.49 0.49 1}
       \psset{xunit=0.75cm,yunit=0.75cm,algebraic=true,dotstyle=o,dotsize=3pt,linewidth=0.8pt,arrowsize=3pt,arrowinset=0.25}
\begin{pspicture*}(-3.08,-3.42)(18.24,2.56)
\psline{->}(0,0)(-3,0)
\psline{->}(0,0)(3,0)
\psline{->}(0,0)(0,2.46)
\psline[linecolor=red]{->}(-0.02,0.39)(2.42,-1.47)
\psline[linecolor=red]{->}(-0.02,0.39)(-1.64,1.62)
\psline[linecolor=blue]{->}(-0.02,0.39)(2.06,1.62)
\psline[linecolor=blue]{->}(-0.02,0.39)(-2.47,-1.06)
\psline{->}(7.54,0)(4.48,0)
\psline{->}(7.54,0)(10.54,0)
\psline{->}(7.54,0)(7.54,2.26)
\psline{->}(7.54,0)(7.54,-2.28)
\psline{->}(15,0)(15,2.25)
\psline{->}(15,0)(15,-2.25)
\psline{->}(15,0)(12,0)
\psline{->}(15,0)(18,0)
\psline[linecolor=blue]{->}(7.54,0.63)(10.24,1.72)
\psline[linecolor=blue]{->}(7.54,0.63)(5.1,-0.35)
\psline[linecolor=red]{->}(7.54,-0.82)(10.19,0.25)
\psline[linecolor=red]{->}(7.54,-0.82)(5.22,-1.75)
\psline[linecolor=blue]{->}(15,0.56)(17.74,1.93)
\psline[linecolor=blue]{->}(15,0.56)(12.4,-0.74)
\rput[tl](-0.94,-2.44){\index{Solución única}Solución única}
\rput[tl](6.6,-2.44){\index{Solución vacía}Solución vacía}
\rput[tl](13,-2.42){\index{Infinitas soluciones}Infinitas soluciones}
\rput[tl](3,-3.02){Figura 1.1: Intersección de rectas en un plano}
\psline{->}(0,0)(0,-2.26)
\psline[linecolor=red]{->}(15,0.51)(17.75,1.89)
\psline[linecolor=red]{->}(15,0.51)(12.45,-0.77)
\begin{scriptsize}
\psdots[dotstyle=*,linecolor=blue](-0.02,0.39)
\end{scriptsize}
\end{pspicture*}
\end{center}

Que produce esta salida ingrese la descripción de la imagen aquí

Gracias por tu ayuda.

Respuesta1

Pude resolver mi problema de una manera fácil: simplemente compilé con PDFTeX para obtener las imágenes hechas con pstricks. Luego edité cada imagen con Inkscape y, finalmente, las incluí en mi libro con el entorno de figuras. Gracias por tu ayuda.

información relacionada