2009-08-25 12 views
14

¿cuál es la mejor manera de presentar nombres de clase en documentos LaTeX (escribir sobre un software)?¿Cómo se representan los nombres de clase en LaTeX?

Actualmente estoy usando \texttt (fuente typewrite monospaced) que de lo contrario funciona bien pero mis nombres de clase terminan goind "sobre" los márgenes.

Por lo tanto, lo que estoy pidiendo, ya sea

  • una alternativa (guapo) forma de representar los nombres de las clases
  • manera de asegurarse de que mis nombres de las clases no van a lo largo de los márgenes

ancho, Touko

+0

Si alguien está tratando de escribir el nombre de una clase LaTeX, es costumbre usar '\ textsf {classname}'. –

Respuesta

17

\texttt es una buena opción.

Si los nombres de su clase terminan "yendo por encima de los márgenes", es porque LaTeX no pliega el texto \texttt de forma predeterminada. (Probablemente recibas advertencias sobre "hboxes saturados" debido a esto.)

Existen dos soluciones posibles: reescribir el texto para que los nombres de clase no aparezcan al final de las líneas, o decirle a LaTeX para dividir los nombres de sus clases (si eso es aceptable para usted). Para este último, consulte hyphenat package. Trate de usar de esta manera:

\usepackage[htt]{hyphenat} 

También es probable que tenga que decirle a LaTeX en que dividir sus nombres de las clases, así:

This\-Is\-My\-Long\-Class\-Name 

(para la clase ThisIsMyLongClassName).

+2

Gracias. Para conseguir que los nombres de clase "sobre-márgenes" vayan a la siguiente línea con hyphenat, \ sloppy parece funcionar bien. Cuando se encuentra esta separación silábica, se encontró más información en http://www.tex.ac.uk/cgi-bin/texfaq2html?label=hyphoff – Touko

10

quizás mejor sería definir su propio macro:

\newcommand{\classname}[1]{\texttt{#1}} 

que luego se utiliza como esto:

\classname{MyClass} 

Hacer esto significa que sus nombres de clase etiquetados como tales, no como máquina de escribir texto de estilo.

+0

En realidad, ya lo estoy haciendo, pero sí, aún así, gracias. – Touko

4

Puede usar el paquete url, que a pesar de su nombre se puede utilizar para componer cualquier tipo de texto en una fuente de máquina de escribir, lo que permite saltos de línea.

+0

Gran solución :) –

+0

bueno, \ url {} tiene mucha lógica incorporada dedicada a la composición tipográfica ... ¡urls! tratar de abusar solo de componer cosas al azar en una fuente de máquina de escribir puede parecer atractivo primero, pero muy bien podría morderte más tarde – Gyom

+0

@Gyom Dije "el paquete url", no "el comando \ url". La documentación del paquete dice "[it] está destinado a direcciones de correo electrónico, enlaces de hipertexto, directorios/rutas, etc., que normalmente no tienen espacios. [...] [N] Se pueden definir algunos comandos tipo url usando \ cs { urldef}." –

Cuestiones relacionadas