
Soy principiante en Tex y tengo un archivo tex.
\documentclass{article}
\addtolength{\jot}{1em}
\begin{document}
\begin{verbatim}
\end{verbatim}
\begin{chestnutStem}
In the following figure, if the spinner is divided into 8 colored sections, what is the probability of it stopping at blue?
\centerline{\includepdf[page=2]{mypdf.pdf}}
\end{chestnutStem}
\chestnutKey{
$ \frac{1}{4} $
}
\begin{chestnutAnswer}
\begin{align*}
\textrm{The probability of the spinner stopping at blue}&=\frac{\textrm{the number of blue sections}}{\textrm{total number of sections}}\\
&=\frac{2}{8}\\
&=\frac{1}{4}.
\end{align*}
\end{chestnutAnswer}
\end{document}
y tengo el archivo cls
\ProvidesClass{chestnut}[2016/02/17]
\LoadClass{article}
\RequirePackage{amsmath}
\RequirePackage{kvoptions}
\RequirePackage{graphicx}
\RequirePackage{xkeyval}
\DeclareStringOption{country}{}
\DeclareStringOption{language}{}
\DeclareStringOption{math}{}
\DeclareStringOption{numerals}{}
\ProcessKeyvalOptions*\relax
\DeclareOption{example}{%
\typeout{You are using example object.}
}%
\DeclareOption*{}{}
\ProcessOptions*\relax
\RequirePackage[lmargin=0.5in,rmargin=0.5in,tmargin=0.5in,bmargin=0.5in]{geometry}
\let\country=\chestnut@country
\typeout{ Your country \country}
\let\language=\chestnut@language
\typeout{ Your language \language}
\let\math=\chestnut@math
\typeout{ Your symbols language is \math}
\let\numerals = \chestnut@numerals
\typeout{ Your numerals are in \numerals}
\newenvironment{chestnutStem}{\underline{\textbf{Stem}}\\* }{\hfill \\* }
\newcommand\chestnutKey[1]{\underline{\textbf{Key}}\\*#1\hfill\\* }
\newenvironment{chestnutAnswer}{\underline{\textbf{Answer}}\\*}{\hfill \\* }
\RequirePackage{alternative4ht}
\altusepackage{pdfpages}
\newcommand\chestnutTikZ[1]{\includepdf[pages=-,width=.9\textwidth]{#1}}
\setlength{\parindent}{0pt}
\pagenumbering{gobble}
\IfFileExists{approved.jpg}{%
\RequirePackage{fancyhdr}
\renewcommand\headrule{}
\rhead{\vspace{0.5in}\includegraphics[scale=0.2]{approved.png}}
\pagestyle{fancy}
}%
y archivo alternativo4ht.sty
\ProvidesPackage{alternative4ht}
\newcommand{\altusepackage}[2][]{%
\ifx\HCode\relax%
\usepackage[#1]{#2}%
\else%
\IfFileExists{#2-alt4ht.sty}{%
\usepackage[#1]{#2-alt4ht}%
}{\typeout{alternative4ht: no patch file for #2}}
\fi%
}
\endinput
y el archivo pdfpages-alt4ht.sty
\ProvidesPackage{pdfpages-alt4ht}
\RequirePackage{graphicx}
\newcommand\includepdf[2][]{%
\includegraphics{#2}
}
\endinput
y archivo cfg para convertir páginas pdf a imágenes png
\Preamble{xhtml}
\Configure{graphics*}
{pdf}
{\Needs{"convert -scene 1 \csname Gin@base\endcsname.pdf
\csname Gin@base\endcsname.png"}%
\Picture[pict]{\csname Gin@base\endcsname .png}% here i want add page number with pdf file name for example <mypdf-2.png>
\special{t4ht+@File: \csname Gin@base\endcsname.png}
}
\begin{document}
\EndPreamble
Quiero obtener la opción de valor [página] en el \includepdf
comando para usarla en el archivo de configuración
Respuesta1
pdfpages
es uno de los paquetes que provoca tex4ht
que falle una vez que se incluyen. En este caso, se debe modificar la fuente TeX, algo que intentamos evitar con tex4ht
.paquete helpers4htproporciona \altusepackage
un comando que se puede utilizar para cargar versiones alternativas de paquetes para tex4ht
. Estos paquetes alternativos se denominan packagename-alt4ht.sty
. Contienen definiciones de macros utilizadas en el documento. La definición de pdfpages
era solo básica, podía usarse para incluir solo un documento pdf paginado.
Para admitir archivos pdf de varias páginas, agregué pages
la opción de \includepdf
comando en pdfpages-alt4ht.sty
el paquete. No es compatible con todas las características del original, ya que sería bastante difícil implementarlo y no creo que tenga sentido en la salida HTML:
\ProvidesPackage{pdfpages-alt4ht}
\RequirePackage{graphicx}
\RequirePackage{xkeyval}
\define@key{includepdf}{pages}{\edef\current@pdf@page{\the\numexpr #1-1\relax}}
\newcommand\includepdf[2][]{%
\def\current@pdf@page{0}
\setkeys*{includepdf}{#1}
\filename@parse{#2}
\def\current@png@name{\filename@area\filename@base-\current@[email protected]}
\IfFileExists{\current@png@name}{}{%
\Needs{"convert #2[\current@pdf@page]
\current@png@name"}
}
\includegraphics{\current@png@name}
}
\endinput
guarda la página solicitada en \current@pdf@page
una macro, debe disminuirse en 1, porque imagemagick
cuenta las páginas desde 0. El png
nombre se construye como imagename-pagenumber.png
y convert
el programa se llama solo si aún no existe.
Tuve que solucionar un problema en chestnut.cls
, faltaba {}
en IfFileExists
:
\ProvidesClass{chestnut}[2016/02/17]
\LoadClass{article}
\RequirePackage{amsmath}
\RequirePackage{kvoptions}
\RequirePackage{graphicx}
\RequirePackage{xkeyval}
\DeclareStringOption{country}{}
\DeclareStringOption{language}{}
\DeclareStringOption{math}{}
\DeclareStringOption{numerals}{}
\ProcessKeyvalOptions*\relax
\DeclareOption{example}{%
\typeout{You are using example object.}
}%
\DeclareOption*{}{}
\ProcessOptions*\relax
\RequirePackage[lmargin=0.5in,rmargin=0.5in,tmargin=0.5in,bmargin=0.5in]{geometry}
\let\country=\chestnut@country
\typeout{ Your country \country}
\let\language=\chestnut@language
\typeout{ Your language \language}
\let\math=\chestnut@math
\typeout{ Your symbols language is \math}
\let\numerals = \chestnut@numerals
\typeout{ Your numerals are in \numerals}
\newenvironment{chestnutStem}{\underline{\textbf{Stem}}\\* }{\hfill \\* }
\newcommand\chestnutKey[1]{\underline{\textbf{Key}}\\*#1\hfill\\* }
\newenvironment{chestnutAnswer}{\underline{\textbf{Answer}}\\*}{\hfill \\* }
\RequirePackage{alternative4ht}
\altusepackage{pdfpages}
\newcommand\chestnutTikZ[1]{\includepdf[pages=-,width=.9\textwidth]{#1}}
\setlength{\parindent}{0pt}
\pagenumbering{gobble}
\IfFileExists{approved.jpg}{%
\RequirePackage{fancyhdr}
\renewcommand\headrule{}
\rhead{\vspace{0.5in}\includegraphics[scale=0.2]{approved.png}}
\pagestyle{fancy}
}{}%
y también su archivo TeX, porque chestnut
la clase no fue utilizada:
\documentclass{chestnut}
\addtolength{\jot}{1em}
\begin{document}
\begin{verbatim}
\end{verbatim}
\begin{chestnutStem}
In the following figure, if the spinner is divided into 8 colored sections, what is the probability of it stopping at blue?
\centerline{\includepdf[pages=2]{mypdf.pdf}}
\end{chestnutStem}
\chestnutKey{
$ \frac{1}{4} $
}
\begin{chestnutAnswer}
\begin{align*}
\textrm{The probability of the spinner stopping at blue}&=\frac{\textrm{the number of blue sections}}{\textrm{total number of sections}}\\
&=\frac{2}{8}\\
&=\frac{1}{4}.
\end{align*}
\end{chestnutAnswer}
\end{document}
salida de muestra: