LaTeX 7 – imágenes

Ya han pasado algunos capítulos de esta serie y ya se puede escribir un documento básico, con un preámbulo y ciertos elementos como texto en negrita o cursiva, citas, notas al pie, etc. Introduciremos ahora unos nuevos elementos que serán, no solo útiles en sí mismos, sino una excusa para aprender algo más acerca de los entornos. Me refiero a las imágenes y a las tablas.

Las imágenes

Las imágenes (igual que las tablas, por cierto), pueden ser incluidas tal cual, a pelo, o dentro de un entorno que proporcionará algunas funcionalidades extra.

Insertar una imagen

Para insertar una imagen son necesarias dos cosas: la imagen en sí (obviamente) y cargar un paquete en el preámbulo que permita tal cosa.

Lo primero, la imagen, ha de estar en el mismo directorio en el que está el archivo .tex a la hora de compilar o, si no, en un directorio conocido que hay que especificar cuando se inserte la imagen.

Lo segundo, en el preámbulo se carga el paquete graphicx:

\usepackage{graphicx}

Y en el lugar en el que se quiere insertar la imagen se especifica el siguiente código:

\includegraphics{imagen.png}

Y ya está, con esto quedará la imagen insertada en el texto y \LaTeX se encargará de ajustarla lo mejor posible. Aún así, faltan cosas.

Una de esas cosas que faltan es la posibilidad de ajustar el tamaña relativo de la imagen respecto al texto. Para eso se añaden parámetros opcionales (entre corchetes) al código anterior especificando la anchura de la imagen (width) respecto a la anchura del área de texto (textwidth). Queda como sigue:

\includegraphics[width=0.75\textwidth]{./fotos/imagen.png}

En este ejemplo la imagen llamada imagen.png, guardada en la carpeta fotos dentro del mismo directorio del archivo .tex, se redimensionará a un 75% del ancho del texto.

Otra cosa que se puede añadir, y algo además muy útil, es poder indicar si la imagen ha de preferirse en la parte superior o inferior de la página, si se desea forzar que aparezca en la posición en la que está el código respecto al resto del texto, etc. Para mí, sobre todo, está también la posibilidad de incluir una leyenda bajo la imagen con una numeración (algo como Figura 3: Nudos marineros.) y una etiqueta para poder referirnos a ella en las referencias cruzadas. Para ello hay que insertar la imagen dentro de un entorno que sirva de «contenedor».

El entorno «figure»

Exactamente igual al entorno quote usado para las citas literales (ver la tercera entrada de esta serie) y a cualquier otro entorno que se pueda usar en \LaTeX, este se engloba entre órdenes de apertura y cierre:

\begin{figure}
  Aquí todo lo referente a la imagen
\end{figure}

Y es dentro de estas dos órdenes donde todo lo necesario para la definición de la imagen irá insertado. Para empezar, la misma imagen, con su enlace, tamaño en relación al texto, etc. Pero también, como dije antes, alguna cosa más.

Justo después de la marca de apertura del entorno, una marca opcional (y por lo tanto entre corchetes) indica la posición de la imagen en relación a la página. Esta posición se indica con los códigos:

  • h : la imagen se posiciona aquí (here) en relación al texto circundante, es decir, después del párrafo precedente y antes del párrafo siguiente. En realidad, es demasiado restrictivo y \LaTeX lo cambiará automáticamente por ht.
  • t : la imagen va en la parte superior de esa página (top) o la siguiente, independientemente del lugar en el que se escriba el código en relación al texto circundante.
  • b : la imagen se sitúa en la parte inferior de esa página (bottom) o la siguiente.
  • p : se crea una página a propósito para la figura.

