USO DEL PROGRAMA LATEX

Page 1

LATEX

Para Linux Debian ´ Con ejemplos practicos.

Por Paco Aldarias Raya Impreso: 18 de mayo de 2006


LATEX Email: pacolinux arroba inicia punto es Web: http://www.iespana.es/pacolatex Ëœ Con Linux Debian. En Valencia (Espana) ´ siempre que se cite su fuente. Este documento es de libre reproduccion A Realizado con: LTEX

Por Paco Aldarias

1/77


LATEX

´Indice general

´Indice general

2

´Indice de cuadros

3

´Indice de figuras

4

´ 1. Prologo

6

´ Que es LATEX, 6 • Beneficios de usar LaTeX, 6 • Me conviene usar LaTeX, 6 • Instalacion, 7 • Ayuda de latex, 7 • Pasar la ortograf´ıa a ficheros latex, 7 • Editores de latex, 8.

1.7.1. Para linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.7.2. Para windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8 8

´ del documento, 8 • Dejarlo bonito: tex-pretty, 9 • El comando latex, 9. Transformacion

2. Tipos de documentos

10

´ 10 • Documento art´ıculo, 10 • Documento libro, 10 • Documento libro con Introduccion, varios archivos, 11 • Otras documentclass, 12 • Agregar en el directorio ra´ız todos los ficheros de los que depende un documento: listfiles, 12 • Separar el prologo: frontmatter, ´ 12 • Crear constantes: macros, 13 • Crear una pagina en blanco, 13.

3. Partes de un documento: Cap´ıtulos, Secciones

14

´ 14 • Niveles, 14 • Numeracion, ´ 14. Introduccion,

´ . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.3.1. Quitarla numeracion 4. Listas

16

´ 16 • Lista de items, 16 • Lista de ordenada, 16 • Listas anidadas numeradas, Introduccion, 16 • Lista de descripciones, 17 • Lista personalizadas, 17 • Lista personalizadas con dedo, 18 • Lista con letras, 18 • Lista con paralist, 18.

5. Elementos flotantes

20

Tablas, 20.

5.1.1. 5.1.2. 5.1.3. 5.1.4.

Tabla sin lineas . . . . . . . . Tabla simple . . . . . . . . . Tabla de longuitud controlada Tabla especial . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

20 20 21 21

Convertir una imagen jpg a eps: convert . . Ejemplo de imagen jpg . . . . . . . . . . . ´ Poner varias imagenes juntas con figure . . ´ Poner varias imagenes juntas con minipage Poner una imagen y a la derecha un texto . ´ Poner varias imagenes juntas con picture .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

22 22 23 23 24 24

´ Imagenes, 22.

5.2.1. 5.2.2. 5.2.3. 5.2.4. 5.2.5. 5.2.6.

Por Paco Aldarias

2/77


LATEX Referencias a elementos flotantes, 24 • Cambiar las fuentes del caption, 25 • Como hacer un logo, 25 • Utilidades, 25 • Poner una imagen de fondo, 25.

5.7.1. Poner una imagen de fondo con fancybox . . . . . . . . . . . . . . . 25 5.7.2. Poner una imagen de fondo con eso-pic . . . . . . . . . . . . . . . . 26 ´ ´ graficos, ´ Imagenes que no flotan, 26 • Generar 28 • Hacer una linea que ocupe toda la anchura, 29.

6. Referencias cruzadas: enlaces

30

Enlaces a internet, 30 • Enlaces a internet que no se corte, 30 • Enlaces a partes del documento: referencias cruzadas, 30 • Ejercicio, 31.

´ 7. Documentos a medida: recetas, examenes

32

´ 32 • Hacer tarjetas de visita, 32 • Escribir en griego:teubner, 32 • Latex para Introduccion, documentar codigo fuente, 33 • Recetas de cocina:recipe, 34 • Examenes: examdesign, 34 • Horarios: shedule, 34 • El indic, 34 • Superponer texto encima de imagenes: overpic, 35.

8. Entornos

36

Entorno verbatim, 36 • Entorno Fancy verbatim, 36 • Entorno Listings, 37 • Los comenta´ rios, 37 • Entorno minipage, 37 • Minipage y graficos, 38 • Notas al pie, 38.

8.7.1. Poner las notas entre parentesis . . . . . . . . . . . . . . . . . . . . 38 ´ ´ ´ Crear un ´ındice alfabetico, 38 • Numero total de paginas: lastpage, 39 • Indice general mas ´ completo: tocbibinf, 39 • LLaves, 40 • Crear marcos multipagina: framed, 40.

9. S´ımbolos

41

El simbolo del euro, 41.

´ 10. Funciones matematicas

42

´ Entorno matematico, 42 • Ecuaciones Simples Numeradas, 42 • Ecuaciones Simples sin numerar, 42 • Ecuaciones Simples Alineadas, 43.

´ ´ 11. Graficos de funciones matematicas: gnuplot

44

´ 12. Cabeceras y pies de pagina

45

´ ´ ˜ Personalizar las cabeceras y pies de pagina, 45 • Eliminar los pies de pagina, 46 • Tamano ´ de la pagina: geometry, 46 • Personalizar los cap´ıtulos, 46.

13. Notas al pie al final del documento: endnotes

47

´ 47 • Ejemplo de notas finales: endnotes, 47. Introduccion,

14. Tipos de textos y parrafos

48

´ Crear un parrafo sin sangrado: noindent, 48 • Alineacion del parrafo, 48 • Fuentes del texto, 49 • Enfatizar texto, 50 • Tipos de letra helvetica, 50 • Acortar la anchura del parrafo, 50 • Formatos personalizados, 50 • Poner todo el texto en helvetica, 50.

15. Formatos

51

Conversores de formato, 51.

´ de tex . 15.1.1. Herramientas de conversion ´ de html 15.1.2. Herramientas de conversion ´ de pdf . 15.1.3. Herramientas de conversion ´ de ps . 15.1.4. Herramientas de conversion ´ de dvi . 15.1.5. Herramientas de conversion ´ de sgml 15.1.6. Herramientas de conversion

Por Paco Aldarias

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

51 52 52 52 52 53

3/77


LATEX Pasar de png a eps, 53 • Poner dos caras de hoja en una sola, 53 • Visores, 54 • Hacer documentos grandes, 54.

16. Glosarios

55

´ 55 • Uso, 55 • Generar el glosario, 55. Introduccion,

17. Base de datos bibliograficas

56

Bibliografias en el mismo fichero, 56 • Fichero externo de bibliografias, 56.

17.2.1. fichero latex.bib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 17.2.2. Al final del documento hay q poner . . . . . . . . . . . . . . . . . . . 56 17.2.3. Se compilar con . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Herramientas, 57.

17.3.1. Gbib . . . . . . . . . . . . 17.3.2. Pybliographic . . . . . . . 17.3.3. Bibview . . . . . . . . . . 17.3.4. cb2Bib . . . . . . . . . . . 17.3.5. Tellico . . . . . . . . . . . 17.3.6. Script para Bibliographer

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

57 57 57 57 57 58

Poner una y en los autores, 58 • Poner varios autores en el fichero .bib, 58.

17.5.1. Bibtex y mysql . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Unir ficheros bib: bibtopic, 58.

18. Bibliografia

60

˜ ´ 60 • Bibliograf´ıa en Internet en Paquetes, 60 • Libros en Espanol., 60 • Libros en Ingles., ˜ 60 • Bibliograf´ıa en Internet en Ingles, ´ 61. Espanol,

A. Plantilla Latex

62

´ 62 • fichero datos.tex, 62 • platilla.tex, 62 • plantilla.sh, 64. Introduccion,

´ de ficheros B. Script de Generacion

65

´ 65 • genera.sh, 65 • pdf2.sh, 67. Introduccion,

´ C. Script para imagenes

68

´ 68 • ejemplo.tex, 68 • Imagenes jpg, 69. Introduccion,

C.3.1. jpgbb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 C.3.2. jpgtops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Imagenes png, 69.

C.4.1. pngbb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 C.4.2. pngtops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 ´ Imagenes gif, 70.

C.5.1. gifbb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 D. Latex con make

71

´ 71 • Varios comandos en una regla del fichero Makefile, 71 • Como make Introduccion, procesa makefile, 72 • Comandos del make, 72 • Ejemplos en latex, 72.

´ D.5.1. Ejemplo con genericos y varios pasadas en latex . . . . . . . . . . . 72 ´ D.5.2. Ejemplo con genericos . . . . . . . . . . . . . . . . . . . . . . . . . 72 Ejemplos en c, 73.

D.6.1. Ejemplo simple en c . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 D.6.2. Ejemplo de programa en c . . . . . . . . . . . . . . . . . . . . . . . 74 D.6.3. Ejemplo de programa en c con variables . . . . . . . . . . . . . . . 74 Make para latex con plantilla, 74.

D.7.1. makefile.sh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Por Paco Aldarias

4/77


LATEX D.7.2. makefileplantilla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 ´ 76 • Bibliografia, 76. Mas informacion,

Bibliograf´ıa

Por Paco Aldarias

77

5/77


LATEX

´Indice de cuadros

5.1. Ejemplo de tabla sin lineas . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.2. Ejemplo de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.3. Ejemplo de tabla controlada . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Por Paco Aldarias

6/77


LATEX

´Indice de figuras

5.1. Ejemplo de imagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5.2. Titulo del ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Por Paco Aldarias

7/77


LATEX

Glosario

´ Palabra1 Descripcion1, pagina 40. ´ Palabra2 Descripcion2, pagina 40. ´ Palabra3 Descripcion3, pagina 40.

Por Paco Aldarias

8/77


LATEX

CAPITULO 1

´ Prologo

1.1. Que es LATEX LATEX es una forma de preparar documentos mediante una lenguaje de marcas. Es una forma estructurada y organizada de construir documentos. Separa el texto del estilo. Genera documentos de gran calidad. ˜ LATEX (pron. lei-tej) es un programa disenado para componer documentos, es´ caracteres de impresion, ´ formando las to es: para poner juntas las letras y los demas ´ l´ıneas y las paginas de un texto. Es particularmente util ´ cuando el texto incluye s´ımbolos ´ ´ matematicos. Se ha convertido en un formato estandar con el cual se pueden presentar ´ art´ıculos a muchas revistas y publicaciones tecnicas. En rigor, LaTeX es simplemente ´ comoda ´ una interfaz mas al programa TeX de Donald Kunth.

1.2. Beneficios de usar LaTeX 1. Enfatiza el darle estructura a un documento 2. Facilita que el autor se concentre en el mensaje del documento en lugar de preocuparse de su apariencia. ´ 3. Permite escribir simbolog´ıa matematica arbitrariamente complicada ´ ´ de las partes del 4. Produce automaticamente tablas de contenido y la numeracion documento, de la bibliograf´ıa, las notas al pie, las ecuaciones, las tablas y las figuras. 5. Muchas revistas cient´ıficas aceptan art´ıculos en LaTeX

1.3. Me conviene usar LaTeX 1. Cuando es preferible que la computadora haga el trabajo de componer el texto para que uno pueda concentrarse en lo que escribe (p. ej. al redactar un art´ıculo o una tesis). ´ 2. Cuando hay que incluir s´ımbolos matematicos. 3. Cuando no se quiera gastar dinero para comprarse un procesador de palabras comercial.

Por Paco Aldarias

9/77


LATEX

´ 1.4. Instalacion Desde consola, como usuario root: apt-get install tetex-base tetex-extra tetex-bin latex2html ktexmaker2 ispell ispanish xpdf kate kghostview a2ps psutils gv libjpeg-progs tth linuxdoc-tools-latex acroread htmldoc texdoctk Siendo: Programas para latex. tetex-base tetex-extra tetex-bin. ´ Utilidades para generar paginas web: latex2html Instalaremos el editor de latex: ktexmaker2 kate ´ El corrector ortografico: ispell ispanish El visor pdf adobe acrobat reader: acroread El visor ps: kghostview ´ La ayuda grafica: texdoctk Utilidades de conversion: a2ps Utilidades de ficheros ps: psutils El visor ps: gv La utilidad: htmldoc Utildad para transformar jpg: libjpeg-progs Utilidades de sgml y latex: linuxdoc-tools-latex Utilidad para pasar de latex a html: tth

