Extraer las imágenes de un fichero DOCX es sumamente sencillo sin tener que recurrir a ningún tipo de web online, ni otro software especialmente complejo de usar. DOCX es la nueva versión del formato de ficheros Word de Microsoft desde el año 2007.
Seguid leyendo y os enseñaré a extraer de forma rápida las imágenes de los ficheros DOCX desde Windows y desde GNU/Linux...
¿QUÉ ES UN FICHERO DOCX?
Al igual que los documentos con la extensión .doc los archivos .docx son archivos de texto de Microsoft Word. Con la publicación de la versión 2007 de Word, el formato se introdujo como nuevo estándar para documentos de texto. El objetivo era establecer un formato de archivo basado en XML que necesitara menos capacidad de almacenamiento. El nombre docx es una combinación de la ya conocida extensión .doc y la X de XML.
La diferencia más importante entre las extensiones .doc y .docx es el formato, es decir, el tipo de almacenamiento de la información del archivo. Un archivo .docx se comporta como un archivo ZIP que almacena el contenido (texto e imágenes) en datos XML y CSS y, a continuación, los comprime. Al abrir el archivo .docx, el contenido se vuelve a descomprimir. En conjunto, tanto el proceso de almacenamiento, como el de apertura, de un archivo .docx es más rápido y ocupa considerablemente menos espacio por archivo. Puede que hoy en día esta diferencia no parezca relevante, pero en el momento de su introducción, en 2007, aún tenía mucha relevancia para determinadas cuestiones como, por ejemplo, el envío de archivos por correo electrónico.
Extraer las imágenes de un DOCX es muy sencillo
1.- ELEMENTOS NECESARIOS PARA ESTE TUTORIAL
- Un PC con GNU/Linux (cualquiera)
- Un PC cliente con Windows con WinRAR/7-Zip/WinZIP instalado
Para extraer las imágenes desde cualquier GNU/Linux, tan solo debemos tener unzip instalado en el equipo y ejecutar un solo comando. Por ejemplo, para instalar unzip en Debian/Ubuntu ejecutaremos lo siguiente:
raul@debian:~$ sudo apt-get install unzip
En RHEL/Centos:
raul@rhel:~$ sudo yum install unzip
Una vez tenemos unzip instalado, localizaremos el fichero DOCX y ejecutaremos unzip de la siguiente forma:
raul@debian:~$ unzip FICHERO.DOCX -d DIRECTORIO_DESTINO
Un ejemplo real extrayendo las imágenes de un docx:
raul@debian:~$ unzip DOCUMENTO_PRUEBAS.docx -d salida
Archive: DOCUMENTO_PRUEBAS.docx
inflating: salida/[Content_Types].xml
inflating: salida/_rels/.rels
inflating: salida/word/document.xml
inflating: salida/word/_rels/document.xml.rels
inflating: salida/word/footnotes.xml
inflating: salida/word/endnotes.xml
inflating: salida/word/footer1.xml
inflating: salida/word/theme/theme1.xml
extracting: salida/word/media/image155.png
extracting: salida/word/media/image1.jpeg
extracting: salida/word/media/image2.jpeg
extracting: salida/word/media/image3.png
extracting: salida/word/media/image4.png
extracting: salida/word/media/image5.png
extracting: salida/word/media/image6.png
extracting: salida/word/media/image7.png
extracting: salida/word/media/image8.png
extracting: salida/word/media/image9.svg
extracting: salida/word/media/image10.png
extracting: salida/word/media/image11.png
extracting: salida/word/media/image12.png
extracting: salida/word/media/image13.png
extracting: salida/word/media/image14.png
extracting: salida/word/media/image15.png
extracting: salida/word/media/image16.png
extracting: salida/word/media/image17.png
extracting: salida/word/media/image18.png
extracting: salida/word/media/image19.png
extracting: salida/word/media/image20.png
extracting: salida/word/media/image21.png
extracting: salida/word/media/image22.png
extracting: salida/word/media/image23.png
extracting: salida/word/media/image24.png
extracting: salida/word/media/image25.png
extracting: salida/word/media/image26.png
extracting: salida/word/media/image27.png
extracting: salida/word/media/image28.png
extracting: salida/word/media/image29.png
extracting: salida/word/media/image30.png
extracting: salida/word/media/image31.png
extracting: salida/word/media/image32.png
extracting: salida/word/media/image33.png
extracting: salida/word/media/image34.png
extracting: salida/word/media/image35.png
extracting: salida/word/media/image36.png
extracting: salida/word/media/image37.png
extracting: salida/word/media/image38.png
extracting: salida/word/media/image39.png
extracting: salida/word/media/image40.png
extracting: salida/word/media/image41.png
extracting: salida/word/media/image42.png
extracting: salida/word/media/image43.png
extracting: salida/word/media/image44.png
extracting: salida/word/media/image45.png
extracting: salida/word/media/image46.png
extracting: salida/word/media/image47.png
extracting: salida/word/media/image48.png
extracting: salida/word/media/image49.png
extracting: salida/word/media/image50.png
extracting: salida/word/media/image51.png
extracting: salida/word/media/image52.png
extracting: salida/word/media/image53.png
extracting: salida/word/media/image54.png
extracting: salida/word/media/image55.png
extracting: salida/word/media/image56.png
extracting: salida/word/media/image57.png
extracting: salida/word/media/image58.png
extracting: salida/word/media/image59.png
extracting: salida/word/media/image60.png
extracting: salida/word/media/image61.png
extracting: salida/word/media/image62.png
extracting: salida/word/media/image63.png
extracting: salida/word/media/image64.png
extracting: salida/word/media/image65.png
extracting: salida/word/media/image66.png
extracting: salida/word/media/image67.png
extracting: salida/word/media/image68.png
extracting: salida/word/media/image69.png
extracting: salida/word/media/image70.png
extracting: salida/word/media/image71.png
extracting: salida/word/media/image72.png
extracting: salida/word/media/image73.png
extracting: salida/word/media/image74.png
extracting: salida/word/media/image75.png
extracting: salida/word/media/image76.png
extracting: salida/word/media/image77.png
extracting: salida/word/media/image78.png
extracting: salida/word/media/image79.png
extracting: salida/word/media/image80.png
extracting: salida/word/media/image81.png
extracting: salida/word/media/image82.png
extracting: salida/word/media/image83.png
extracting: salida/word/media/image84.png
extracting: salida/word/media/image85.png
extracting: salida/word/media/image86.png
extracting: salida/word/media/image87.png
extracting: salida/word/media/image88.png
extracting: salida/word/media/image89.png
extracting: salida/word/media/image90.png
extracting: salida/word/media/image91.png
extracting: salida/word/media/image92.png
extracting: salida/word/media/image93.png
extracting: salida/word/media/image94.png
extracting: salida/word/media/image95.png
extracting: salida/word/media/image96.png
extracting: salida/word/media/image97.png
extracting: salida/word/media/image98.png
extracting: salida/word/media/image99.png
extracting: salida/word/media/image100.png
extracting: salida/word/media/image101.png
extracting: salida/word/media/image102.png
extracting: salida/word/media/image103.png
extracting: salida/word/media/image104.png
extracting: salida/word/media/image105.png
extracting: salida/word/media/image106.png
extracting: salida/word/media/image107.png
extracting: salida/word/media/image108.png
extracting: salida/word/media/image109.png
extracting: salida/word/media/image110.png
extracting: salida/word/media/image111.png
extracting: salida/word/media/image112.png
extracting: salida/word/media/image113.png
extracting: salida/word/media/image114.png
extracting: salida/word/media/image115.png
extracting: salida/word/media/image116.png
extracting: salida/word/media/image117.png
extracting: salida/word/media/image118.png
extracting: salida/word/media/image119.png
extracting: salida/word/media/image120.png
extracting: salida/word/media/image121.png
extracting: salida/word/media/image122.png
extracting: salida/word/media/image123.png
extracting: salida/word/media/image124.png
extracting: salida/word/media/image125.png
extracting: salida/word/media/image126.png
extracting: salida/word/media/image127.png
extracting: salida/word/media/image128.png
extracting: salida/word/media/image129.png
extracting: salida/word/media/image130.png
extracting: salida/word/media/image131.png
extracting: salida/word/media/image133.png
extracting: salida/word/media/image134.png
extracting: salida/word/media/image135.png
extracting: salida/word/media/image136.png
extracting: salida/word/media/image137.png
extracting: salida/word/media/image138.png
extracting: salida/word/media/image139.png
extracting: salida/word/media/image140.png
extracting: salida/word/media/image141.png
extracting: salida/word/media/image142.png
extracting: salida/word/media/image143.png
extracting: salida/word/media/image144.png
extracting: salida/word/media/image145.png
extracting: salida/word/media/image146.png
extracting: salida/word/media/image147.png
extracting: salida/word/media/image148.png
extracting: salida/word/media/image149.png
extracting: salida/word/media/image150.png
extracting: salida/word/media/image151.png
extracting: salida/word/media/image152.png
extracting: salida/word/media/image153.png
extracting: salida/word/media/image154.png
extracting: salida/word/media/image132.png
extracting: salida/word/media/image156.png
extracting: salida/word/media/image157.png
extracting: salida/word/media/image158.png
extracting: salida/word/media/image159.png
extracting: salida/word/media/image160.png
extracting: salida/word/media/image161.png
inflating: salida/word/glossary/document.xml
inflating: salida/word/glossary/settings.xml
inflating: salida/word/_rels/settings.xml.rels
inflating: salida/word/glossary/_rels/document.xml.rels
inflating: salida/word/settings.xml
inflating: salida/customXml/item1.xml
inflating: salida/customXml/itemProps1.xml
inflating: salida/word/fontTable.xml
inflating: salida/word/glossary/styles.xml
inflating: salida/word/glossary/webSettings.xml
inflating: salida/word/glossary/fontTable.xml
inflating: salida/word/webSettings.xml
inflating: salida/docProps/core.xml
inflating: salida/docProps/app.xml
inflating: salida/docProps/custom.xml
inflating: salida/word/styles.xml
inflating: salida/word/numbering.xml
inflating: salida/customXml/_rels/item1.xml.rels
Ahora, si entramos dentro del directorio ./salida/word/media/ veremos todas las imágenes del DOCX.
En este tutorial usaremos WinRAR para extraer las imágenes de un fichero DOCX. También es válido hacerlo con 7-zip o WinZIP y el procedimiento es casi idéntico. Lo primero que haremos será abrir WinRAR desde nuestro Menú de Windows o desde un acceso directo:
Ejecutar WinRAR
Haremos click en "Archivo" y luego en "Abrir Archivo":
Abrir Archivo
Debemos seleccionar "Todos los ficheros" y luego seleccionar el archivo DOCX del cual queremos extraer las imágenes:
Seleccionar fichero
Una vez abierto el fichero DOCX, veremos un árbol de navegación a la izquierda y un directorio llamado "word". Entrando en él, veremos otro directorio llamado "media". Dentro de media estarán todas las imágenes:
Directorio media
Si queremos extraer todo el directorio "media", haremos click con el botó derecho encima de él y seleccionaremos la opción "Extraer en la carpeta especificada":
Extraer directorio
Una vez descomprimido, podremos ver todas las imágenes en el navegador de ficheros:
Ver todos los ficheros
ENJOY!