Estos códigos pueden escribirse juntos por orden de preferencia para indicar las opciones posibles. Recuerda que el objetivo es conseguir el mejor resultado, por lo que \LaTeX puede escoger modificar estas preferencias con este objetivo, incluso mostrando la imagen en la página siguiente (los entornos son «entornos flotantes», se mueven). Para forzar la posición escogida a pesar de que el programa entienda que no es óptimo se usa !. Esto lo que hace es ignorar las restrictiones autoimpuestas de un máximo de 2 objetos en el comienzo de la página, un máximo de 1 objeto al final de la página y un máximo general, obviamente, de 3 objetos. La opción por defecto, sin especificar nada, es tbp. Mi elección, en muchos casos, es \begin{figure}[htb].

Ojo: hay que entender que estos entornos flotantes pueden moverse según el tamaño de los párrafos adyacentes, el tamaño de la imagen, etc., por lo que siempre es buena idea hacer referencia a las imágenes, o figuras, con una referencia cruzada (si tienes dudas sobre cómo funcionan las referencias dentro de un texto, échale un vistazo al cuarto artículo de esta serie, en el apartado Referencias cruzadas), de manera que no importa dónde esté la imagen, siempre habrá un modo sencillo de encontrarla.

Ojo (segunda parte): el arte de colocar las figuras en su sitio es eso, un arte, y no se puede tratar todo de la misma manera, el objetivo es la legibilidad y coherencia en un texto, no el que así ya vale o es que me gusta más. De hecho, el manual de KomaScript, un conjunto de clases del que hablaré en su momento, menciona que

Estos entornos flotantes son a menudo mal entendidos por los principiantes, que suelen buscar una posición fija para las figuras en el texto. Sin embargo, como estos entornos están referenciados en el mismo texto, en la mayoría de los casos esto no es necesario. Además, tampoco es razonable, porque estos objetos solo se pueden incluir en una página cuando hay espacio suficiente. Si no es el caso, el objeto debe moverse a la siguiente página dejando probablemente un gran espacio en blanco en la página precedente.

A menudo uno se encuentra los mismos argumentos opcionales para todos los objetos flotantes, lo que tampoco tiene sentido. En esos casos sería mucho mejor variar el parámetro estándar de manera general.

Traducción propia.

Por lo tanto, aunque no lo parezca al principio, en realidad el funcionamiento general de \LaTeX suele ser, como en casi todo, el mejor.

Ya está definido el entorno, su posición preferente y la imagen que contendrá. Pero esta imagen aparecerá en línea con el texto, es decir, alineada a la izquierda (por más que el texto esté justificado). Para centrarla, que es lo debido, incluiremos una orden \centering antes de la orden con la que se inserta la imagen.

Finalmente, después de la imagen, el texto que la acompaña o leyenda. El texto que se escriba irá precedido, si se usan las opciones para español, de la palabra Figura seguida de un número ordinal que permitirá identificar la imagen entre el resto, así como incluirla en el Índice de figuras si lo hay. Para insertar una leyenda se usa la orden \caption{texto bajo la imagen}.

Este texto aparecerá centrado y bajo la imagen. Hay maneras de cambiar esta apariencia, pero ya será complicar mucho las cosas.

Lo único que queda para tener una imagen perfectamente insertada en el texto es una etiqueta que permita que las referencias cruzadas encuentren un punto de destino. Eso, como vimos, se logra usando \label.

El código resultante de tanto añadir cosas es el siguiente:

\begin{figure}[ht]
  \centering
  \includegraphics[width=0.9\textwidth]{./imagenes/rustica.png}
  \caption{Escritura rústica romana.}
  \label{rust}
\end{figure}

Y ya ves el resultado. Si las opciones de idioma del preámbulo son distintas, la imagen será nombrada de forma distinta de acuerdo al idioma seleccionado.

Tras insertar la imagen, las referencias Ver figura \ref{rust} en la página \pageref{rust}. se verán como «Ver figura 2 en la página 17».

Notas al pie en la leyenda

Algo que no es muy obvio a simple vista es la manera de insertar una nota al pie como en el ejemplo de la foto:

El problema con las notas al pie es que no pueden estar dentro del entorno figure, pero el texto que figura al pie sí que debe estar dentro. ¿Cómo hacer entonces?

