2010-10-25 15 views
11

A menudo me gustaría contar algunos comentarios dentro del texto, que no están tan estrechamente relacionados con el tema discutido. Usualmente para este propósito utilizo el entorno quotation, debido a su gran sangría a la izquierda. El comentario puede ser grande, puede incluir fórmulas, listas de códigos, citas anidadas, etc.Línea vertical con cada cita

¿Cómo puedo hacer que el entorno quotation dibuje una línea vertical larga a la izquierda de todo su contenido? A menudo puede encontrarse con este estilo en la Web, con las cotizaciones reales.

Google ha encontrado una solución:

\begin{flushleft} 
\hbox{% 
\vrule\hspace{.5em}\parbox{.9\textwidth}% 
{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi id hendrerit 
nunc. Sed scelerisque lacus vitae erat eleifend eleifend. Donec eros mi, placerat 
in porta eleifend, placerat a urna. Pellentesque venenatis neque non turpis 
convallis vehicula. Aliquam aliquet ultricies tincidunt.}} 
\end{flushleft} 

Pero no puede hacer frente a los listados de código, etc. dentro del texto.

Gracias por su consejo. Lo siento si mi inglés no era lo suficientemente comprensible.

Respuesta

16

¿Ha intentado utilizar un entorno tabular?

Aquí hay un código que crea una línea vertical para el texto que ha dado anteriormente,

\begin{tabular}{|p{10cm}} 
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi id hendrerit 
nunc. Sed scelerisque lacus vitae erat eleifend eleifend. Donec eros mi, placerat 
in porta eleifend, placerat a urna. Pellentesque venenatis neque non turpis 
convallis vehicula. Aliquam aliquet ultricies tincidunt.\\ 
\end{tabular} 

Es necesario el p {10cm} para definir el ancho de la columna para el texto se ajuste, de lo contrario, sale de la página. Puede cambiar el valor según sus márgenes y formato de papel.

aquí está el resultado,

Vertical Line Quote

Y por lo que yo sé, entorno tabular Acepta el conjunto de los listados de código.

+1

Este rocas! Para obtener un poco más de espacio, utilicé una alineación de '{l | p {0.9 \ textwidth}' y luego introduje la cita con '\ quad &' – Hendy

+0

¡Gran solución! Para las comillas con múltiples párrafos, el entorno 'tabular' establece' paraskip' en 0. Para anular esto, use '\ setlength {\ parskip} {4mm}'. –

+0

Esto es semánticamente malo. Las citas deben ser citas y no tablas. – Zelphir

12

se recomienda usar framedbox/leftbar:

\usepackage{framed} 
\newenvironment{quotationb}% 
{\begin{leftbar}\begin{quotation}}% 
{\end{quotation}\end{leftbar}} 

continuación, puede utilizar \begin{quotationb}......\end{quotationb}

+1

No me gusta la barra muy gruesa (por defecto es 3 pt) de la barra izquierda, entonces usando el archivo original (http://ctan.org/pkg/framed) agregué esto: '\ renewenvironment {leftbar} {\ def \ FrameCommand {\ vrule width 0.5pt \ hspace {10pt}} \ MakeFramed {\ advance \ hsize- \ width \ FrameRestore}} {\ endMakeFramed} 'para crear una barra izquierda de 0.5pt. –

+0

Actualiza usando configuraciones opcionales para ancho de línea e indentación: '\ usepackage {xargs} \ usepackage {frame} \ renewenvironmentx {leftbar} [2] [1 = 0.5pt, 2 = 5pt]% {\ def \ FrameCommand { \ vrule width # 1 \ hspace {# 2}} \ MakeFramed {\ advance \ hsize- \ width \ FrameRestore}}% {\ endMakeFramed} ' –

+0

@DaanWilmer Esto parece ahora enmarcar todo, en lugar de simplemente estar en el izquierda... – Joel