Tengo un documento LaTeX largo con muchas figuras que se incluyeron usando comandos del formulario
\includegraphics[page=10]{foo.pdf}
Todo se compila bien con pdfLaTeX. Planeé convertir el documento a HTML usando TeX4ht, pero parece que TeX4ht no comprende los page=
atributos en \includegraphics
.
¿Hay alguna solución fácil? Idealmente, preferiría mantener mi fuente principal de Latex sin modificar y simplemente modificar el preámbulo.
Respuesta1
Perdón por llegar tarde. Es probable que el siguiente código ayude al Jukka:
\makeatletter
\@ifundefined{Configure}
{\def\Includegraphics[#1]#2{\includegraphics[page={#1}]{#2}}}
{\def\Includegraphics[#1]#2{\def\GPT@page{#1}\includegraphics{#2}}
\Configure{graphics*}
{pdf}
{\Needs{"
pdftops -eps -f \GPT@page\space -l \GPT@page\space \[email protected] \Gin@base-\[email protected]"
;
convert \Gin@base-\[email protected] \Gin@base-\[email protected]
"}%
\Picture[pict]{\Gin@base-\[email protected]}%
}%
}%
\makeatother
\Includegraphics[10]{foo.pdf}
debería funcionar ahora tanto con pdfLaTeX como con TeX4ht.
Respuesta2
TeX4ht no utiliza pdfTeX en modo PDF, sino dvips. Sin embargo, dvips
no puede leer archivos PDF ni archivos de varias páginas. La página 10 se puede extraer y convertir a eps epstopdf
con xpdf
:
epstopdf -eps -f 10 -l 10 foo.pdf foo-10.eps
O ghostscript
se puede utilizar, por ejemplo:
gs -dFirstPage=10 -dLastPage=10 -sDEVICE=epswrite -dBATCH -dNOPAUSE -sOutputFile=foo-10.eps foo.pdf
Luego en la fuente:
\ifpdf
\includegraphics[page=10]{foo.pdf}
\else
\includegraphics{foo-10.eps}
\fi
Y ifpdf
se necesita un paquete en el preámbulo:
\usepackage{ifpdf}