ACTUALIZARDesde entonces, publiqué un archivo de estilo LaTeX basado en los hallazgos a continuación, Posición absoluta CXLTX, parte del (incipiente)Colección de estilo CXLTX, lo que facilita la colocación precisa de frases breves en la página.solicitudes de extracción: ¡increíble!
Estoy intentando posicionar el texto al estilo CSS position: absolute
y encontré elmensajes de textopaquete que básicamente funciona muy bien. en la documentación dicen (p4) que "el cuadro que está posicionado por el \textblock
entorno se ajusta perfectamente al bloque de texto (u otro material) dentro de él", pero cuando lo intento
\documentclass[a5paper]{memoir}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setlength{\parskip}{\baselineskip}
\setlength{\parindent}{0pt}
\usepackage[absolute]{textpos}
\setlength{\TPHorizModule}{0.1mm}
\setlength{\TPVertModule}{0.1mm}
\textblockorigin{0mm}{0mm}
% not needed, but makes for easier measuring:
\usepackage[top-left]{pagegrid}
\begin{document}
\TPshowboxestrue
\begin{textblock}{150}[1,0](500,000)\flushright helo\end{textblock}
\begin{textblock}{150}[1,0](500,200)\flushright world\end{textblock}
\begin{textblock}{150}[1,0](500,400)\flushright gX\end{textblock}
\begin{textblock}{150}[1,0](700,400)\flushright .\end{textblock}
\end{document}
\setlength{\parskip}{0pt}
\setlength{\parskip}{-\baselineskip}
lo que obtengo es
entonces, mientras que los bordes derechos de las cajas están colocados correctamente en 500 (décimas de mm) y los bordes superiores como tales correctamente en 0, 200 y 400, respectivamente, y los bordes inferiores de las cajas se envuelven firmemente alrededor de los descensores como se anuncia. , las cajas todavía tienen 8 mm de alto. ¿Cómo puedo envolverlas como se anuncia?
Respuesta1
Ahora bien, esto fue fácil... a veces escribir una pregunta te lleva a resolver un problema. para el registro:
Había asumido incorrectamente que poner algo en un textpos
textblock
actuaría un poco como poner cosas en una página o en un minipage
, es decir, los "saltos" de párrafo se eliminarían silenciosamente.
no tan.
primero, configurando
\setlength{\parskip}{0pt}
trajo una reducción de la altura de las cajas; entonces,
\setlength{\parskip}{-\baselineskip}
arrojó esto:
lo cual es algo contrario a la intuición, quiero decir,ceroespacio entre párrafosdeberíaigual a 'cero espacios en blanco encima del párrafo', ¿no?
Notaen el mundo real, no querrás establecer \parskip
globalmente el valor sorprendente que se muestra aquí, sino hacer que aparezca localmente, dentro de los textblock
entornos (y tal vez convertirlo en una nueva macro).
ActualizarComo seguimiento, he definido una macro útil que simplifica el posicionamiento absoluto del texto. aquí lo tienes:
\newdimen\textposstrutheight
\newdimen\textposstrutwidth
\newdimen\textposstrutdepth
\newdimen\textposstrutlength
\textposstrutwidth=0.5mm
\textposstrutheight=2.7mm
\textposstrutdepth=2.8mm
\textposstrutlength=\dimexpr\textposstrutheight+\textposstrutdepth
\newcommand{\textposstrut}{{\color{blue}\vrule height\textposstrutheight width\textposstrutwidth depth\textposstrutdepth}}
\newcommand{\placeflushright}[4]{%
\begin{textblock}{#1}[1,0.5](#2,#3)\flushright{\textposstrut}#4\end{textblock}%
}
ahora, cuando lo hagas
\begin{textblock}{150}[1,0.5](500,000)\flushright\textposstrut helo\end{textblock}
\begin{textblock}{150}[1,0.5](500,200)\flushright\textposstrut world\end{textblock}
\begin{textblock}{150}[1,0.5](500,400)\flushright\textposstrut gX\end{textblock}
\begin{textblock}{150}[1,0.5](700,400)\flushright\textposstrut .\end{textblock}
\placeflushright{150}{300}{400}{gX}
(dentro de la misma configuración del documento como se muestra en la pregunta anterior) obtienes
donde el gX
en la parte inferior izquierda demuestra que el texto se ha colocado correctamente (la línea de base del borde derecho del documento X
se ( 30mm, 40mm )
mide desde el borde del documento).
tenga en cuenta que el puntal tal como se define aquí tiene un ancho visible a modo de demostración; Además, su altura y profundidad se han adaptado cuidadosamente para que coincidan con las dimensiones de fuente específicas utilizadas aquí; cuando cambia a otra fuente, es probable que ambas \textposstrutheight
y - depth
tengan que redefinirse.