Hay que insertar una «pareja de marcas» en la que una, la interna al entorno, llame al texto de la nota al pie. En el lugar en el que se desea que aparezca la nota el código \footnotemark llama al primer lugar en el que se encuentre su «pareja», \footnotetext{Texto de la nota}. En un caso así, el código quedaría como sigue:

\begin{figure}[ht]
  \centering
  \includegraphics[width=0.9\textwidth]{./imagenes/mayuscula.png}
  \caption{Escritura mayúscula romana.\footnotemark}
  \label{mays}
\end{figure}
\footnotetext{Imagen extraída de Wikipedia.}

Nótese que \footnotemark está dentro de los corchetes que definen el pie de foto, o sea que funciona exactamente como una cita al pie normal y corriente. No deben mezclarse estas «parejas» de etiquetas, pues el texto seleccionado es el primero que aparezca dentro de una marca footnotetext, de modo que lo más sensato es ponerlo justo después del entorno flotante, no todo junto al final del documento.

Iba a decir que no hay mucho más que decir, pero no es verdad. Solo la parte del manual de KomaScript con las opciones para formatear la leyenda de la imagen ocupa un buen número de páginas, lo que nos da una idea de la potencia disponible. Pero estamos, todos nosotros, empezando en esto, así que paciencia.

Como siempre, esta es una entrada original de Bokunoshumi, en una de las series de artículos que más me gustan. Espero que os sea de alguna utilidad.

Anuncios

Markdown para humanistas: introducción

Todos sabéis que uno de mis objetivos en esta serie de artículos es llevar ciertas herramientas libres y sencillas al mundo de los estudiantes (y profesores) de letras y otras enseñanzas (y profesiones) relacionadas con las humanidades.

Pero el uso de herramientas libres y sencillas, por más libres y sencillas que sean, no deben implicar una mayor carga de trabajo para un resultado similar. Y aunque el uso de HTML se podría considerar como universal en el sentido de que puede visualizarse en cualquier dispositivo[^1], desde luego es poco práctico a la hora de leerlo «en crudo», sin procesar por un navegador. Cuando comenzé esta serie alguien me comentó que efectivamente HTML no era práctico. Haciendo oídos sordos a lo que era un sabio consejo de quien sabía bastante más que yo me adentré en el mar de etiquetas y traté de que me siguiérais por él.

Craso error.

Pero, por fortuna, Markdown viene al rescate. Por dos razones fundamentales:

  1. Es texto plano y, por lo tanto, no depende de una herramienta concreta. Cualquier editor de texto, por cutre que sea, puede escribir, crear o editar archivos en Markdown. Además es multiplataforma, estándar, etc. En fin, todas y cada una de las ventajas del texto sencillo (¿hace falta que te recuerde la pesadilla que puede resultar editar un archivo de Güór de 2019 en ese ese estupendo Ófis 95 del ordenador viejo que es justo el que tienes a mano?).
  2. Es legible tal cual se escribe. Las marcas de formato son mínimas y apenas molestan la lectura. Es más, prácticamente son autoexplicativas de sencillas que son.

Solo por estas dos razones, Markdown ya es el candidato idóneo para escribir texto formateado. Es, por sencillo, fácil de aprender, rápido de escribir y fácil de leer. Tengo que reconocer, sin embargo, que me costó centrarme en Markdown en detrimento del todopoderoso Org-mode en Emacs. Pero el hecho de dedicar los artículos a texto y no a organización me ha hecho decantarme por un formato no dependiente de un programa en concreto.

