ES-TEX Archivos

Usuarios hispanohablantes de TeX

ES-TEX@LISTSERV.REDIRIS.ES

Opciones: Vista Clásica

Use Monospaced Font
Por defecto enseñar Text Part
Mostrar todas las cabeceras de correo

Tema: [<< Primero] [< Prev] [Siguiente >] [Último >>]

Print Responder
Juan Manuel Macías <[log in para visualizar]>
Thu, 6 Jan 2022 13:02:03 +0000
text/plain (68 lines)
(creo que se me perdió este mensaje al enviarlo a la lista: disculpas si
al final llega duplicado).

Hola a todos:

Sigo trasteando con esto de dibujar rejillas base y Lua, en este caso
explorando la posibilidad de añadir también una línea para la altura x y
otra para la de las mayúsculas. He robado algunas ideas de aquí
https://tex.stackexchange.com/questions/140514/handwriting-drill-sheets,
pero a ninguno de este hilo se le ha ocurrido hacerlo mediante Lua, que
me parece mucho más sencillo.

La cosa quedaría así. Primero definimos estas dos alturas:

\newcommand{\alturax}{1ex}
% esta habrá que ajustarla según el caso:
\newcommand{\alturamay}{1.6ex}

Una caja:

\newbox\rejillas

La consabida funcioncilla en Lua:

\directlua{
rejilla = function(head)
      for linea in node.traverse_id(node.id("hlist"), head) do
      node.insert_after(linea.list, node.tail(linea.list),node.copy(tex.box.rejillas))
      end
         return head
end
}

Y con xparse este entorno, que toma tres argumentos: el primero opcional
es el nombre de la fuente, los otros dos obligatorios son el tamaño y el
interlineado:

\usepackage{xparse}
\usepackage{tikz}

\NewDocumentEnvironment{rejilla}{o m m}{%
\IfNoValueF{#1}{\fontspec{#1}}
\fontsize{#2}{#3}\selectfont
\setbox\rejillas=\hbox{%
\fontsize{#2}{#3}\selectfont
  \begin{tikzpicture}[overlay]
  \draw[green!60] ((-\textwidth,\alturamay) -- ++(\textwidth,0);
  \draw[red!60] ((-\textwidth,\alturax) -- ++(\textwidth,0);
  \draw[black!35] ((-\textwidth,0) -- ++(\textwidth,0);
\end{tikzpicture}}
\directlua{luatexbase.add_to_callback("post_linebreak_filter", rejilla, "rejilla")}
}
{%
\normalfont\par%
\directlua{luatexbase.remove_from_callback("post_linebreak_filter", "rejilla")}
}

Un pantallazo de ejemplo: https://i.imgur.com/8z6GqOB.png

Saludos,

Juan Manuel

----------------------------------------------------
Los artículos de ES-TEX son distribuidos gracias al apoyo y colaboración 
técnica de RedIRIS - Red Académica española - (http://www.rediris.es)
------------------------------------------------------

ATOM RSS1 RSS2