,

Cómo automatizar la Creación de Catálogos con InDesign


Autor: F. Javier Gómez Laínez
Especialista en soluciones de automatización para entornos editoriales.

Twitter: @nousmedis

Desde el lanzamiento de la versión 1.0 allá por el año 1999, InDesign se ha convertido en la aplicación estándar en la industria de la autoedición. La increíble cantidad de herramientas tipográficas y de diseño que pone en manos de los maquetadores permiten compaginar documentos de una calidad y manufactura exquisitas de una forma relativamente sencilla. Sin embargo, Adobe sólo tuvo en cuenta los métodos de composición tradicionales cuando decidió implementar la forma de trabajo del programa, lo que permitió la rápida adopción de la aplicación por su fácil curva de aprendizaje. Como contrapartida, adecuar el programa a un flujo de trabajo idóneo para la creación de catálogos requiere utilizar una serie de técnicas que muchos usuarios desconocen y que, en muchas ocasiones, demandan un perfil más cercano al programador que al diseñador.

Elementos clave para la producción de catálogos

Dejando de lado el apartado gráfico, que depende más de un factor estético, todos los catálogos tienen en común:

Un origen de datos. El cliente suele proporcionar la información en forma de hoja de cálculo de Excel, como texto separado por comas o tabuladores, como documento XML o, en los casos más avanzados, en forma de conexión a una base de datos.

Un diseño regular. Para que un catálogo sea una herramienta de consulta efectiva, el lector debe ser capaz de encontrar el producto que busca gracias a una estructura homogénea, que divida el catálogo en categorías y familias de productos. Cada producto se presenta de una forma similar, lo que permite la consulta rápida de sus características y la comparación con otros productos similares.

La actualización frecuente de contenidos y precios. El principal objetivo de un catálogo es la venta de productos. Cuanto menor sea el tiempo requerido para su maquetación, mejor será la correlación entre el contenido y la oferta de productos en un momento dado.

Múltiples versiones. Los catálogos suelen tener más de una variante según el público al que van dirigidos, desde una lista de precios de venta al público hasta un catálogo de referencias destinado a un mayorista. Los idiomas suelen ser otro motivo por el que un mismo catálogo debe editarse varias veces.

Como puede constatar, una de las características fundamentales necesarias para cumplir con los requisitos anteriores es la automatización del proceso; de este modo podremos utilizar el origen de datos que nos proporcione el cliente (punto 1), producir un diseño homogéneo y predecible (punto 2), obtener una versión actualizada del catálogo en un tiempo mínimo (punto 3) y aprovechar un mismo diseño para, mediante la actualización de los contenidos, obtener versiones en diferentes idiomas o con otro sistema de precios (punto 4).

Veamos ahora las opciones de que disponemos.

Opciones de automatización disponibles

InDesign carece de un panel similar a los que ya tienen Photoshop e Illustrator, que permita grabar y ejecutar fácilmente secuencias de comandos. En su lugar utiliza una serie de tecnologías avanzadas, mucho más potentes pero también mucho más difíciles de aprender y aplicar por el usuario tipo de la aplicación.

InDesign proporciona múltiples métodos para automatizar la maquetación de documentos, entre los que cabe destacar:

Combinación de datos.
Secuencias de comandos: JavaScript / AppleScript / Visual Basic Script.
XML.
Módulos externos, denominados plug-ins, generalmente desarrollados y mantenidos por terceros.

Veamos a continuación cada uno de los métodos provistos por el programa, haciendo hincapié en los pros y los contras.

Combinación de datos

Se trata de una utilidad que permite automatizar catálogos compuestos por elementos repetitivos simples —como tarjetas de visita, listas de precios o catálogos de producto sencillos— utilizando los datos de un archivo de texto separado por comas o tabuladores.