Pero hay una razón más: aunque debe ser exportado (el archivo .markdown) para lograr un resultado final (al contrario que HTML, que puede ser visualizado al momento en un navegador), este resultado final es bastante más flexible. Podrá ser un archivo ODT para ser abierto por LibreOffice, HTML para navegadores, LaTeX para ser perfeccionado hasta el infinito, PDF para producir una salida impresa, ePub o FB2 para libros electrónicos… En un principio, esta necesidad de exportar el archivo a un formato diferente fue lo que me llevó a HTML como ya he comentado, pero en realidad no es un problema y veremos por qué. Como dije más arriba, el texto es sí es legible y, por lo tanto, manejable sin exportar; además su compatibilidad con HTML (más adelante hablaremos de esto) hace que numerosas plataformas de publicación, como WordPress, Gitlab o Medium, sean compatibles con Markdown: puedes pegar el texto en este formato o escribirlo directamente en sus editores. Pero la razón principal por la que realmente el asunto de la exportación no es un problema es que existen numerosas formas de hacerlo. Una puede ser la utilización de un editor on-line (como Dillinger, hackmd.io, Markua y otros), los cuales suelen ofrecer directamente esa opción en los menús. Mi alternativa preferida es usar Pandoc. Pandoc es libre, multiplataforma y la herramienta de conversión de formatos más potente que hayas visto.

Resumiendo: tenemos un formato de texto plano, con las ventajas de compatibilidad y longevidad que conlleva; que tiene una sintaxis muy sencilla que lo hace apto incluso para tomar apuntes; que es útil por sí mismo precisamente por esa sencillez que hace el archivo bruto perfectamente legible; y que además es exportable a diversos formatos finales a través de múltiples herramientas a escoger.

Dicho todo esto, me parece obvio que es sumamente atractivo para ser utilizado en numerosas ocasiones. Por ejemplo, utilizar Markdown es una opción fantástica para tomar apuntes o para producir textos destinados a ser publicados en la web (esta entrada ha sido escrita usando Markdown en el editor Emacs y pegada luego tal cual en WordPress), para producir fácilmente documentos de calidad impresos desde archivos PDF, etc.

Hay un montón de páginas en las que se puede aprender la sintaxis básica orientada a fórmulas matemáticas y documentos científicos, en estas cosas los de ciencias nos dan cien vueltas. Pero en esta serie de Bokunoshumi que aquí comienza (recomienza en realidad) nos orientaremos siempre hacia el campo del texto.

[ACTUALIZACIÓN] Me he dado cuenta, al momento de publicar esto, que a pesar de lo que dice la documentación, WordPress no maneja bien las citas al pie. En fin, cada herramienta es de su padre y de su madre y estas cosas pasan.

[^1]: Si no sabes por qué menciono aquí el uso de HTML, puedes repasar los objetivos iniciales de esta serie de artículos aquí.

Fuentes libres en japonés, siempre

[ACTUALIZACIÓN] He incluido una imagen de muestra de las
fuentes mencionadas.

Si soléis entrar a la sección de descargas de Bokunoshumi os habréis dado cuenta de que desde el inicio hay un enlace para descargarse las fuentes japonesas de Microsoft, que son gratis pero tienen copyright y no son libres.

En los sistemas Linux es muy sencillo encontrar paquetes de fuentes japonesas, aunque no todos son interesantes. Pero he encontrado unos tipos de letra disponibles que son bonitos y completos, fácilmente instalables en Debian desde los repositorios. Ya los había recomendado para usar en Abiword  porque podían escribir correctamente todos los caracteres y puntuación del español y del japonés. También las hay en versión con serifa. Hablo de IPA Mincho, IPA Gothic y VL Gothic. Hay paquetes disponibles en los repositorios de tu distribución. Pero para la gente que necesite desacargar e instalar, estos son los enlaces:

VL Gothic, IPA Fonts.

Y así de fácil tienes tipos de letra libres para visualizar páginas web o crear documentos interesantes. Hablando de documentos interesantes, el mundo no se acaba en las fuentes serias y formales, hay sitio para todos. En la portada de los apuntes de nivel básico he usado Kiloji, que parece escrita por un niño, en las listas de kanji tanto en nivel básico como intermedio he usado Kanji Stroke Orders. fácil de leer y con unos numeritos que indican el orden de trazos de cada carácter. Para cosas más «artísticas» hay fuentes de «estilo pincel», como la que ilustra esta entrada o el rótulo del blog. Es Aoyagi Kouzan T. Pero siempre es mejor ver las cosas, ¿no?

