Antiword: Leer y transformar documentos de Word por consola
November 19th, 2007 by BusindreAntiword es un lector de documentos ".doc", los cuales como sabemos pertenecen al programa Word de la suite ofimática "Office" de Microsoft. AntiWord está portado a FreeBSD, BeOS, OS/2, Mac OS X, Amiga, VMS, NetWare, Plan9, EPOC, Zaurus PDA, MorphOS, Tru64/OSF y DOS. Su funcionalidad es convertir desde consola documentos de Word versiones 2, 6, 7, 97, 2000, 2002 y 2003 a texto plano, pdf, DocBook o PostScript.
Se le puede dar uso en scripts, siendo muy útil con php para ofrecer servicios de conversión de ficheros doc online. También contaremos como usarlo con gestores de correo modo texto, tipo Mutt y Exmh. Vamos a ver como se compila, instala y configura para usarlo con distintas aplicaciones en GNU/Linux.
Paquete: http://www.winfield.demon.nl/linux/antiword-0.37.tar.gz
Compilación e instalación:
$ tar -zxvf antiword-0.37.tar.gz
$ cd antiword-0.37
$ make
$ make install
$ su
# cp antiword /usr/bin/
# mkdir /usr/share/antiword/
# cp Resources/* /usr/share/antiword/
# chmod a+r /usr/share/antiword/*
# cp Docs/antiword.man /usr/man/man8/
Sintaxis: [switches] wordfile1 [wordfile2 ...]
Opciones: [-f|-t|-a papersize|-p papersize|-x dtd][-m mapping][-w #][-i #][-Ls]
-a (Salida en pdf) 10x14, a3, a4, a5, b4, b5, executive, folio, legal, letter, note, quarto, statement, tabloid. (Indica el tamaño, por defecto tamaño PDF)
-p (Salida en ps) 10x14, a3, a4, a5, b4, b5, executive, folio, legal, letter, note, quarto, statement, tabloid. (Indica el tamaño, por defecto tamaño PostScript)
Ejemplo: $ antiword -a a4 /home/busi/Contrato\ Busi.doc > sss.pdf
-f Negrita: "*palabra*", cursiva "/palabra/" subrayado "_palabra_"
Ejemplo: $ antiword -f /home/busi/Contrato\ Busi.doc > sss.txt
-i imagen nivel
Niveles:
0: Usa una extensión no estandar de Ghostscript, el fichero resultante no puede imprimir en cualquier impresora PostScript, pero es útil en caso de que no se necesita copia impresa. Esta opción es útil cuando se utiliza Ghostscript como filtro PostScript para imprimir un archivo en una impresora no PostScript.
1: No muestra imagenes.
2: PostScript level 2 compatible. (Por defecto)
3: PostScript level 3 compatible. (EXPERIMENTAL)
-m Mapa_de_caracteres: Indica el mapa de caracteres de la salida del comando (antiword-0.37/Resources/)
-r: Incluye texto borrado por el sistema de revisión de Word
-s: Incluye texto con el atributo "oculto".
-t: Muestra la salida en formato texto. (Por defecto).
-x: Muestra la salida en formato xml (DocBook (db))
-L: En el modo PostScript permite usar el modo "landscape".
Antiword proporciona avisos, aunque realmente son escasos:
sss.doc is not a Word Document. It is probably a Rich Text Format file
NOTA: La conversión a "XML/DocBook" está en fase experimental como lo esta también el soporte para el alfabeto Cirílico.
Script PHP
cp antiword-0.37/Docs/antiword.php /var/www/htpdocs/
chmod o+r /var/www/htdocs/antiword.php
Con esto mostraremos una Web para convertir ficheros .doc en nuestro apache (Cada uno que lo coloque en su directorio correspondiente) con las posibilidades más importantes del programa (Conversión a Pdf, texto, postscript, tamaño de la hoja,..).
Mutt
Añadimos a /etc/mailcap:
application/msword; antiword %s; copiousoutput
Permitirá abrir ficheros doc en consola como adjuntos de mails abiertos mediante Mutt.
Exmh
Añadimos a /etc/mailcap:
application/msword;/usr/local/bin/antiword -t %s | less; needsterminal; \
copiousoutput; print=antiword -p letter %s|lpr
Permitirá abrir ficheros doc en Exmh como adjuntos de mails abiertos mediante Exmh.
Posted in How To |
July 15th, 2008 at 11:14 am
[...] Más información y utilidades de antiword clic aquí [...]
July 15th, 2008 at 11:19 am
[...] Máis información e utilidades de antiword clic aquí [...]