De forma resumida, para crear un catálogo mediante la combinación de datos basta con seguir estos sencillos pasos:

  1. Preparar un documento de texto en el que utilizaremos como carácter delimitador una coma (formato .csv) o un tabulador (formato .txt). La forma más sencilla de obtener este tipo de documento es mediante una simple exportación desde una base de datos o una hoja de cálculo, como Excel o Numbers.
  2. Si queremos insertar imágenes como parte del proceso de automatización, basta con indicar la ruta al archivo en el formato de la plataforma. Para ello, lo más sencillo es colocar una imagen en el documento de InDesign y copiar la ruta a la misma desde el panel Vínculos (botón derecho del ratón, “Copiar ruta de acceso de estilo plataforma”). Luego podemos utilizar una sencilla fórmula en nuestra hoja de cálculo o base de datos para, a partir del nombre del archivo, obtener la ruta completa. Para que InDesign reconozca una ruta de acceso como un archivo gráfico, hay que preceder el nombre del campo correspondiente con el carácter arroba. Por ejemplo, un nombre de campo válido seria “@foto”.
  3. En el menú ventana, abrimos el panel Combinación de datos. En el menú del panel, escogemos la opción “Seleccionar archivo de origen de datos” y seleccionamos el documento que hemos creado en el paso anterior.
  4. El panel Combinación de datos mostrará ahora los nombres de los campos del documento de origen. Basta con que cree un marco de texto, coloque el cursor de texto y haga doble clic en el nombre del campo que desee insertar. Puede seleccionar este nombre de campo y asignarle un estilo de párrafo o carácter, tal y como haría con el texto definitivo. Puede insertar tantos campos de texto como necesite en el mismo marco, o bien crear marcos de texto independientes para cada campo o conjunto de campos.

    imagen001

    El panel de Combinación de datos muestra los nombres de los campos disponibles en el origen de datos; a su izquierda puede observar la estructura del modelo con los campos aplicados

  5. Para insertar una imagen, cree un marco gráfico, selecciónelo y haga doble clic en un campo de imagen. Lo reconocerá fácilmente en el panel Combinación de datos porque muestra un pequeño icono a la izquierda del nombre del campo.
  6. Ahora puede marcar el cuadro de verificación “Previsualizar” para ver el aspecto final que tendrá el documento. Puede usar las flechas izquierda y derecha del panel para ir cambiando de registro. Si lo desea, abra las opciones de Combinación para que el mismo diseño se repita horizontal y verticalmente en la misma pá Cuando el aspecto de la previsualización sea correcto, puede combinar el documento completo.

    imagen002

    Si marca la casilla Previsualizar podrá ver los datos reales aplicados al modelo. Utilícela para realizar los últimos ajustes.

Pros:
Fácil de utilizar e implementar
No supone ningún coste adicional
No son necesarios conocimientos de programación
Requisitos técnicos básicos: basta utilizar un documento de texto simple
Contras:
Sólo permite realizar diseños básicos, basados en elementos repetitivos
El modelo básico que se repite no admite modificaciones ni ajustes dinámicos
No existe comunicación bidireccional entre el documento final y los datos originales: cualquier cambio en los datos debe de introducirse manualmente o bien debe volver a generarse el documento completo
No admite lógica de programación, como cambiar el modelo utilizado en base al número de imágenes de un producto, sus dimensiones o la longitud de texto.

Secuencias de comandos

Gracias a la compatibilidad de InDesign con secuencias de comandos (JavaScript, AppleScript o Visual Basic Script), puede automatizar múltiples tareas de producción, como la colocación y sustitución de imágenes, la corrección de errores en el texto y la preparación de archivos para su impresión. Para flujos de trabajo más complejos, suele utilizarse en combinación con XML e IDML.

De los tres lenguajes de secuencias de comandos soportados por InDesign, recomendamos la utilización de JavaScript, no sólo porque se trata de una solución multiplataforma, sino porque su sintaxis es la misma que se emplea en el desarrollo de funcionalidades multimedia en páginas Web, lo que se traduce en la gran abundancia de documentación, ejemplos y desarrolladores existente.

Para escribir un script a medida, necesitará el entorno de desarrollo proporcionado por Adobe: ExtendedScript Toolkit. Se trata de una aplicación opcional incluida en la  suscripción a Adobe Creative Cloud.

Si no dispone del conocimiento o recursos necesarios para desarrollar sus propios scripts, siempre puede acudir a fuentes externas, que proporcionan soluciones completas por muy poco (o ningún) coste, como indiscriptsrorohiko, Peter Kahrel, etc.

Para instalar un script, basta con seguir estos sencillos pasos:

  1. Descargar el script desde la página Web del desarrollador. Se trata de un archivo con terminación .jsx (javascript), .scpt (AppleScript) o .vbs (Visual Basic Script). Algunos son soluciones comerciales en formato binario, con terminación .jbin, que no podrá editar en ExtendScript.
  2. Coloque el script en la siguiente ruta: Adobe InDesigns CC 2014 > Scripts > Scripts Panel . Si lo desea, puede hacer subcarpetas para organizar grupos de scripts con funciones similares.
  3. En InDesign, abra el panel Scripts (Ventana > Utilidades > Scripts).
  4. Localice el nombre del script que desee ejecutar y haga doble clic en él. Los scripts más elaborados suelen mostrar un cuadro de diálogo, barras de progreso, etc. de manera que se comportan como pequeñas aplicaciones dentro del programa.

    importar múltiples páginas de catálogos con indesign

    Los scripts más elaborados presentan al usuario cuadros de diálogo personalizados.

  5. Algunos scripts requieren que realice alguna modificación en el código: haga clic sobre su nombre con el botón derecho del ratón y escoja la opción “Editar Script”