1.5. Ayuda de latex Escribir desde consola escribir: Para ver el ayuda del paquete hyperef: texdoc hyperref ´ o tambien: texdoctk Plusar especial elements - Hiperlink in latex.

1.6. Pasar la ortograf´ıa a ficheros latex Desde consola poner: ispell -d castellano -T latin1 fichero.tex Siendo: -d El diccionario -T Tipo de formato. Por Paco Aldarias

10/77


LATEX

1.7. Editores de latex ´ Para hacer un docuamento de LATEX se puede hacer facilmente con cualquir editor. Despues se llama a latex fichero.tex y genera un fichero dvi.

1.7.1. Para linux ktexmaker2 Editor con resaltado y botones con ordenes. Kate . Editor con resaltado y linea de comandos. Entorno integrado q contiene editor, compilador, resaltado de comandos, conversores a pdf, html, ps. LyX . Procesador de textos wysiwing. Emacs Entorno integrado q contiene editor, compilador, resaltado de comandos, Aqui hay q ver el resultado con visores externos. Vim Editor con resaltado de comandos. Quanta Editor con resaltado de comandos. Vi Editor solo. nano Editor solo. kedit Editor solo.

1.7.2. Para windows ˜ TeXnicCenter es un editor de texto tipo Winedt, expresamente disenado para ser usado con LaTeX, por lo que tiene facilidades, tipo botones y menus ´ para insertar s´ımbolos, entornos, etc. Winedt ´ TeX/LaTeX. MikTeX Es una distribucion http://www.miktex.org

´ del documento 1.8. Transformacion Crear el documentos .tex en formato texto. Para ello usaremos cualquier editor o ktexmaker. Pasamos el corrector latex: latex archivo.tex Esto nos genera un fichero .dvi el cual se puede usar para ver el resultado o imprimirlo. Pasamos el fichero a formato pdf: pdflatex archivo.tex

Por Paco Aldarias

11/77


LATEX Pasamos el fichero a formato html: latex2html archivo -no subdir -split 0 -local icons 1 -show section numbers -no auto link -no navigation -no images Siendo: archivo: el fichero.tex -no subdir: No crea una carpeta para meter el html, -split 0 : divide el docuemento html en 0 documentos. -local icons 1: Pone los iconos como locales, a las secciones. -show section numbers: Pone numeros ´ -no auto link : No crea un fichero index.html

1.9. Dejarlo bonito: tex-pretty Si quieremos dejar bonito el codigo latex, podemos usar tex-pretty Descargar el programa de: http://www.math.utah.edu/pub/texpretty/ Ejemplo: tex-pretty fichero.tex > fichero-bonito.tex

1.10. El comando latex La orden latex comprueba los errores y genera un fichero dvi. Al poner en consola: latex fichero.tex, puede que se pare pq aparece un error. En dicho texto nos indica donde esta el error, con su numero de linea. ´ Para abortar pulsamos x (exit), si le damos a intro, sigue comprobando errores.

Por Paco Aldarias

12/77


LATEX

CAPITULO 2

Tipos de documentos

´ 2.1. Introduccion ´ Basimente hay 2 tipos de documentos: article(art´ıculos) y libro(book). Indicamos el la clase de documento con: \documentclass

2.2. Documento art´ıculo Debemos tener en cuenta, que un documento article, no tiene chapter. \documentclass[12pt,a4paper]{article} \usepackage[spanish, activeacute]{babel} %Espa~ nolizacion \usepackage[latin1]{inputenc} %Letras con acentos, e~ nes \title{Titulo} \author{Autor} \date{Impreso: \today} \begin{document} \maketitle \tableofcontents \section{Secci´ on A} Parrafo \subsection{Secci´ on A1} Parrafo \section{Secci´ on B} Parrafo \end{document}

2.3. Documento libro \documentclass[12pt,a4paper]{book} \usepackage[spanish, activeacute]{babel} %Espa~ nolizacion Por Paco Aldarias

13/77


LATEX \usepackage[latin1]{inputenc} %Letras con acentos, e~ nes \title{Titulo} \author{Autor} \date{Impreso: \today} \begin{document} \maketitle \tableofcontents \section{Secci´ on A} Parrafo \subsection{Secci´ on A1} Parrafo \section{Secci´ on B} Parrafo \end{document}

2.4. Documento libro con varios archivos Tendremos un archivo principal llamado bookvarios.tex, y los cap´ıtulos separados en los archivos cap1.tex, y cap2.tex. ´ teLos chapter los definimos en el documento principal (bookvarios.tex). Solo nemos que generar el documentos principal, no los cap´ıtulos. Documento principal. fichero bookvarios.tex \documentclass[12pt,a4paper]{book} \usepackage[spanish, activeacute]{babel} %Espa~ nolizacion \usepackage[latin1]{inputenc} %Letras con acentos, e~ nes \title{Titulo} \author{Autor} \date{Impreso: \today} \begin{document} \maketitle \tableofcontents \chapter{Titulo del capitulo1} \input{cap1} \chapter{Titulo del capitulo2} \input{cap2} \end{document}

Por Paco Aldarias

14/77


LATEX Capitulo 1: fichero cap1.tex \section{Secci´ on A del cap1} Parrafo \subsection{Secci´ on A1} Parrafo \section{Secci´ on B del cap1} Parrafo Cap´ıtulo 2: fichero cap2.tex \section{Secci´ on A del cap2} Parrafo \subsection{Secci´ on A1} Parrafo \section{Secci´ on B del cap2} Parrafo

2.5. Otras documentclass \documentclass[11pt,a4paper,twoside,openright,titlepage]{report} \documentclass[11pt,a4paper,oneside]{book}

2.6. Agregar en el directorio ra´ız todos los ficheros de los que depende un documento: listfiles ´ mediante la cual agrega en el directorio ra´ız todos los Tenemos una opcion ficheros de los que depende un documento, de forma tal que se pueda enviar a otra ´ en si mismo sea autoconsistente y no haya que instalar ningun persona y la informacion ´ paquete nuevo ya que todo esta´ en el directorio del documento. \listfiles \documentclass{article}

2.7. Separar el prologo: frontmatter ´ La clase libro nos permite ademas: \begin{document} \frontmatter % las p´ aginas ser´ an numeradas en n´ umeros romanos % los cap´ ıtulos definidos no sacar´ an ep´ ıgrafe "Cap´ ıtulo n´ umero" % otras partes del documento se tratar´ an igual (mejor ponerles en asterisco) \mainmatter % aqu´ ı se incluir´ an los cap´ ıtulos que constituyen el libro % se renumera desde 1 Por Paco Aldarias

15/77


LATEX \backmatter % los ap´ endices \end{document}

2.8. Crear constantes: macros Utilizaremos la orden newcommand ... \title{\titulo} \begin{document} \newcommand{\titulo}{Teoria de Redes. Anexo IV: Encaminamiento} ...

´ 2.9. Crear una pagina en blanco \clearpage\hbox{}\thispagestyle{empty}\newpage

Por Paco Aldarias

16/77


LATEX

CAPITULO 3

Partes de un documento: Cap´ıtulos, Secciones

´ 3.1. Introduccion Segun ´ el tipo de documento tiene varios niveles o apartados.

3.2. Niveles 1. part 2. chapter 3. section 4. subsection 5. paragraph 6. subparagraph La clase book es la unica que puede llevar part y chapter. ´

´ 3.3. Numeracion ´ con: Podemos cambiar el nivel de numeracion \setcounter{secnumdepth}{3} Siendo el valor de secnumdepth corresponde al ultimo nivel que se numera. ´ Los niveles section subsection subsubsection paragraph subparagraph

1 2 3 4 5

En book y report part chapter

Por Paco Aldarias

-1 0

17/77


LATEX En article part

0

´ 3.3.1. Quitarla numeracion ´ Poniendo un * eliminamos la numeracion. ´ no numerada: Ejemplo se seccion \section*{Numeraci´ on}

Por Paco Aldarias

18/77


LATEX

CAPITULO 4

Listas

´ 4.1. Introduccion Las listas permiten organizar el texto en apartados.

4.2. Lista de items Item 1 Item 2 Item 3 En latex ser´ıa: \begin{itemize} \item Item 1 \item Item 2 \item Item 3 \end{itemize}

4.3. Lista de ordenada 1. Item 1 2. Item 2 3. Item 3 En latex ser´ıa: \begin{enumerate} \item Item 1 \item Item 2 \item Item 3 \end{enumerate}

4.4. Listas anidadas numeradas ´ se aprecia en ficheros pdf. Nota: Esto solo 1. Aqui tenemos otra lista: Por Paco Aldarias

19/77


LATEX a) Item 1 b) Item 2 c) Item 3 2. Item 2 3. Item 3 Podemos cambiar la lista para q el segundo nivel salga asi: 1. Aqui tenemos otra lista: 1. Item 1 2. Item 2 3. Item 3 2. Item 2 3. Item 3 Para ello deberemos poner: \renewcommand{\theenumii}{\arabic{enumii}} \renewcommand{\labelenumii}{\theenumii.}

4.5. Lista de descripciones Descripcion1 Texto 1. Descripcion1 Texto 1. Descripcion1 Texto 1. En latex ser織覺a: \begin{description} \item [Descripcion1] \item [Descripcion1] \item [Descripcion1] \end{description}

Texto 1. Texto 1. Texto 1.

