Soporte CJK

Añadir soporte para idiomas ideográficos es un poco difícil. Sin embargo, una vez que lo haya conseguido, funcionará bastante bien. Instalar otros paquetes le permitirá trabajar con configuraciones extra.

Sugerencia

Su distribución Linux® puede contener ya algún paquete de CJK (chino, japonés, coreano) preparado, y por tanto no vale la pena que lo instale de forma manual. ¡Compruébelo antes seguir adelante!

Existe la posibilidad de usar el paquete ucs para escribir pequeños trozos de texto de CJK, pero esta opción está muy limitada y no podrá manejar, entre otras cosas, líneas nuevas. No obstante instalará el paquete completo CJK-LATEX y hará que funcione para ambos, para LATEX y para PDFLATEX. Gran parte de este material está inspirado en la página sobre como configurar PDFLATEX de Pai H. Chou.

  1. Descargue el paquete CJK. Copie los archivos desempaquetados a una subcarpeta apropiada de $TEXMF, y haga lo mismo que en el caso del paquete ucs (Vea El paquete ucs). Los archivos serán desempaquetados en una carpeta CJK/X_Y.Z, aunque esto no es importante una vez que los haya desempaquetado, aunque probablemente su mantenimiento sí sea más ordenado y fácil.

  2. A continuación debe descargar un tipo de letra que soporte todos los caracteres de CJK que necesite. Puede elegir cualquier archivo *.ttf que necesite, aunque en este caso usaremos Cyberbit. Descomprima el archivo y renombre Cyberbit.ttf a cyberbit.ttf, puesto que las mayúsculas pueden confundir al sistema.

    Coloque cyberbit.ttf en una carpeta con Unicode.sfd, y genere los archivos *.tfm y *.enc con la orden $ ttf2tfm cyberbit.ttf -w cyberbit@Unicode@. Por alguna razón, algunas veces esto no proporciona los cientos de archivos necesarios. Si este es su caso, debería descargar los archivos *.tfm y *.enc.

    Coloque los archivos *.tmf en una carpeta adecuada, como $TEXMF/fonts/tfm/bitstream/cyberbit/. Los archivos *.enc se instalarán en $TEXMF/pdftex/enc/cyberbit/.

  3. Ahora necesitamos un archivo de mapa para conectar los archivos *.enc con la fuente. Descargue cyberbit.map e instálelo en $TEXMF/pdftex/config/.

  4. Descargue otro archivo, c70cyberbit.fd, y colóquelo en la carpeta adecuado. Puede seleccionar, por ejemplo, $TEXMF/tex/misc/.

  5. El último archivo que debemos generar es un tipo de letra PostScript® de Tipo 1, necesaria para leer los archivos DVI generados con LATEX. Ejecute la orden $ ttf2pfb cyberbit.ttf -o cyberbit.pfb, y copie el resultado cyberbit.pfb en una carpeta, como por ejemplo, $TEXMF/fonts/type1/cyberbit/.

  6. Coloque ahora cyberbit.ttf en un lugar en el que LATEX pueda encontrar este tipo de letra. Puede colocarla, por ejemplo, en una carpeta llamado $TEXMF/fonts/truetype/.

  7. Verifique el archivo de configuración que se encuentra en $TEXMF/web2c/texmf.cnf, y asegúrese de que la línea que contiene TTFONTS esté descomentada y apunte a la carpeta en que haya guardado cyberbit.ttf.

  8. Para hacer posible que PDFLATEX use sus fuentes CJK, es necesario añadir la siguiente línea al archivo de configuración $TEXMF/pdftex/config/pdftex.cfg. Añada map +cyberbit.map al archivo para completar la configuración de PDFLATEX.

  9. Para configurar LATEX y poder generar archivos DVI con caracteres CJK, debe añadir una línea al archivo ttfonts.map. El archivo puede encontrarse en una carpeta llamada $TEXMF/ttf2pk/, aunque probablemente deba buscarlo. Añada la línea cyberbit@Unicode@ cyberbit.ttf en él.

  10. A continuación ejecute la orden texhash y el sistema debería estar listo.

Para verificar si su configuración es correcta, puede intentar compilar este archivo de test.

Problemas con CJK

Existen algunas cosas que pueden ir mal cuando se añade la compatibilidad con CJK de forma manual. Si parece que algunas no funcionan, la siguiente lista puede serle de ayuda.

  • Obviamente, si ejecuta LATEX como usuario y no como root, debe permitir a los usuarios normales acceder a los archivos nuevos. Asegúrese de que todos los archivos y carpetas están accesibles usando la orden chmod.

  • Si LATEX escribe un DVI sin problemas, pero no puede verlo, es posible que existan problemas en la generación automática de los tipos de letra *.pk. Se supone que se generarán al vuelo cuando se esté viendo un archivo DVI, pero esto puede fallar por una serie de razones: Verifique nuevamente ttfonts.map de la primera línea personalizada. Puede suceder que su orden ttf2pk, que suele ser llamada por el visor DVI se haya compilado sin soporte para las bibliotecas kpathsea. Si este es su caso ttf2pk --version hará que no se creen referencias a kpathsea. Como el soporte para estas bibliotecas es necesario, debería encontrar un paquete nuevo, o recompilar FreeType 1 por sí mismo.

¿Cómo puedo hacer entradas CJK en Unicode?

Existen diferentes motores de entrada, y escoger entre uno u otro dependerá de sus preferencias personales. El autor usa Skim, que se ha portado a KDE a partir del motor Scim. Vea la documentación de su distribución para aprender cómo instalar estos programas. La configuración de estos programas puede ser complicado, en el caso de Skim debe definir la variable de entorno XMODIFIERS="@im=SCIM" antes de iniciar las X.