Pros:
Existen multitud de scripts que automatizan diversas tareas por un coste muy bajo o casi nulo.
No es necesario adquirir ninguna herramienta adicional para programar sus propios scripts.
Los scripts más elaborados disponen de un interfaz de usuario que facilita la entrada de datos variables, como nombres de archivo o números de página.
Suelen encontrarse en formato multiplataforma, por lo que un mismo Script puede ejecutarse en un Macintosh o en un PC con Windows.
Contras:
Realizar tareas complejas o a medida requiere conocimientos avanzados de programación.
La mayoría de scripts que pueda obtener de forma gratuita no ofrecen ningún tipo de soporte al usuario final, por lo que utilizarlos en flujos de trabajo críticos no suele ser aconsejable.
El coste de desarrollo de una solución a medida es muy elevado.

XML

XML (Extensible Markup Language, lenguaje de marcado extensible) permite reutilizar los datos de un archivo o automatizar el proceso de sustitución de datos en un archivo con datos de otro archivo. También permite importar datos de un origen de datos y maquetar, de forma completamente automatizada, un documento completo. XML utiliza etiquetas para describir partes de un archivo, por ejemplo, un encabezado, una imagen o un artículo.

catalogos indesign

El panel Estructura permite insertar datos desde un documento XML de forma manual o automática.

XML se utiliza ampliamente en entornos editoriales, pues constituye una herramienta idónea para el intercambio de información entre diferentes plataformas, separando el contenido de la estructura. Una prueba de ello es el mismísimo InDesign, que utiliza una versión propia de XML, denominada IDML, para intercambiar documentos entre diferentes versiones de la aplicación.

A grandes rasgos, un flujo de trabajo XML consta de los siguientes pasos:

  1. Preparar un documento XML válido a partir de un origen de datos, generalmente una base de datos. En ocasiones será necesario un proceso de transformación intermedio, denominado XSLT (Transformación XSL) para convertir el XML original en un formato que pueda procesar InDesign.
  2. Utilizar etiquetas a medida para describir los diferentes elementos que forman parte de la estructura de un documento, como titulares, gráficos o tablas.
  3. Importar el documento XML mediante el panel estructura (Ver > Estructura > Mostrar estructura).
  4. Asignar etiquetas XML a estilos de párrafo y carácter en InDesign.
  5. Colocar el archivo XML en un marco de texto maestro para que el documento se componga automáticamente.
  6. Opcionalmente, puede utilizar una secuencia de comandos para automatizar ciertas tareas de entrada complejas, como alternar el uso de diferentes páginas maestras o el estilo de objeto aplicado a un marco de imagen.
Pros:
Posiblemente se trate de la mejor tecnología para entornos editoriales: está probada y es ampliamente utilizada para generar manuales o catálogos complejos.
La separación del contenido de la estructura permite generar diferentes formatos de salida a partir de un mismo origen de datos.
Es posible incluir secuencias de script en un flujo de trabajo XML para automatizar todavía más el proceso.
Contras:
El coste de desarrollar e implementar flujos de trabajo XML para generar una salida compleja es muy elevado.
Se requiere el uso de varias tecnologías, empezando por el propio XML, pero también transformaciones XSLT, base de datos, gestores de contenidos compatibles, etc.
Es necesario etiquetar correctamente el contenido. XML es una tecnología estricta que dispone de reglas propias (DTD) que pueden llegar a ser complejas y difíciles de implementar en el documento de origen. Generalmente se debe utilizar una herramienta especializada y los operarios deben recibir formación a medida.

Módulos externos (plug-ins)

La necesidad de automatizar procesos en InDesign, sobre todo para la elaboración de catálogos y listas de precios, tiene una demanda tan alta que diversas empresas han lanzado soluciones específicas para facilitar la creación de documentos a partir de diferentes orígenes de datos.

Se trata de módulos completos que añaden nuevos comandos de menú y paneles a la aplicación, convirtiendo a InDesign en una completa herramienta de creación automatizada de catálogos. El hecho de disponer de una interfaz de usuario completa facilita la creación de automatizaciones complejas sin necesidad de conocimientos previos de programación.