fuentes

Con esta sencilla orden en un terminal con permisos de superusuario las puedes tener todas en un santiamén:


apt install fonts-aoyagi-kouzan-t fonts-kiloji fonts-kanjistrokeorders fonts-vlgothic fonts-ipafont

Una recomendación: ojo con el buen gusto, que es fácil de perder de vista en cuanto se empiezan a probar y mezclar fuentes en un documento.

He hablado de tipos de letra para escribir y leer japonés, pero es altamente recomendable buscar y usar tipos de letra libres en todas las ocasiones posibles, en parte ya solo por introducir alguna variación en un panorama absolutamente monótono y desolador. ¿No estás harto de verlo todo escrito con Calibri o, hace un tiempo, Times New Roman? Pues eso, la diversidad es vida, y no solo en los ecosistemas orgánicos.

Dicho esto, voy a borrar los enlaces a las de Microsoft porque… ¿para qué perpetuar la horrible costumbre de un solo tipo de letra?

LaTeX 6: poesía y otros versos

Aquí estamos de nuevo con una nueva entrega de la serie de artículos acerca del uso de \LaTeX para los de letras. Y, lógicamente, dentro de «las letras», el verso, la poesía, es una parte importante.

Aquí, un ejemplo con la desternillante La venganza de Don Mendo.

\begin{verse}
¡Puñal de puño de aluño!...\\¡Puñal de bruñido acero,\\
orgullo del puñalero\\que te forjó y te dio bruño!
\begin{flushright}
Jornada II, 81.
\end{flushright}
\end{verse}

Es un entorno que no se preocupa de llevar los finales de línea al borde de la página sino que lo justifica a la izquierda, y sangra el texto algo más que la medida estándar.

Es muy sencillo de utilizar: si se recuerda que el salto de línea es como un espacio y que dos saltos de línea son un nuevo párrafo, es fácil ver que las dos barras invertidas son la marca de final de verso para introducir un salto de línea sencillo, sin el espacio o el sangrado propios de un párrafo nuevo.

Hay otro entorno anidado dentro de verse, el entorno flushright, que justifica el texto a la derecha, perfecto para la cita del autor o el fragmento. Los entornos pueden anidarse sin mayor preocupación que respetar el orden de apertura y cierre, tal y como se muestra en el ejemplo. En este caso hay dos niveles: verse y flushright, pero podría haber, por ejemplo, un entorno quote dento de flushright.

El resultado sería algo similar a:

¡Puñal de puño de aluño!
¡Puñal de bruñido acero,
orgullo del puñalero
que te forjó y te dio bruño!

Jornada II, 81.

Lamentablemente, esta plataforma no permite el uso directo del código \LaTeX salvo en ecuaciones matemáticas, de manera que el resultado que ves es… muy pobre. Para comprobar convenientemente cuál es el resultado final puedes echar un vistazo a este archivo que incluye los entornos verse y quote en la compilación (el entorno quote ya lo habíamos visto en la tercera entrega de la serie), además de cursivas, versalitas, justificado a la derecha, centrado, etc. Son dos páginas provenientes de otros tantos trabajos sobre teatro presentados en la universidad el curso anterior.

LaTeX 3: formatos de texto

Estamos ya en la tercera entrega de la serie dedicada a \LaTeX para las humanidades. Con esta remataremos la parte más sencilla, que nos permitirá hacer una edición básica, aunque completa, de un texto puro, como una novela. Esta entrada será un poco larga, pero a cambio contiene mucha información nueva.

Anteriormente hemos creado el documento y le hemos dado una estructura lógica. Siguiendo esta dirección «de dentro hacia afuera» veremos primero cómo formatear partes del texto, y dejaremos para más adelante cómo agregar un índice al principio (o al final) y la página de título. Comencemos: Seguir leyendo