4.6. Lista personalizadas . Item 1 . Item 2 . Item 3 En latex ser織覺a: {\renewcommand{\labelitemi}{$\triangleright$} \begin{itemize} \item Item 1 \item Item 2 \item Item 3 \end{itemize} Por Paco Aldarias

20/77


LATEX

4.7. Lista personalizadas con dedo Debemos usar el paquete pifont. ☞ Item 1 ☞ Item 2 ☞ Item 3 En latex ser´ıa: \usepackage{pifont} %Listas con dedo .. \begin{document} ... {\renewcommand{\labelitemi}{\ding{43}} \begin{itemize} \item Item 1 \item Item 2 \item Item 3 \end{itemize}

4.8. Lista con letras a. Item 1 b. Item 2 c. Item 3 En latex ser´ıa: ... \usepackage{enumerate} ... \begin{enumerate}[a.] \item Item 1 \item Item 2 \item Item 3 \end{enumerate}

4.9. Lista con paralist Debemos usar el paquete paralist ? Item 1.1 ☞ Item 2.1 • Item 2.1.1 • Item 2.1.2 Por Paco Aldarias

21/77


LATEX ☞ Item 2.2 ? Item 1.2 En latex ser´ıa: \usepackage{paralist} \begin{document} ... \begin{enumerate}[$\star$] \item Item 1.1 \begin{itemize} \item Item 2.1 \begin{itemize} \item Item 2.1.1 \item Item 2.1.2 \end{itemize} \item Item 2.2 \end{itemize} \item Item 1.2 \end{enumerate} ´ permite hacerlo de forma permanente para todo el documento, para los cuatro Tambien primeros niveles ponendo esto \setdefaultitem{\textbullet}{$\star$}{$\circ$}{\textperiodcentered} ? Item 1.1 • Item 2.1 ? Item 2.1.1 ? Item 2.1.2 • Item 2.2 ? Item 1.2

Por Paco Aldarias

22/77


LATEX

CAPITULO 5

Elementos flotantes

5.1. Tablas 5.1.1. Tabla sin lineas En latex ser´ıa: \begin{table} \begin{center} \begin{tabular}{lr} A & B \\ 11 & 12 \\ 21 & 22 \\ \end{tabular} \end{center} \caption{Ejemplo de tabla sin lineas} \label{tablasinlineasin} \end{table}

5.1.2. Tabla simple Tabla sin l´ıneas. En latex ser´ıa: \begin{table}[hptbH] \begin{center} \begin{tabular}{|l ||r ||c |} \hline \hline 11 & 12 & 13 \\ \hline \hline 21 & 22 & 23 \\ \hline 31 & 32 & 33 \\ \hline \end{tabular} \end{center} \caption{Ejemplo de tabla}

A 11 21

B 12 22

Cuadro 5.1: Ejemplo de tabla sin lineas

Por Paco Aldarias

23/77


LATEX 11 21 31

12 22 32

13 23 33

Cuadro 5.2: Ejemplo de tabla

\end{table}

5.1.3. Tabla de longuitud controlada ´ Cuando tenemos tablas cuya longuitud se sale de la anchura de la pagina, debemos usar la orden p que indica la longuitud de la tabla. Un ejemplo ser´ıa la tabla 5.3. texto texto texto texto texto texto texto texto texto texto texto texto

texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto texto

Cuadro 5.3: Ejemplo de tabla controlada

En latex ser´ıa: \begin{table}[hptbH] \begin{center} \begin{tabular}{lp{.5\linewidth}} \hline texto texto texto texto texto texto & texto texto texto texto texto texto texto texto texto texto texto texto \\ texto texto texto texto texto texto & texto texto texto texto texto texto texto texto texto texto texto texto \\ \hline \end{tabular} \end{center} \caption{Ejemplo de tabla controlada} \label{tablac1} \end{table} ´ La expresion: p{.5\linewidth} indica la lonquitud de la linea menos 0.5

5.1.4. Tabla especial 0

16 31 A B C D En latex ser´ıa: Por Paco Aldarias

24/77


LATEX \begin{tabular}{|c|c|} \multicolumn{1}{l}{\hspace{-0.9em}0} & \multicolumn{1}{r}{\hspace{-0.9em}16 \hfill 31} \hline A & B \\ \hline C & D \\ \hline \end{tabular}

\\

´ 5.2. Imagenes ´ ´ puede En LATEX las imagenes son elementos flotantes. Los documentos dvi solo ´ visualizar imagnes eps. Sin embargo, los pdf y html si admiten imagenes de los tipos, .bmp, jpg, gif, png, pdf. LaTeX, por s´ı solo, no soporta *.jpg, es posible que este´ ocurriendo alguna con´ jpg a eps. version Hay dos opciones: 1. Convierte por tu cuenta el jpg (o de donde proceda) a eps (con ImageMagick o algun de que la calidad del eps es la que te interesa. ´ otro programa) y asegurate ´ Luego ya lo puedes insertar con includegraphics ´ directamente un pdf, no un dvi, y 2. Utiliza pdflatex en lugar de latex. Obtendras ´ soporta jpg y png (pero no eps, estos ´ ademas los tendras que convertir a pdf). ´ Personalmente, yo prefiero esta opcion.

5.2.1. Convertir una imagen jpg a eps: convert Desde consola como root: apt-get install imagemagick Desde consola en la carpeta donde esta la imagen: convert imagen.jpg imagen.eps

5.2.2. Ejemplo de imagen jpg Deberemos generar el documento con pdflatex para obtener un fichero pdf. En latex ser´ıa: ... \usepackage{graphicx} ... \begin{document} ... \begin{figure}[hbt] \begin{center} \includegraphics[width=0.90\textwidth]{iconos-tux} \end{center} \caption{Ejemplo de imagen} \label{imagen} \end{figure} Por Paco Aldarias

25/77


LATEX

Figura 5.1: Ejemplo de imagen

Nota: El 0.9 indica que coga el 90 % de la anchura de la l´ınea la imagen. Podemos poner las imagenes en una carpeta as´ı: \graphicspath{{/home/angel/archivosps/}}

´ 5.2.3. Poner varias imagenes juntas con figure ´ que usar subfigure, sino Si necesitas que cada figura tenga su c¸aption”tendras puede que con poner las dos figuras dentro de un entorno figure pueda ser suficiente: \begin{figure}[p] \includegraphics{figura1.png} \hbox{\separacion}} \includegraphics{figura2.png} \caption{etiqueta com´ un} \end{figure}

´ 5.2.4. Poner varias imagenes juntas con minipage

\begin{figure} \begin{minipage}[t]{.45\textwidth} %0.45 por el ancho del texto %aqu´ ı metes tu figura \end{minipage} \hfill %la siguiente figura estar´ a separada en horizontal 0.1 por el ancho del texto (porq \begin{minipage}[t]{.45\textwidth} %0.45 por el ancho del texto, como la anterior %aqu´ ı metes tu segunda figura \end{minipage} \end{figure} Por Paco Aldarias

26/77


LATEX

Texto

Figura 5.2: Titulo del ejemplo

5.2.5. Poner una imagen y a la derecha un texto \begin{figure} \begin{minipage}[c]{0.5\columnwidth}% \centering /* el includegraphics */ \end{minipage}% \hfill{} \begin{minipage}[c]{0.5\columnwidth}% /* la descripcion */ \end{minipage}% \caption{Titulo del ejemplo} \end{figure}

´ 5.2.6. Poner varias imagenes juntas con picture Existe otro procedimiento, que permite colocar las figuras como a uno le de´ la gana: con un entorno picture. Por ejemplo \setlength{\unitlengtth}{1cm}\begin{picture}(12,6) \put(0,0){\includegraphics[width=6cm]{figura1.ps}} \put(6,0){\includegraphics[width=6cm]{figura2.ps}} \end{picture} Incluso as´ı puedes evitar el problema de la l´ınea en blanco, y puedes hacer que una figura se superponga sobre otra (como si fueran fotos en una mesa).

5.3. Referencias a elementos flotantes ´ Para refrencias tablas, graficos, debemos usar lo que contiene label. Vease la tabla 5.1 , que esta en la pagina 20, y tambien la figura 5.1 , que esta en la pagina 23. En latex ser´ıa: Vease la tabla \ref{tabla} , que esta en la pagina \pageref{tabla}, y tambien la figura \ref{imagen} , que esta en la pagina \pageref{imagen}. Por Paco Aldarias

27/77


LATEX

5.4. Cambiar las fuentes del caption ´ Colocando lo siguiente en el preambulo de tu documento: \usepackage[sf,sl]{caption2} \renewcommand{\captionfont}{\small} ˜ small. Con eso se te cambia el tipo a sans serif slanted de tamano

5.5. Como hacer un logo Veamos un ejemplo: \documentclass{article} \usepackage{graphicx} \newsavebox{\logo} \sbox{\logo}{\includegraphics{logo}} \pagestyle{headings} \makeatletter \def\@oddhead{% \usebox{\logo}\hfill% Nombre de la empresa% \hfill Telefono% } \makeatother \begin{document}

5.6. Utilidades 1. Pasar las tablas excel a latex http://www.jam-software.com/freeware/ 2. Hacer tablas en entorno amigable: btw,LaTable http://www.g32.org/latable/

5.7. Poner una imagen de fondo 5.7.1. Poner una imagen de fondo con fancybox Debemos poner antes del begin document: \usepackage{fancybox} ´ del begin document: Debemos poner despues \thisfancyput(2cm,-19cm){\includegraphics[width=15cm]{imagen.jpg}} Por Paco Aldarias

28/77


LATEX

5.7.2. Poner una imagen de fondo con eso-pic Debemos poner antes del begin document: \usepackage{eso-pic} \newcommand\BackgroundPicture{% \put(0,0){% \parbox[b][\paperheight]{\paperwidth}{% \vfill \centering \includegraphics[width=\paperwidth,height=\paperheight,% keepaspectratio]{imagen.jpg}% \vfill }}} % The picture is centered on the page background \AddToShipoutPicture{\BackgroundPicture}

´ 5.8. Imagenes que no flotan ´ Esta es una pregunta bastante frecuente entre los novatos. ¿Como puedo hacer que una figura salga en el texto exactamente en el lugar que yo quiero, y no en el ´ obvia consiste en no poner la figura dentro de un que quiera LaTeX? La respuesta mas entorno figure, ya que es este entorno quien le dice a LaTeX que tiene permiso para ponerla donde prefiera. S´ı, Quiero mi figura AQUI ´ Esta es una pregunta bastante frecuente entre los novatos. ¿Como puedo hacer que una figura salga en el texto exactamente en el lugar que yo quiero, y no en el ´ obvia consiste en no poner la figura dentro de un que quiera LaTeX? La respuesta mas entorno figure, ya que es este entorno quien le dice a LaTeX que tiene permiso para ponerla donde prefiera. S´ı, Quiero mi figura AQUI ´ Esta es una pregunta bastante frecuente entre los novatos. ¿Como puedo hacer que una figura salga en el texto exactamente en el lugar que yo quiero, y no en el ´ obvia consiste en no poner la figura dentro de un que quiera LaTeX? La respuesta mas entorno figure, ya que es este entorno quien le dice a LaTeX que tiene permiso para ponerla donde prefiera. S´ı, \includegraphics puede ser usado sin necesidad de estar dentro de un figure, pues el entorno figure sim´ y que su caption debe plemente indica que su contenido puede ”flotar.a otra posicion, ´ llevar la palabra ”Figura”, pero no que su contenido sea necesariamente un grafico. Esto suele sorprender a los principiantes. ´ muchas veces no es satisfactoria, ya que necesitaNo obstante, esta solucion ´ y aparezca en la ”Lista de figuras”del mos que la figura tenga un pie, una numeracion ´ se logran a traves ´ del comando documento, y todas estas caracter´ısticas solo \caption ´ puede aparecer dentro del entorno figure (u otro flotante). En teor´ıa, LaTeX , el cual solo admite el posicionador [h] para indicar que la figura aparezca en el punto en que aparece Por Paco Aldarias

29/77


LATEX en el fuente, en lugar de ”flotar”hacia otro punto. Por desgracia esto no es una orden tajante para LaTeX, sino una sugerencia que suele ignorar. ´ tajanEn muchas ocasiones he leido que el posicionador [h!] es una orden mas ´ (o quizas ´ no este´ imte, pero parece que LaTeX suele desobedecerla a menudo tambien plementada en todas las versiones de LaTeX). El caso es que colocar una figura .aqui, ´ aunque quede fea, bajo mi responsabilidad”no parece facil. Pero en realidad es tan sencillo como incluir el paquete float y especificar el posicionador [H] (observar que va en mayuscula) ´ ˜ Para quienes prefieren hacer las cosas de forma retorcida, es posible anadir un caption en cualquier lugar del texto, sin estar necesariamente dentro de un entorno figure. Para ello puede usarse el paquete capt-of o el paquete captdef. Ambos proporcionan una funcionalidad muy similar, y en el fondo usan el mismo mecanismo, por lo que puedes ´ te guste. Usando capt-of, anadir´ ˜ elegir el que mas ıas el pie de figura escribiendo \captionof{figure}{Texto del pie de figura} , mientras que usando captdef el comando a usar ser´ıa \figcaption{Texto del pie de figura} ˜ . Ambos paquetes son flexibles y permiten anadir captions de tablas o de otros floats que puedas haber definido tu´ mismo con ayuda del paquete float. Puede usarse un entorno tabular para asegurarse de que la figura y el ”falso pie”van siempre juntos. puede ser usado sin necesidad de estar dentro de un figure, pues el entorno figure simplemente ´ y que su caption debe llevar la indica que su contenido puede ”flotar.a otra posicion, ´ palabra ”Figura”, pero no que su contenido sea necesariamente un grafico. Esto suele sorprender a los principiantes. ´ muchas veces no es satisfactoria, ya que necesitaNo obstante, esta solucion ´ y aparezca en la ”Lista de figuras”del mos que la figura tenga un pie, una numeracion ´ ´ del comando documento, y todas estas caracter´ısticas solo se logran a traves \caption ´ puede aparecer dentro del entorno figure (u otro flotante). En teor´ıa, LaTeX , el cual solo admite el posicionador [h] para indicar que la figura aparezca en el punto en que aparece en el fuente, en lugar de ”flotar”hacia otro punto. Por desgracia esto no es una orden tajante para LaTeX, sino una sugerencia que suele ignorar. ´ tajanEn muchas ocasiones he leido que el posicionador [h!] es una orden mas ´ (o quizas ´ no este´ imte, pero parece que LaTeX suele desobedecerla a menudo tambien plementada en todas las versiones de LaTeX). El caso es que colocar una figura .aqui, ´ aunque quede fea, bajo mi responsabilidad”no parece facil. Pero en realidad es tan sencillo como incluir el paquete float y especificar el posicionador [H] (observar que va en mayuscula) ´ ˜ Para quienes prefieren hacer las cosas de forma retorcida, es posible anadir un caption en cualquier lugar del texto, sin estar necesariamente dentro de un entorno figure. Para ello puede usarse el paquete capt-of o el paquete captdef. Ambos proporcionan una funcionalidad muy similar, y en el fondo usan el mismo mecanismo, por lo que puedes ´ te guste. Usando capt-of, anadir´ ˜ elegir el que mas ıas el pie de figura escribiendo \captionof{figure}{Texto del pie de figura} , mientras que usando captdef el comando a usar ser´ıa Por Paco Aldarias

30/77


LATEX \figcaption{Texto del pie de figura} ˜ . Ambos paquetes son flexibles y permiten anadir captions de tablas o de otros floats que puedas haber definido tu´ mismo con ayuda del paquete float. Puede usarse un entorno tabular para asegurarse de que la figura y el ”falso pie”van siempre juntos. puede ser usado sin necesidad de estar dentro de un figure, pues el entorno figure simplemente ´ y que su caption debe llevar la indica que su contenido puede ”flotar.a otra posicion, ´ palabra ”Figura”, pero no que su contenido sea necesariamente un grafico. Esto suele sorprender a los principiantes. ´ muchas veces no es satisfactoria, ya que necesitaNo obstante, esta solucion ´ y aparezca en la ”Lista de figuras”del mos que la figura tenga un pie, una numeracion ´ se logran a traves ´ del comando documento, y todas estas caracter´ısticas solo \caption ´ puede aparecer dentro del entorno figure (u otro flotante). En teor´ıa, LaTeX , el cual solo admite el posicionador [h] para indicar que la figura aparezca en el punto en que aparece en el fuente, en lugar de ”flotar”hacia otro punto. Por desgracia esto no es una orden tajante para LaTeX, sino una sugerencia que suele ignorar. ´ tajanEn muchas ocasiones he leido que el posicionador [h!] es una orden mas ´ (o quizas ´ no este´ imte, pero parece que LaTeX suele desobedecerla a menudo tambien plementada en todas las versiones de LaTeX). El caso es que colocar una figura .aqui, ´ aunque quede fea, bajo mi responsabilidad”no parece facil. Pero en realidad es tan sencillo como incluir el paquete float y especificar el posicionador [H] (observar que va en mayuscula) ´ ˜ Para quienes prefieren hacer las cosas de forma retorcida, es posible anadir un caption en cualquier lugar del texto, sin estar necesariamente dentro de un entorno figure. Para ello puede usarse el paquete capt-of o el paquete captdef. Ambos proporcionan una funcionalidad muy similar, y en el fondo usan el mismo mecanismo, por lo que puedes ´ te guste. Usando capt-of, anadir´ ˜ elegir el que mas ıas el pie de figura escribiendo \captionof{figure}{Texto del pie de figura} , mientras que usando captdef el comando a usar ser´ıa \figcaption{Texto del pie de figura} ˜ . Ambos paquetes son flexibles y permiten anadir captions de tablas o de otros floats que puedas haber definido tu´ mismo con ayuda del paquete float. Puede usarse un entorno tabular para asegurarse de que la figura y el ”falso pie”van siempre juntos. ´ informacion ´ en http://ltx.blogspot.com/2003/10/quiero-mi-figura-aqui. Mas html

´ graficos ´ 5.9. Generar Programas: • Bardiag http://www.ibiblio.org/pub/packages/TeX/graphics/bardiag/ • rlplot http://rlplot.sourceforge.net/Examples/index.html Por Paco Aldarias

31/77


LATEX

5.10. Hacer una linea que ocupe toda la anchura Definimos la macro: \newcommand{\linea}{\noindent\rule{\textwidth}{.1pt}\\} Ahora donde queramos poner una linea pondremos \linea

Por Paco Aldarias

32/77


LATEX

CAPITULO 6

Referencias cruzadas: enlaces

6.1. Enlaces a internet ˜ ´ Debemos anadir el paquete hyperref en el prologo del documento, es decir, antes del begin document. ´ Una pagina web: http://www.google.es Un email: mailto://paco25abril@tiscali.es En latex ser´ıa: \usepackage{hyperref} ... \begin{document} .. Una p´ agina web: \url{http://www.google.es} Una email: \url{mailto://paco25abril@tiscali.es} ..

6.2. Enlaces a internet que no se corte Debemos poner antes del inicio del documento: \usepackage{url}

6.3. Enlaces a partes del documento: referencias cruzadas En latex se puede referenciar cualquier objeto siempre que haya sido previamente equiquetado con: \label{etiqueta} Podemos referenciar a este elemento con: \ref{etiqueta} ´ Podemos referenciar la pagina a este elemento con: \pageref{etiqueta}

Por Paco Aldarias

33/77


LATEX

6.4. Ejercicio Hacer un articulo, en donde aparencan referencias a sectiones y el numero de ´ ´ pagina donde se encuentra.

Por Paco Aldarias

34/77


LATEX

CAPITULO 7

´ Documentos a medida: recetas, examenes

´ 7.1. Introduccion Vamos a ver clases de documentos interesantes. Deberemos copiar el tipo de documento en /usr/share/texmf/tex/latex/base/ y desde consola como root poner: mktexlsr

7.2. Hacer tarjetas de visita Aqui hay ejemplos: http://www.debian.org/events/materials/business-cards/

7.3. Escribir en griego:teubner ´ Se puede escribir en griego clasico veremos un ejemplo (de un escrito de un ´ ´ correcto sin maestro de filosof´ıa que esta fascinado con LaTeX) no se si sea lo mas embargo la referencia al paquete teubner http://www.ctan.org/tex-archive/macros/ latex/contrib/teubner/teubner-doc.pdf %%%%%%%%%%%%%%%%%%%% inicio del documento. \documentclass[letterpaper,10pt]{article} \usepackage[T1]{fontenc} \usepackage[greek,spanish]{babel} \usepackage{teubner} document_datosoporte para babel y griego \usepackage[latin1]{inputenc} \usepackage{parallel}% Permite escribir en "Columnas Paralelas".

\begin{document} \bigskip \begin{small} \begin{Parallel}[c]{0.45\textwidth}{0.45\textwidth} \tolerance=1000 \ParallelLText{\noindent El texto de \emph{El Sofista} es el siguiente:} \ParallelRText{\noindent \noindent He aqu´ ı una propuesta de traducci´ on al espa~ nol:} \ParallelPar

Por Paco Aldarias

35/77


LATEX \ParallelLText{\noindent"<\griego{ >Epeid‘h to` ınun <hme~is >hpor’hkamen,}} \ParallelRText{\noindent "<Puesto que nosotros estamos en un aprieto,} \ParallelPar \ParallelLText{\noindent \griego{ <ume\~is a>ut` a <hm\~in >emfan’izete <ikan\~wc,}} \ParallelRText{\noindent mostradnos en forma adecuada} \ParallelPar \ParallelLText{\noindent \griego{ t’i pote bo’uleste shma’inein <op’otan >’on fj’egghsje.}} \ParallelRText{\noindent qu´ e quer´ eis manifestar cuando mencion´ ais lo que es.} \ParallelPar \ParallelLText{\noindent \griego{ D\~hlon g’ar <ws <ume\~is m` en ta\~uta p’alai gign’wskete,}} \ParallelRText{\noindent Es evidente que se trata de algo que vosotros conoc´ eis desde hace mucho,} \ParallelPar \ParallelLText{\noindent \griego{ <hme\~is d` e pr` o to\~u m` en >w|’omeja,}} \ParallelRText{\noindent y que nosotros mismos compren\-d´ ıamos hasta este momento,} \ParallelPar \ParallelLText{\noindent \griego{ n \~un d> >hpor’hkamen

\dots ">.}}

\ParallelRText{\noindent pero que ahora nos pone en dificultades">.}

\end{Parallel} \end{small} \noindent \footnote{El texto est´ a tomado de Plat´ on, \emph{Theaithetos. Der Sophist. Der Staatsmann.} Griechischer Text von Auguste Di` es. Deutsche ¨ Ubersetzung von Friedrich Schleiermacher. WBG. Alemania. 1990.} \hfill \footnote{As´ ı es como est´ a traducido en Plat´ on, \emph{Di´ alogos. V. Parm´ enides. Teeteto. Sofista. Pol´ ıtico.} Gredos. Traducci´ on de Ma. Isabel Santa Cruz, Alvaro Vallejo Campos, N´ estor Luis Cordero. Madrid. 1998. p. 407.} \end{document} %%%%%%%%%%%%%%%%%%%% Fin del documento

Por Paco Aldarias

36/77


LATEX

7.4. Latex para documentar codigo fuente Se puede buscar aqu´ı: ·http://tug.ctan.org/tex-archive/macros/latex/ contrib/ • highlight es un sencillo programa que acepta un fichero en C++ por ejemplo y que genera el codigo para TeX, LaTeX, HTML, XHTML, RTF en el que pueden elegir unos tenmas con colores para palabras clave o para fondos, genera un codigo completo con begin-document end-document de modo que si queremos hacer un include hay que borrar algunas lineas, es muy sencillo de usar. ´ apt-get install highlight Instalacion: Ejemplos: http://www.andre-simon.de/doku/highlight/highlight bsp en.html • listings • algorithms • algorithm2e • pseudocode • algorithmx

7.5. Recetas de cocina:recipe Permite hacer un libros de recetas. Copiar el fichero recipe.cls en /usr/share/texmf/tex/latex/base/

7.6. Examenes: examdesign ´ ´ Permite realizar rapidamente examenes con enumciados y soluciones. Aqu´ı se puede encontrar: ftp://ftp.dante.de/tex-archive/macros/latex/ contrib/examdesign Copiar el fichero exam.cls en /usr/share/texmf/tex/latex/base/

7.7. Horarios: shedule Aqui se puede encontrar: http://www.biwako.shiga-u.ac.jp/sensei/kumazawa/ tex/schedule.html

7.8. El indic El comando printindex se limita a incluir el archivo.ind. Este archivo a su vez simplemente contiene un entorno heindex dentro del cual va todo el ´ındice. Por tanto si ´ del entorno theindex. Yo lo quieres hacer cosas especiales, debes modificar la definicion tengo hecho en un documento para que el ´ındice salga a doble columna y con un texto ´ ´ introductorio. Mi codigo es el siguiente (en el preambulo del documento):

Por Paco Aldarias

37/77


LATEX %------------8X-------------------------------------------------------\makeatletter \renewenvironment{theindex} {\section*{\indexname}% usar chapter en vez de section si se requiere \@mkboth{\MakeUppercase\indexname}% {\MakeUppercase\indexname}% Texto introductorio, aparece tras el t´ ıtulo de secci´ on y antes del ´ ındice \thispagestyle{plain}\parindent\z@ \parskip\z@ \@plus .3\p@\relax \let\item\@idxitem \setlength{\columnseprule}{.2mm} \begin{multicols}{2}} % iniciar doble columna (requiere paquete multicol) {\end{multicols}} \makeatother %-------------8X----------------------------------------------------------------

7.9. Superponer texto encima de imagenes: overpic Descargar los ficheros de overpic de : http://www.ctan.org/tex-archive/macros/latex/contrib/overpic/?action=/tex-archive/ macros/latex/contrib/ Siendo root: Copiar el fichero sty: cp overpic.sty /usr/share/texmf/tex/latex/base/ Regenerar estilos: mktexlsr

Por Paco Aldarias

38/77


LATEX

CAPITULO 8

Entornos

8.1. Entorno verbatim Este entorno permite poner comandos latex. Es para poner el texto tal cual. Ejemplo: \begin{verbatim} Texto tal cual \end{verbatim}

8.2. Entorno Fancy verbatim Deberemos poner antes de begin document: \usepackage{fancyvrb} ´ en el documento usaremos: Despues \begin{verbatim} Esto es texto tal cual, podemos poner \begin{enumerate} y no lo interpreta. \end{verbatim} ´ permite anadirle ˜ ´ en el comenTambien opciones, por ejemplo que cree marcos: Despues to usaremos: \begin{verbatim}{frame=single} Esto es texto tal cual, podemos poner \begin{enumerate} y no lo interpreta. \end{verbatim} ˜ ´ en el comento usaremos: Podemos anadir ficheros externos con: Despues \verbatimInput{fichero.txt}

Por Paco Aldarias

39/77


LATEX

8.3. Entorno Listings Deberemos poner antes de begin document: \usepackage{listings} ´ en el documento usaremos: Despues \begin{lstlisting} Esto es texto tal cual, podemos poner \begin{enumerate} y no lo interpreta. \end{lstlisting} ´ permite anadirle ˜ Tambien opciones, por ejemplo que cree marcos: \begin{lstlisting}{frame=single} Esto es texto tal cual, podemos poner \begin{enumerate} y no lo interpreta. \end{lstlisting} ˜ Podemos anadir ficheros externos con: \lstinputlisting{fichero.txt}

8.4. Los comentarios Un comentario es un texto que no se ve en el documento, pero sirve para acalarar cosas. Si desamos que una linea sea un comentario usaremos %: Si desamos que mas de una linea sea comentario usaremos: \begin{comment} ... ... \end{comment}

8.5. Entorno minipage Este texto esta dentro del entorno minipage. Minipage empieza aqui: Esto es el texto de despues de minipage Apreciar como se queda el texto. con 2cm. Como veis se empieza despues del texto, inicial. En latex seria:

Por Paco Aldarias

40/77


LATEX Minipage empieza aqui: \begin{minipage}{2cm} Este texto esta dentro del entorno minipage. Apreciar como se queda el texto. \end{minipage} Esto es el texto de despues de minipage con 2cm. Como veis se empieza despues del texto, inicial.

´ 8.6. Minipage y graficos ´ Esto permite poner un texto a la izquierda del grafico. \begin{figure}[!h] \begin{minipage}[c]{0.5\columnwidth}% \centering \includegraphics[]{dibujo} \end{minipage}% \hfill{} \begin{minipage}[c]{0.5\columnwidth}% descripcion del grafico o codigo fuente del diagrama de flujo (grafico) \end{minipage}% \caption{titulo del grafico} \end{figure}

8.7. Notas al pie 1 ´ Esto es una nota al pie de pagina En latex ser´ıa:

Esto es una nota al pie de p´ agina \footnote{Esto es el texto del pie}

8.7.1. Poner las notas entre parentesis ´ Deberemos poner esto en el preambulo: \renewcommand{\thefootnote}{(\arabic{footnote})}

´ 8.8. Crear un ´ındice alfabetico ´ 1. Incluir en el preambulo 1

Esto es el texto del pie

Por Paco Aldarias

41/77


LATEX \usepackage{makeidx} \makeindex ´ el ´ındice, (se suele poner antes del 2. Poner en el lugar donde quieres que aparezcan end document: \printindex ˜ 3. Senalar todas las entradas que quieres se usen en el ´ındice, con: \index{texto} o tb \begin{texto ! apartado} ´ ”.idx” 4. Se compila el documento; entre otros se creara´ el fichero auxiliar de extension 5. Compilar el documento, con: latex fichero.tex 6. Generar el ´ındice con formato; en linux la orden es: makeindex archivo.idx 7. Volver a compilar el documento, con: latex fichero.tex

´ 8.9. Numero ´ total de paginas: lastpage El paquete lastpage permite usar la variable LastPage para conocer el numero ´ ´ ´ del comando: total de paginas del documento a traves ´ La ultima pagina de este domumento es: 77 ´ As´ı se emplea: ... \usepackage{lastpage} ... \begin{document} La ´ ultima p´ agina de este domumento es: \pageref{LastPage} \end{document}

´ completo: tocbibinf 8.10. Indice general mas ´ Podemos poner en el ´ındice general, o tableofcontents, el numero de pagina del ´ ´ mismo indice, de la lista de figuras, la lista de tablas, ´ındice alfabetico,etc. Deberemos usar el paquete tocbibind, antes del inicio del documento: \usepackage{tocbibind} ... \begin{document} ... Por Paco Aldarias

42/77


LATEX

8.11. LLaves  Primer item  Segundo item Cuarto item  Tercer item En latex ser´ıa: $\left. \begin{tabular}{l} Primer item\\ Segundo item\\ Tercer item \end{tabular} \right\} $Cuarto item

8.12. Crear marcos multipagina: framed ´ pon lo que quieras dentro del environment Utiliza el paquete framed y despues framed. As´ı: \documentclass{article} \usepackage{framed} \begin{document} \begin{framed} %todo el texto que quieras, yo he probado con uno que ocupaba tres p´ aginas% \end{framed} \end{document}

Por Paco Aldarias

43/77


LATEX

CAPITULO 9

S´ımbolos

9.1. El simbolo del euro Necesita tener instalado el paquete tetex-eurosym y usar \usepackage{eurosym} esto es un e \euro ´ informacion ´ en http://www.debian.org/doc/manuals/debian-euro-support/ Mas ch-applications.en.html#s4.2.11

Por Paco Aldarias

44/77


LATEX

CAPITULO 10

´ Funciones matematicas

´ 10.1. Entorno matematico c=

p

a2 + b2

En latex ser´ıa: \begin{displaymath} c = \sqrt{ a^{2} + b^{2} } \end{displaymath} ´ se pueden poner formulas ´ Tambien como esta c2 = a2 + b2 dentro del parrafo as´ı: Tambi´ en se pueden poner f´ ormulas como esta $c^{2}=a^{2}+b^{2}$ dentro del parrafo as´ ı:

10.2. Ecuaciones Simples Numeradas Asumimos que usamos el paquete amsmath. ax + by + c = 0

(10.1)

En latex ser´ıa: \begin{equation} ax+by+c = 0 \end{equation}

10.3. Ecuaciones Simples sin numerar Asumimos que usamos el paquete amsmath. El s´ımbolo * elimina la numera´ cion. ax + by + c = 0 En latex ser´ıa: \begin{equation*} ax+by+c = 0 \end{equation*} Por Paco Aldarias

45/77


LATEX

10.4. Ecuaciones Simples Alineadas

x + y − 4444z = 1

(10.2)

x+y−z =1

(10.3) (10.4)

En latex ser´ıa: \begin{align} x + y - 4444z & = 1\\ x + y - z & = 1\\ \end{align}

Por Paco Aldarias

46/77


LATEX

CAPITULO 11

´ ´ Graficos de funciones matematicas: gnuplot

Por Paco Aldarias

47/77


LATEX

CAPITULO 12

´ Cabeceras y pies de pagina

´ 12.1. Personalizar las cabeceras y pies de pagina Se utiliza el paquete fancyhdr. Vamos a poner en la cabecera en el centro latex, ´ en el pie izquierdo Paco Aldarias y en pie derecho la pagina. En latex ser´ıa: \usepackage{fancyhdr} % Cabeceras/Pies \pagestyle{fancy} % Cabeceras/Pies \usepackage{lastpage} ... \addtolength{\headwidth}{\marginparwidth} \addtolength{\headwidth}{\marginparsep} ... \fancypagestyle{plain}% Para la primera p´ agina {% \fancyhead[l]{} \fancyhead[r]{} \fancyhead[c]{\bfseries \LaTeX{}} \renewcommand{\headrulewidth}{0.5pt} \fancyfoot[l]{Por Paco Aldarias} \fancyfoot[c]{} \fancyfoot[r]{\thepage/\pageref{LastPage}} \renewcommand{\footrulewidth}{0.5pt} } % Para el resto de p´ aginas \lhead{} \chead{\bfseries \LaTeX{}} \rhead{} \renewcommand{\headrulewidth}{0.4pt} \lfoot{Por Paco Aldarias} \cfoot{} \rfoot{\thepage/\pageref{LastPage}} \renewcommand{\footrulewidth}{0.4pt} ... \begin{document} Nota: Son funciones propias de latex : { Por Paco Aldarias

48/77


LATEX \LaTeX{) \thepage

Escribe latex bonito Escribe el n´ umero de p´ agina

´ 12.2. Eliminar los pies de pagina Debemos poner al inicio del documento: \def\thefootnote{\relax}

˜ de la pagina: ´ 12.3. Tamano geometry \usepackage{geometry} ´ ´ comoda ´ Te permite especificar los margenes de una forma mucho mas que tratando de manipular directamente las correspondientes variables de LaTeX. Ejemplo: \geometry{left=1cm, right=1cm, top=1cm, bottom=1cm}

12.4. Personalizar los cap´ıtulos ´ informacion ´ escribir en consola texdoc Debemos usar el paquete titlesec. Mas titlesec. Uso: \usepackage{titlesec} \titleformat{\chapter}[frame] {\normalfont} {\filright \footnotesize \enspace CAPITULO \thechapter\enspace} {8pt} {\Large\bfseries\filcenter} \begin{document}

Por Paco Aldarias

49/77


LATEX

CAPITULO 13

Notas al pie al final del documento: endnotes

´ 13.1. Introduccion Vamos a ver un ejemplo en donde las notas al pie las pone al final del documento.

13.2. Ejemplo de notas finales: endnotes \documentclass{book} \usepackage{multicol} \usepackage{endnotes} \renewcommand\enoteheading{\indent} \begin{document} Esta es l primera nota \endnote{Quiero esta nota con sangria} Esta es la seguna nota \endnote{Asi como la lleva esta} Esta es la tercera nota \endnote{Esta es la numero tres} \begin{multicols}{2}[\chapter{Notas}] \theendnotes \end{multicols} \end{document}

Por Paco Aldarias

50/77


LATEX

CAPITULO 14

Tipos de textos y parrafos

´ 14.1. Crear un parrafo sin sangrado: noindent Por defecto un parrafo queda sangrado a la derecha, para evitar eso debebmos poner antes del inicio noident. Ejemplos: ´ Esto es un parrafo normal sangrado. ´ Esto es un parrafo sin sangrado sangrado. En latex ser´ıa: Esto es un p´ arrafo normal sangrado. \noindent Esto es un p´ arrafo sin sangrado sangrado. Si deseamos que no idente en todo el documento seria poniendo en la cabecera: \parindent=0mm ´ para identar 15mm seria: O tambien \setlength{\parindent}{15 mm} \parindent=15mm

14.2. Alineacion del parrafo Esto es un texto a la izquierda Esto es un texto a la derecha Esto es un texto al centro. En latex seria: \begin{flushleft} Esto es un texto a la izquierda \end{flushleft} \begin{flushrigh} Por Paco Aldarias

51/77


LATEX Esto es un texto a la derecha \end{flushrigh} \begin{center} Esto es un texto al centro. \end{enter}

14.3. Fuentes del texto • Texto estilo Roman En latex seria: \textrm { Texto estilo Roman } • Texto estilo San serif En latex seria: \textsf{ Texto estilo San serif } •

Texto estilo Typewriter En latex seria: \texttt { Texto estilo Typewriter}

• Texto estilo Medium En latex seria: \textmd { Texto estilo Medium } • Texto estilo Boldfade En latex seria: \textbf { Texto estilo Boldfade} • Texto estilo Upright En latex seria: \textup { Texto estilo Upright } • Texto estilo Italica En latex seria: \textit { Texto estilo Italica } • Texto estilo Slanted En latex seria: \textsl { Texto estilo Slanted } • T EXTO ESTILO S MALL C AP En latex seria: \textsc { Texto estilo Small Cap} • Tambien se pueden combinar: Texto sanserif y bold face Texto roman y Slante En latex seria: Por Paco Aldarias

52/77


LATEX Tambien se pueden combinar: \textsf{ \textbf{ Texto sanserif y bold face} } \textrm{ \textsl{ Texto roman y Slante} }

14.4. Enfatizar texto Aqui hay una palabra enfatizada. En latex seria: Aqui hay una \emph{palabra} enfatizada.

14.5. Tipos de letra helvetica Debemos poner antes del inicio del documento: \renewcommand{\rmdefault}{phv} \renewcommand{\sfdefault}{phv} ´ Nota: Las formulas segiran usando el tipo de letra computer modern.

14.6. Acortar la anchura del parrafo Esto es un ejemplo acorada su anchura en ambos lados 4cm. Escribiendo este texto se puede apreciar como queda. En latex seria: {\leftskip=4cm \rightskip=4cm Esto es un ejemplo acorada su anchura en ambos lados 4cm. Escribiendo este texto se puede apreciar como queda. \par }

14.7. Formatos personalizados ˜ Asi definimos mi tamano: \newcommand{\miTamano}{\fontsize{10}{8pt}\normalfont\rmfamily} Asi lo usamos: {\miTamano ..... blablabla ..... }

14.8. Poner todo el texto en helvetica Poner antes del begin document: \usepackage{helvet} \def\rmdefault{\sfdefault} Por Paco Aldarias

53/77


LATEX

CAPITULO 15

Formatos

15.1. Conversores de formato Un documento en latex debe transformarse para poder se impreso o visto por ´ pasarlo a pdf y html. un visor. Lo corriente es hacer un fichero tex y despues Formatos de los ficheros: 1. tex. Fuente en latex 2. dvi. Los que genera latex directamente con latex fichero.tex 3. pdf. son para imprimir con adobe, 4. ps. Ficheros Postscript. Similar a pdf. ´ 5. html. Paginas web.

´ de tex 15.1.1. Herramientas de conversion 1. pdflatex. Convierte .tex en .pdf 2. latex2rtf-doc. Convierte .tex to .rtf 3. latex2html. Transforma tex a html. Mirar ejemplo previo. Nota: Para eliminar las direcciones absolutas y poder ver las imagenes, debes hacer:

sed -e ’s:/hdd/pagina/pacodebian//::g’ fichero.html > temp.html mv temp.html fichero.html ´ de la pagina. ´ Siendo /hdd/pagina/pacodebian/ la ubiacion 4. tth. Transforma tex a html. Ejemplo. fichero.tex ¿fichero.html http://hutchinson.belmont.ma.us/tth/manual.cgi#epsf 5. hevea. Transforma tex a html.

Por Paco Aldarias

54/77


LATEX

´ de html 15.1.2. Herramientas de conversion 1. htmldoc. Herramienta para pasar documentos de html a pdf o de html a ps. Es util para poder imprimir paginas web. Ejemplo. htmldoc -t pdf fichero.html -f fichero.pdf 2. html2ps. Convierte html en ps. Ejemplo. html2ps fichero.html >fichero.ps 3. gnuhtml2latex. Convierte html en tex. Ejemplo: gnuhtml2latex ht9.html 4. lynx. Convierte de html a txt Ejemplo: lynx -dump index.html > html.txt

´ de pdf 15.1.3. Herramientas de conversion 1. pdftotext. Convierte pdf a .txt 2. pdftops. Convierte pdf a ps. Ejemplo. pdftops fichero.pdf 3. pdf2ps. Convierte el pdf en ps. Ejemplo. pdf2ps fichero.pdf 4. pdfimages extrae las imagenes del fichero a jpg. ´ que se encuentra en el paquete: xpdf-utils Aplicacion Ejemplo. pdfimages -j fichero.pdf imagen Podemos incluir paginas de un fichero en nuestro fichero: \usepackage{pdfpages} . \begin{document} \includepdf[pages={3-7,9}]{/path/to/other.pdf} \end{document}

´ de ps 15.1.4. Herramientas de conversion 1. ps2pdf. Convierte ps a pdf. Ejemplo. ps2pdf fichero.ps ´ de doc. 2. catdoc. Herramientas de conversion Convierte .doc a .txt/.tex 3. psrip. Extrae imagenes de ficheros ps. Ejemplo. psrip fichero.ps

´ de dvi 15.1.5. Herramientas de conversion 1. divps. Convierte un dvi en ps dvips fichero.dvi -o fichero.ps 2. dvipdfm. Convierte dvi a pdf. Ejemplo: dvipdfm fichero.dvi Por Paco Aldarias

55/77


LATEX

´ de sgml 15.1.6. Herramientas de conversion 1. sgml2latex. Convierte un sgml a latex Ejemplo: sgml2latex –output=tex fichero.sgml Nota: Requiere instalar linuxdoc-tools-latex

15.2. Pasar de png a eps Debemos crear los archivos: pngtoeps.sh, pngtoepsvarios.sh Darles permiso de ´ chmod 700 pngtoeps.sh pngtoepsvarios.sh ejecucion: Contenido del fichero pngtoeps.sh: pngtopnm $1.png > $1.pnm pnmtops -noturn $1.pnm pnmtops -noturn $1.pnm > $1.ps ps2eps $1.ps rm $1.ps rm $1.pnm Contenido del fichero pngtoepsvarios.sh #Creacion de EPS (Encapsulated PostScript) a partir de png for i in ‘ls *.png‘; do f=‘basename $i .png‘ ./pngtoeps.sh $f done Llamada para pasar un fichero: pngtoeps fichero Llamada para pasar un directorio: pngtoespvarios

15.3. Poner dos caras de hoja en una sola 1. mpage. Es un programa para reducir e imprimir multiples paginas de textp por hoja sobre una impresora compatible PostScript. Ejem. Imprimir dos hojas en 1 cara. mpage -2 nombrearchivo.ps 2. pstops. Convierte un ps a una cara en dos. pstops "2:0L@.7(21cm,0)+1L@.7(21cm,14.85cm)" $1.ps $12.ps 3. psnup y psselect. Ejemplo: Para obtener dos caras en una hoja: psnup -2 midocumento.ps temporal.ps Para sacar las pares y las impares en un documento aparte: psselect -e temporal.ps ¿pares.ps psselect -o temporal.ps ¿impares.ps

Por Paco Aldarias

56/77


LATEX

15.4. Visores xpdf Visor de .PDF. Permite navegar por los enlaces, buscar texto, seleccionar texto, Ideal para visualzar. acroread (Adobe Acrobat). Visor de .PDF. Permite buscar texto, seleccionar texto, Ideal para imprimir. gv Visor de PDF,PS. kghostview Visor de PS,PDF,EPS. Es el que usa linux por defecto. kdvi Visor de .dvi. xdvi Visor de .dvi. dvisvga Visor de .dvi en consola.

15.5. Hacer documentos grandes Cuando generamos un documento muy grande, de mas de 200 hojas latex se queja que no tiene memoria. ˜ de pool: Editar el fichero como root, aumentando los tamano nano /usr/share/texmf/web2c/texmf.cnf % Max number of characters in all strings, including all error messages, % help texts, font names, control sequences. These values apply to TeX and MP. pool_size.context = 750000 pool_size = 1250000 % Minimum pool space after TeX/MP’s own strings; must be at least % 25000 less than pool_size, but doesn’t need to be nearly that large. string_vacancies.context = 450000 string_vacancies = 250000 % Maximum number of strings. max_strings.context = 550000 max_strings = 150000 % min pool space left after loading .fmt pool_free.context = 475000 pool_free = 50000

Por Paco Aldarias

57/77


LATEX

CAPITULO 16

Glosarios

´ 16.1. Introduccion ˜ El glosario que vamos a ver, permite ir anadiendo definiciones de palabra y luego al final, se hara´ un resumen de todas las definiciones hechas en el documento.

16.2. Uso \documentclass[a4paper,twoside,12pt]{book} \usepackage[spanish]{babel} \usepackage[refpage,spanish]{nomencl} \renewcommand{\nomname}{Glosario} \renewcommand{\nomlabel}[1]{\textbf{#1}\hfil} \renewcommand{\nomentryend}{.} \makeglossary \begin{document} \nomenclature{Palabra1}{Descripcion1} \nomenclature{Palabra2}{Descripcion2} \nomenclature{Palabra3}{Descripcion3} \printglossary[2cm] \end{document}

16.3. Generar el glosario latex fichero.tex makeindex -s nomencl.ist -o fichero.gls fichero.glo latex fichero.tex

Por Paco Aldarias

58/77


LATEX

CAPITULO 17

Base de datos bibliograficas

17.1. Bibliografias en el mismo fichero El libro [4]. El libro \cite{GOS88}. \begin{the bibliography}{99} \bibitem{GOS88} M. Goossens, F. Mittelbach, and A. Samarin, The LaTeX Companion, published by Addison-Wesley, ISBN 0-201-54199-8} \end{the bibliography}

17.2. Fichero externo de bibliografias El libro [4] de la bibliograf´ıa. En latex ser´ıa: El libro

\cite{GOS88} de la bibliograf´ ıa.

Siendo GOS88 la etiqueta del libro.

17.2.1. fichero latex.bib @BOOK{GOS88, AUTHOR = {Goossens - F. Mittelbach and A. Samarin}, TITLE = {The LaTeX Companion}, PUBLISHER = {Addison-Wesley}, YEAR= {1988}, EDITION = {1}, NOTE = {Libro en ingles} }

17.2.2. Al final del documento hay q poner \bibliographystyle{alpha} \bibliography{latex} %% .bbl

Por Paco Aldarias

59/77


LATEX

17.2.3. Se compilar con latex ficherotex bibtex ficherobib latex ficherotex latex ficherotex Nota: si queremos una libro q salga en la bibliograf´ıa que no se haya citado pondremos: \nocite{CAS00} Nota: si queremos todos los libros: \nocite{*}

17.3. Herramientas ´ de Hay distintos tipo de herramientas para gestionar los ficheros.bib, ademas hacerlo con cualquier editor.

17.3.1. Gbib ´ http://gbib.seul.org/ Este es un editor de BD Bibtex; esta´ bastante simpatico e interactua con otros editores como Kile o LyX. Respeta los acentos. Trabaja directa˜ Permite ordenar por mente con ficheros .bib, no hace falta importarlos. Esta en espanol. campos. Integrada en kile (editor de latex)

17.3.2. Pybliographic Trabaja directamente con ficheros .bib, no hace falta importarlos. Herramien´ ta grafica, que permite obtener ficheros html, latex, Permite pasarle ficheros xml para personalizar la salida html. Herramienta para gnome. http://www.pybliographer.org/

17.3.3. Bibview Herramienta para ver o buscar usando ficheros .bib Necesita importar el fichero .bib creando su propio formato.

17.3.4. cb2Bib http://www.kde-apps.org/content/show.php?content=14148 Permite trans´ en otro formato, p.e. si copiamos la refeformar a formato bibtex referencias que esten ´ adecuada, el programa nos rencia que aparece en el IEEEXplore, con la configuracion genera la entrada bibtex correspondiente, sin tener que editarla manualmente.

17.3.5. Tellico No es precisamente para bibtex, pero puede exportar las entradas en el formato adecuado.

Por Paco Aldarias

60/77


LATEX

17.3.6. Script para Bibliographer cat pybformat.sh # Por Paco Aldarias # http://arch.pybliographer.org/documentation/script-scripting-existing.html echo "BIBLIOGRAFIAS" > cabecera.txt echo "Por Paco Aldarias." > pie.txt echo "Actualizado " $(date +%d-%m-%Y-%H:%M) >> pie.txt pybformat -s /usr/share/pybliographer/Styles/paco.xml \ -f Html \ -o libros1.html \ -H cabecera.txt \ -F pie.txt \ libros.bib rm -f cabecera.txt pie.txt

17.4. Poner una y en los autores Si deseamos poner una y en lugar de and cuando hay varios autores, adaparemos el paquete de estilo. Siendo root: cd /usr/share/texmf/bibtex/bst/base cp cp alpha.bst alpha-new.bst cambaremos el and por y en format.names en el fichero alpha-new.bst mktexlsr usaremos el fichero as織 覺: \bibliographystyle{alpha-new}

17.5. Poner varios autores en el fichero .bib @book{CCM03, author = {CELMA, MATILDE and CASAMAYOR, JUAN CARLOS and MOTA, LAURA}, title = {Bases de datos relacionales}, publisher = {Prentice Hall. Pearson}, year = {2003}, note = {ER,Relacional,SQL} }

17.5.1. Bibtex y mysql Permite integrar bibtex y mysql. http://www.nongnu.org/biborb/download.html

Por Paco Aldarias

61/77


LATEX

17.6. Unir ficheros bib: bibtopic Buscar aqu織覺 los ficheros a instalar: http://www.ctan.org/tools/filesearch? action=/search/ README (Nov bibtopic.dtx bibtopic.ins bibtopic.pdf

6 02:34) (Nov 6 01:14) (Nov 6 10:47) (Nov 6 10:55)

Generar ficheros: latex bibtopic.in Copiar el fichero generado bibtopic.sty cp /wind/soft/linux/latex/bibtopic/bibtopic.sty /usr/share/texmf/tex/latex/base/ Actualizar estilos: mktexlsr Suponiendo que tenermos dos ficheros: librosbd.bib y librosredes.bib, creamos el fichero librostodos.tex ... \usepackage{bibtopic} begin{document} ... \begin{btSect}{librosbd} \section{Libros de Bases de Datos} \btPrintAll \end{btSect} \begin{btSect}{librosredes} \section{Libros de Redes} \btPrintAll \end{btSect} ... \bibliographystyle{alpha} Generar indices: bibtex librostodos1 bibtex librostodos2

Por Paco Aldarias

62/77


LATEX

CAPITULO 18

Bibliografia

18.1. Paquetes 1. Ctan. Busqueda de paquetes: http://www.ctan.org/find.html

˜ 18.2. Libros en Espanol. ˜ 2003. 1. Cascales Salinas Bernardo, El libro de latex + cdrom, Ed. Prentice Hall, Ano. ISBN 84-205-3779-9. Precio. 34Eur. ˜ 2000. ISBN: 2. Bernardo Cascales. Latex una imprenta en sus manos. Ed. ADI. Ano. 84-920381-9-5

´ 18.3. Libros en Ingles. 1. M. Goossens, F. Mittelbach, and A. Samarin, The LaTeX Companion, published by Addison-Wesley, ISBN 0-201-54199-8 (essential for the serious LaTeX hackers).

˜ 18.4. Bibliograf´ıa en Internet en Espanol 1. Latex para windows http://www.udlap.mx/∼ma108907/latex/taller.html 2. Cervantes http://filemon.mecanica.upm.es/CervanTeX/ ˜ ıa 3. LaTeX y compan´ http://ltx.blogspot.com/2003 09 01 ltx archive.html#106457963703677895 4. Manual de Latex de Aritz Beraza http://evangelion.homelinux.net/cgi-bin/cvsweb/cvstest/ 5. Manual latex. http://xm1.net.free.fr/linux/documentation.html 6. Latex world: http://latexworld.blogspot.com/ 7. Lista de correo sptex. http://www2.cica.es/servlist/listinfo/sptex

Por Paco Aldarias

63/77


LATEX 8. Crear Curriculum: http://www.tug.org/tex-archive/macros/latex/contrib/currvita/ ´ 9. Crear caratulas de cd: http://www.tug.org/tex-archive/macros/latex/contrib/cd-cover/ 10. Manual de latex: http://www.uco.es/∼i62napia/man latex/ 11. Faq Cervantes: http://corbu.aq.upm.es/∼agmartin/latex/FAQ-CervanTeX/FAQ-CervanTeX.html 12. Manual de Latex: http://www.sindominio.net/ayuda/latex/ 13. Manual de Latex: http://gimp.hispalinux.es/cgi-bin/cvsweb/doc-tutorial-latex/doc-tutorial-latex. txt 14. LaTeX para las Humanidades http://rt0016xp.eresmas.net/lplh/latex-humanidades.pdf Fuentes: http://rt0016xp.eresmas.net/lplh/lplh.tar.gz

´ 18.5. Bibliograf´ıa en Internet en Ingles 1. Introduction to LaTeX. Nicola Talbot. (Muy bueno) http://theoval.cmp.uea.ac. uk/∼nlct/latex/csed/handout.pdf 2. UK List of TeX Frequently Asked Questions. http://www.tex.ac.uk/cgi-bin/texfaq2html 3. ktexmaker2: http://xm1.net.free.fr/linux/index.html ´ Muy completo: 4. Manual de latex. En Ingles. http://sarovar.org/download.php/120/ltxprimer-1.0.pdf 5. Hypertext Help with LaTeX. En Ingles. Navegable en html: http://www-h.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/ ltx-2.html 6. Latex tricks. Ingles http://www.iam.ubc.ca/∼newbury/tex/title.html 7. The Not So Short. Introduction to LATEX2 htp://libertonia.escomposlinux.org/story/2002/7/31/1486/16530 8. UK List of TeX Frequently Asked Questions on the Web http://www.tex.ac.uk/cgi-bin/texfaq2html?introduction=yes 9. Hacer pdf. How to Create PDF from LATEX Ki-Joo Kim. http://www.ce.cmu.edu/∼kijoo/latex2pdf.pdf

Por Paco Aldarias

64/77


LATEX

CAPITULO A

Plantilla Latex

´ A.1. Introduccion Vamos a ver la forma de generar rapidamente documentos. Se trata de hacer un fichero latex llamado fichero datos.tex que se unira a una plantilla previa. El fichero datos.tex puede ir en un article o un book, pudiendose unir varios ´ ficheros en uno solo. Disponemos de tres ficheros: 1. fichero datos.tex Fichero con el texto q queremos q salga. 2. plantilla.tex ´ Es un fichero latex que con la cabecera y un input a un fichero datos.tex generico. 3. plantilla.sh Script que genera el fichero final, q lo llamara´ fichero.tex. Sustituye en la plantilla el ´ texto fichero por el q se le pasa como parametro.

A.2. fichero datos.tex \section{MI seccion} Mi texto

A.3. platilla.tex \documentclass[12pt,a4paper]{article} \usepackage[spanish, activeacute]{babel} %Espa~ nolizacion \usepackage[latin1]{inputenc} %Letras con acentso, e~ nes \usepackage{listings} \usepackage{makeidx} % Indice de materias \makeindex % Indice de materias \usepackage{ifpdf} \ifpdf \usepackage[pdftex]{graphicx} \else \usepackage[dvips]{graphicx} \DeclareGraphicsExtensions{.eps,.ps,.eps.gz,.ps.gz,.jpg,.gif} \DeclareGraphicsRule{.jpg}{eps}{.jpg.bb}{‘jpgtops #1} Por Paco Aldarias

65/77


LATEX \DeclareGraphicsRule{.gif}{eps}{.gif.bb}{‘giftops #1} \DeclareGraphicsRule{.png}{eps}{.png.bb}{’pngtops #1} \fi \usepackage{fancyhdr} \pagestyle{fancy} \usepackage{graphicx} \usepackage{hyperref} \title{titulo} \author{Por Paco Aldarias Raya} \date{Impreso: \today} \usepackage{lastpage} %Ultima pagina. \addtolength{\headwidth}{\marginparwidth} \addtolength{\headwidth}{\marginparsep} \fancypagestyle{plain} {% \fancyhead[l]{} \fancyhead[r]{} \fancyhead[c]{\bfseries titulo} \renewcommand{\headrulewidth}{0.5pt} \fancyfoot[l]{Por Paco Aldarias} \fancyfoot[c]{} \fancyfoot[r]{\thepage/\pageref{LastPage}} \renewcommand{\footrulewidth}{0.5pt} } \lhead{} \chead{\bfseries titulo} \rhead{} \renewcommand{\headrulewidth}{0.4pt} \lfoot{Por Paco Aldarias} \cfoot{} \rfoot{\thepage/\pageref{LastPage}} \renewcommand{\footrulewidth}{0.4pt} \usepackage{tocbibind} \begin{document} \maketitle \input{prologo1} \tableofcontents \input{fichero_datos} \printindex

Por Paco Aldarias

66/77


LATEX \end{document}

A.4. plantilla.sh echo Uso: ./plantilla.sh fichero "Titulo" echo Creando $1.tex con titulo $2 cp plantilla.tex ${1}.tex sed -e "s/fichero/${1}/g" ${1}.tex > temp.tex mv temp.tex ${1}.tex sed -e "s/titulo/${2}/g" ${1}.tex > temp.tex mv temp.tex ${1}.tex

Por Paco Aldarias

67/77


LATEX

CAPITULO B

´ de ficheros Script de Generacion

´ B.1. Introduccion Vamos a ver scripts para generar ficheros. Disponemos de tres ficheros: 1. genera.sh Fichero que permite generar pdf, html. ./genera.sh fichero 2. pdf2.sh Permite conviertir pdf en dos paginas. ./pdf2 fichero

B.2. genera.sh echo xxxxxxxxxxxxxxxxxxx #echo Creando el indice echo xxxxxxxxxxxxxxxxxxx makeindex $1.idx echo xxxxxxxxxxxxxxxxxxxxxxx echo Creando fichero $1.dvi echo xxxxxxxxxxxxxxxxxxxxxxxx #latex \\nonstopmode \\input latex \\input $1.tex #kdvi $1.dvi &

$1.tex

#echo xxxxxxxxxxxxxxxxxxxxxxxxxxxx #echo Creando fichero $11.ps a 1 cara #echo xxxxxxxxxxxxxxxxxxxxxxxxxxxx #dvips $1.dvi -o $11.ps echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxx echo Creando fichero $1.pdf Por Paco Aldarias

68/77


LATEX echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #dvipdfm $1.dvi pdflatex $1.tex #xpdf $1.pdf & #pstops "2:0L@.7(21cm,0)+1L@.7(21cm,14.85cm)" $11.ps $12.ps xpdf $1.pdf & #echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxx #echo Creando ficheros pdf #echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #ps2pdf $1.ps #ps2pdf $12.ps echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx echo Creando fichero $1.htm echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx latex2html $1 -no_subdir -split 0 -local_icons 1 \ -show_section_numbers \ -no_auto_link -no_navigation # Eliminano direcciones absolutas. sed -e ’s:/wind/pagina/pacodebian//::g’ $1.html > $1.html1 mv $1.html1 $1.html #echo Creando fichero $1.txt ##pdftotext $1.pdf #echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #dest=/hdd/pagina/pacodebian/ #echo Copiandolo a la pagina a $dest #echo xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #cp $1.tex $dest #cp $1*.tex $dest #cp $1.txt $dest #cp $1*.pdf $dest #cp $1.html $dest #cp $1.css $dest #cp *.png $dest #cp *.jpg $dest #cp *.gif $dest

# Limpiando #rm *.log *.toc rm *.log #rm -f *.ps

Por Paco Aldarias

*.out *.dvi *.aux

69/77


LATEX rm *.dvi rm *.out rm *.aux echo Documento latex

$1 generado | festival --tts --language spanish

B.3. pdf2.sh echo Crendo pdf a doble cara echo Creando ps pdftops $1.pdf echo creadno ps s dos carasa pstops "2:0L@.7(21cm,0)+1L@.7(21cm,14.85cm)" $1.ps $12.ps echo creado pdf del ps a dos caras ps2pdf $12.ps echo Borrando los ps creados rm $12.ps rm $1.ps #xpdf $12.pdf acroread $12.pdf &

Por Paco Aldarias

70/77


LATEX

CAPITULO C

´ Script para imagenes

´ C.1. Introduccion ´ Vamos a ver como se pueden introducir imagenes (no eps): jpg, png, gif. ´ Cuando generamos un fichero latex, las imagines no eps, no son admintidas en ˜ (boundign box). la orden latex fichero.tex, ya que no conoce el tamano Para ello nos generamos ficheros imagen.x.bb (siendo x extension no eps), que ˜ definen los tamanos. Disponemos de los siguientes ficheros. 1. ejemplo.tex 2. Para jpg: jpgbb, jpgtops 3. Para gif: gifbb, giftops 4. Para png: pngbb, pngtops

C.2. ejemplo.tex \documentclass[12pt,a4paper]{article} \usepackage[spanish, activeacute]{babel} %Espa~ nolizacion \usepackage[latin1]{inputenc} %Letras con acentso, e~ nes

\usepackage{ifpdf} \ifpdf \usepackage[pdftex]{graphicx} \else \usepackage[dvips]{graphicx} \DeclareGraphicsExtensions{.eps,.ps,.eps.gz,.ps.gz,.jpg,.gif} \DeclareGraphicsRule{.jpg}{eps}{.jpg.bb}{‘jpgtops #1} \DeclareGraphicsRule{.gif}{eps}{.gif.bb}{‘giftops #1} \DeclareGraphicsRule{.png}{eps}{.png.bb}{‘pngtops #1} \fi \usepackage{fancyhdr} \pagestyle{fancy}

\title{titulo} Por Paco Aldarias

71/77


LATEX \author{Por Paco Aldarias Raya} \date{Impreso: \today}

\begin{document} \maketitle \tableofcontents \input{fichero_datos} \end{document}

C.3. Imagenes jpg C.3.1. jpgbb if [ $# = "0" ] ; then djpeg | pnmtops -noturn 2> /dev/null | \ awk ’/^%[%]*BoundingBox/ {print; exit}’ ; else for jpg in $* ; do djpeg $jpg | pnmtops -noturn 2> /dev/null | \ awk ’/^%[%]*BoundingBox/ {print; exit}’ > $jpg.bb ; done ; fi

C.3.2. jpgtops #! /bin/sh # jpgtops - Use # The output is # to be used as djpeg -pnm $* |

this to convert a SINGLE jpg file into ps sent to stdout, as this is intended a filter pnmtops -noturn 2> /dev/null

C.4. Imagenes png C.4.1. pngbb if [ $# = "0" ] ; then pngtopnm | pnmtops -noturn 2> /dev/null | \ awk ’/^%[%]*BoundingBox/ {print; exit}’ ; else for png in $* ; do pngtopnm $png | pnmtops -noturn 2> /dev/null | \ awk ’/^%[%]*BoundingBox/ {print; exit}’ > $png.bb ; done ; fi

Por Paco Aldarias

72/77


LATEX

C.4.2. pngtops #! /bin/sh pngtopnm $* | pnmtops -noturn 2> /dev/null

´ C.5. Imagenes gif C.5.1. gifbb #! /bin/sh if [ $# = "0" ] ; then giftopnm | pnmtops -noturn 2> /dev/null | \ awk ’/^%[%]*BoundingBox/ {print; exit}’ ; else for gif in $* ; do giftopnm $gif | pnmtops -noturn 2> /dev/null | \ awk ’/^%[%]*BoundingBox/ {print; exit}’ > $gif.bb ; done ; \end{lstlisting} \subsection{giftops} \begin{lstlisting} #! /bin/sh giftopnm $* | pnmtops -noturn 2> /dev/null

Por Paco Aldarias

73/77


LATEX

CAPITULO D

Latex con make

´ D.1. Introduccion Sacado del man make: ”Make es una utilidad de GNU para mantener grupos de programas.” Es necesario tener el fichero makefile, para que llamar al make desde consola sepa que hacer.

D.2.

Varios comandos en una regla del fichero Makefile La forma en la que se escriben las reglas es esta:

etiqueta : [dependencia1 ...] [;comandos] [# comentarios] [(tabulaci´ on) comandos] [# comentarios] o objetivo: requisito comando1; comando2; comando3 o objetivo: requisito comando1; comando2; comando3 o destino ... : prerequisito .. comando comando comando Siendo destino es el nombre del fichero q es generado por make. prerequisito es el fichero que es usado como entrada paracrear destino comando es una accion que lleva a cabo. ´ de una linea. Debemos poner una tabulacion Nota: Una regla puede tener mas ´ al principio de cada comando. Cada linea se ejecuta en paralelo con las demas. Por Paco Aldarias

74/77


LATEX

D.3. Como make procesa makefile Por defecto make comienza con el primer destino. Esto es llamado destino por defecto. Puede que los otros destinos o targets se activen si forman parte de los prerrequisitos. Si queremos que make solo haga un destino debemos poner make destino

D.4. Comandos del make 1. make -f mimake -f permite especificar el fichero de configuracion.

D.5. Ejemplos en latex ´ D.5.1. Ejemplo con genericos y varios pasadas en latex TEX = latex %.dvi:%.tex # pattern rule para LaTeX $(TEX) $< ; $(TEX) $<

´ D.5.2. Ejemplo con genericos all: tutorial.ps plantilla-1.ps plantilla-2.ps transparencias.ps \ tutorial-2pag.ps plantilla-2-tex.ps clean: rm -f tutorial.ps tutorial-2pag.ps plantilla-1.ps \ plantilla-2.ps transparencias.ps tutorial-2pag.ps \ plantilla-2-tex.ps *.dvi *.log *.aux *.toc *~ # C´ odigo plantilla a transparencia plantilla-2-tex.ps: plantilla-2.tex a2ps -p -8 -1 -B plantilla-2.tex > plantilla-2-tex.ps # Tutorial a 2 paginas tutorial-2pag.ps: tutorial.ps mpage -A2 $< > $@ # Generica para generar postscript %.ps: %.dvi dvips -t a4 -o $@ $< # Generica para generar dvi %.dvi: %.tex latex $< latex $< latex $<

Por Paco Aldarias

75/77


LATEX

D.6. Ejemplos en c D.6.1. Ejemplo simple en c edit : main.o kbd.o command.o display.o \ insert.o search.o files.o utils.o cc -o edit main.o kbd.o command.o display.o \ insert.o search.o files.o utils.o main.o : main.c defs.h cc -c main.c kbd.o : kbd.c defs.h command.h cc -c kbd.c command.o : command.c defs.h command.h cc -c command.c display.o : display.c defs.h buffer.h cc -c display.c insert.o : insert.c defs.h buffer.h cc -c insert.c search.o : search.c defs.h buffer.h cc -c search.c files.o : files.c defs.h buffer.h command.h cc -c files.c utils.o : utils.c defs.h cc -c utils.c clean : rm edit main.o kbd.o command.o display.o \ insert.o search.o files.o utils.o Con varialbles: objects = main.o kbd.o command.o display.o \ insert.o search.o files.o utils.o edit : $(objects) cc -o edit $(objects) main.o : main.c defs.h cc -c main.c kbd.o : kbd.c defs.h command.h cc -c kbd.c command.o : command.c defs.h command.h cc -c command.c display.o : display.c defs.h buffer.h cc -c display.c insert.o : insert.c defs.h buffer.h cc -c insert.c search.o : search.c defs.h buffer.h cc -c search.c files.o : files.c defs.h buffer.h command.h cc -c files.c Por Paco Aldarias

76/77


LATEX utils.o : utils.c defs.h cc -c utils.c clean : rm edit $(objects)

D.6.2.

Ejemplo de programa en c

lista : lista.o main.c lista.h gcc lista.o creditos.o main.c -o lista lista.o : lista.c gcc -c lista.c creditos.o : creditos.c gcc -c creditos.c

D.6.3.

Ejemplo de programa en c con variables

FILES= flectura.c fagnadir.c agnadir.c ini.c \ estad.c varios.c mensaje.c flujo.c\ describe.c juntar.c selec.c ordenar.c OFILES=flectura.o fagnadir.o agnadir.o ini.o \ estad.o varios.o mensaje.o flujo.o\ describe.o juntar.o selec.o ordenar.o PFILE= main.c LIBS= -lm NOMBRE= pp all: $(OFILES) gcc -g -o $(NOMBRE) $(OFILES) $(PFILE) $(LIBS) comp: $(FILES) gcc -g -c $(FILES) save: tar cvfz /home/iolalla/pp.tgz /home/iolalla/pepe

D.7. Make para latex con plantilla D.7.1. makefile.sh echo "Uso: ./makefile.sh fichero [pdf|html|..]" cp makefileplantilla $1_make sed -e "s/fichero/${1}/g" $1_make > makefiletemp mv makefiletemp $1_make Por Paco Aldarias

77/77


LATEX

echo "make -f" $1_make $1.$2 make -f $1_make $1.$2

D.7.2. makefileplantilla TEX=latex f=fichero.tex

fichero_datos.tex

fichero.all: fichero.dvi fichero.pdf fichero2.pdf \ fichero.html fichero.zip fichero.mio: fichero.dvi fichero.pdf fichero.html fichero.latex: $(f) $(TEX) fichero.tex; fichero.dvi: $(f) $(TEX) fichero.tex; makeindex fichero.idx; $(TEX) fichero.tex;

fichero.bib: $(f) fichero.bib $(TEX) fichero.tex; bibtex fichero; makeindex fichero.idx; $(TEX) fichero.tex;

fichero.pdf: $(f) pdflatex fichero.tex; xpdf fichero.pdf; fichero.html: $(f) latex2html fichero -no_subdir -split 0 \ -local_icons 1 -show_section_numbers -no_auto_link fichero2.pdf: fichero.pdf pdftops fichero.pdf; pstops "2:0L@.7(21cm,0)+1L@.7(21cm,14.85cm)" \ fichero.ps fichero2.ps; ps2pdf fichero2.ps; rm fichero2.ps fichero.ps; fichero.zip: fichero.tex zip -u $(f) fichero.clean: Por Paco Aldarias

78/77


LATEX rm -f fichero.log fichero.ps \ fichero.dvi fichero.out fichero.aux fichero.txt: fichero.pdf pdftotext fichero.pdf

´ D.8. Mas informacion gunzip -c /usr/share/info/make.info-1.gz | less more gunzip -c /usr/share/info/make.info-2.gz | less more gunzip -c /usr/share/info/make.info-3.gz | less more ...

D.9. Bibliografia ´ al programa make 1. Introduccion http://www.unav.es/cti/curso-c/make.html

Por Paco Aldarias

79/77


LATEX

Bibliograf´ıa

[1] Cascales Salinas Bernardo. Latex una imprenta en sus manos. Prentice Hall, 1 ˜ ISBN 84-920381-9-5. edition, 2000. En Espanol, [2] Cascales Salinas Bernardo. El libro de latex. Prentice Hall, 1 edition, 2003. En ˜ ISBN 84-205-3779-9. Espanol, [3] DES. Manual latex. http://xm1.net.free.fr/linux/documentation.html. [4] Goossens F. Mittelbach and A. Samarin. The LaTeX Companion. Addison-Wesley, 1 edition, 1988. Libro en ingles.

Por Paco Aldarias

80/77


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.