De entre todos los módulos existentes, uno destaca por encima de todos: EasyCatalog. Este plug-in es capaz no sólo de importar datos de cualquier origen (base de datos, hojas de cálculo, documentos de texto separados por comas o tabuladores, documentos XML, gestores de contenido, etc) sino que los puede transformar “en vivo” para adaptarlos a sus necesidades concretas. Por ejemplo, es capaz de calcular el número de orden en el que aparece un producto, aplicar un porcentaje de rebaja a un precio, seleccionar una forma específica de colocar un elemento dependiendo del número de imágenes y su proporción, adaptar dinámicamente el tamaño de un marco de texto para dar cabida a una descripción de longitud variable, cambiar el color de un texto en función de su contenido, reemplazar dinámicamente un texto por otro mediante búsquedas GREP, etc.

imagen005

EasyCatalog añade una serie de paneles en InDesign que facilitan la tarea de composición de catálogos complejos.

Los pasos para automatizar un catálogo con EasyCatalog son:

  1. Importar los datos al panel datos de EasyCatalog. Puede utilizar un documento de texto separado por comas, una hoja de cálculo Excel, una base de datos compatible con ODBC, un documento XML o un gestor de contenidos como Woodwing Enterprise o Sales Layer.
  2. Transformar los datos para que se adapten a sus necesidades de diseño. Por ejemplo, especificar una ruta para el contenido de imágenes en diversos formatos, convertir una unidad en moneda, realizar operaciones de buscar/cambiar dinámicas, etc.
  3. Crear uno o mas modelos de producto que serán utilizados durante la creación del documento. EasyCatalog puede cambiar el modelo dependiendo del número de imágenes, la proporción de las mismas, la longitud del texto, la inclusión de tablas, etc.
  4. Opcionalmente, crear varias páginas maestras que el programa utilizará para colocar elementos específicos. Por ejemplo, puede utilizar una página maestra diferente para productos destacados.
  5. Crear el documento final en formato InDesign y/o PDF.
Pros:
Es una solución específica para la creación automatizada de catálogos, por lo que dispone de herramientas avanzadas para facilitar la composición de todo tipo de proyectos.
Mantiene una conexión directa con los datos originales, por lo que los cambios de última hora quedarán reflejados automáticamente en el catálogo final.
Es capaz de trabajar con cualquier origen de datos: texto, xml, base de datos, hojas de cálculo… sin necesidad de conversión.
Añade lógica de programación y toma de decisiones: puede aplicar diferentes estilos según el contenido.
Dispone de soporte técnico en español, formación a medida y creación de soluciones específicas, por lo que no es necesario que invierta tiempo en aprender el programa.
Contras:
Se trata de una solución de pago.
Posee cientos de opciones, por lo que dominarlas todas puede ser un proceso largo.
Las soluciones de automatización avanzadas requieren conocimientos de programación.

En el siguiente vídeo podéis ver una muestra de las amplísimas posibilidades y la sencillez de uso de EasyCatalog:

En conclusión

Antes de embarcarse en un proyecto de automatización, debe tener claros los costes de producción actuales (horas que dedica un operario a maquetar de forma manual un catálogo, ciclos de correcciones, reuniones con el cliente, etc) y el tiempo en el que es capaz de generar una copia parcial o completa.

Todos los catálogos son automatizables en mayor o menor medida. El importante ahorro en tiempo y la infalibilidad de los datos hacen que un proceso de automatización se pueda amortizar en un periodo de tiempo ridículamente corto, que va desde un día hasta los 3 o 6 meses para proyectos más costosos.

Dependiendo de la complejidad del proyecto o del tiempo disponible para lanzar sucesivas versiones, le recomendamos que utilice una u otra solución:

  1. Para proyectos sencillos, en los que el formato de los datos no varía y la producción de un nuevo catálogo cuando los datos se modifican no es un problema, utilice la Combinación de datos. Verá cómo en uno o dos días domina el proceso completamente, y la velocidad con la que producirá sus catálogos se multiplicará por un factor de 100 o incluso 1000.
  2. Si tiene un perfil técnico o bien puede contar con la ayuda de un programador, la inclusión de JavaScript y/o XML le permitirá disfrutar de todas las ventajas de la combinación de datos y añadirá además características más avanzadas a sus catálogos, como la utilización de múltiples modelos, la alternancia entre diferentes páginas maestras, el ajuste automático de los marcos de texto a su contenido, etc. Eso sí, recuerde que deberá invertir tiempo y dinero en el desarrollo de un flujo de trabajo a medida, y que dependerá de la empresa que implemente su solución a la hora de realizar ajustes o modificaciones.
  3. Si desea diseñar catálogos más complejos que los que puede producir la combinación de datos pero no desea invertir tiempo y recursos en soluciones a medida, utilice una solución específica como EasyCatalog. Ofrece todas las ventajas de un flujo a medida pero sin ninguno de sus inconvenientes. Y lo mejor de todo es que se trata de una solución estándar e implantada en cientos de empresas, por lo que no dependerá de terceros para modificar y mejorar sus procesos productivos.