sábado, 27 de febrero de 2010

EPUB vs Mobipocket (I)

Mobipocket es un formato para presentar textos que no está sujeto a ningún tamaño de página ni impresora y que cuenta con características y solera suficiente como para ser un clásico en la visualización de texto fluente. Con esto queremos decir que el formato del texto no viene fijado en origen, sino que es el programa encargado de la visualización el que tiene que interpretar la descripción del mismo y presentarlo correctamente en pantalla. O en otras palabras, el formato especifica que un bloque de texto ha de ir en cursiva, pero no indica qué cursiva ni qué fuente, que dependerá de las opciones del programa visualizador, indicadas por las preferencias del usuario, y del formato y características de la pantalla en donde se vaya a ver el texto.

Este formato nace aproximadamente en el año 2000 como consecuencia de la inexistencia de un formato adecuado para presentar texto en dispositivos móviles como teléfonos y PDAs, y rápidamente se impone casi como un estándar de facto. La empresa matriz, Mobipocket, es comprada por Amazon en 2005 para poder utilizar este formato como formato base para sus Kindle, pero mucho antes de eso los ficheros PRC y MOBI se habían extendido y se estaban usando en una amplísima categoría de dispositivos.

En concreto, Mobipocket creó visualizadores para casi cualquier trasto electrónico con pantalla, y fue de las primeras en subirse al carro de los libros-e apoyando e instalando su visor java en prácticamente todos los primeros lectores de libros-e basados en tinta electrónica.

En concreto, existen visores oficiales para Windows Mobile, Windows CE, Symbian, Palm OS, Java, BlackBerry, Psion y Windows. Con visores oficiales nos referimos a aquellos creados por la propia empresa, porque si incluimos los realizados por la comunidad, el rango de dispositivos se amplía para cubrir prácticamente cualquier cacharro con pantalla existente en el mercado.

Aparte de las propias versiones del formato, existen dos grandes divisiones en el mismo: aquel que es capaz de visualizar ficheros encriptados y no encriptados, y las que sólo son capaces de operar con los que no traen DRM incorporado. El formato interno es el mismo, pero la versión con DRM incorpora una capa de encriptación que sólo la casa matriz (y después Amazon) era capaz de añadir al fichero base.

La forma de encriptar estos ficheros es a través de un ID de 8 dígitos que puede contener cualquier letra, número o símbolo, aunque al final se estandarizó una única secuencia de combinación de dígitos y símbolos.

Posteriormente (pero antes de ser comprada por Amazon) Mobipocket sacó un programa para crear ficheros en este formato (llamado Mobipocket Creator) que permitía generar ficheros encriptados con DRM en base a un ID, que básicamente es lo que se hace cuando se compra un libro encriptado en una tienda online: el PRC se pasa por un servidor de encriptación que toma tu o tus ID (hasta 4) y devuelve el libro asociado a ti.

En general, cuando llevan la extensión PRC suelen ser ficheros con DRM y cuando usan la MOBI, sin él, pero no siempre es así.

Con la compra de Amazon se instauraron dos nuevas extensiones no documentadas al formato, los AZW y los Topaz. El primero no es más que una pequeña variación en la capa de encriptación, mientras que el segundo es casi un formato nuevo más cercano al PDF que otra cosa.

A fecha de hoy todos los formatos están rotos, es decir, teniendo un fichero con DRM y un PID válido para él, es posible obtener una copia sin la capa de encriptación. También existen rutinas de ruptura por fuerza bruta, aunque suelen ser menos utilizadas, y en el caso del Topaz todavía es necesario disponer de una copia de Kindle for PC para eliminar la encriptación y obtener un PRC válido. De todos modos el avance en la ruptura es tan rápido que seguro no se tarde mucho a dejarlo completamente abierto.

El formato permite anotaciones y subrayado, que se guardan en un fichero accesorio con extensión MBP y del que al menos se conoce un extractor, así como citas a pie de página. Es agnóstico en cuanto a fuente y tamaño, indicando los tamaños relativos respecto a uno base. Soporta indentación, alineamiento, guionado automático, subrayado, negrita y cursiva. Soporta imagen de cubierta, tablas de contenidos, imágines y datos tabulados. También se pueden poner hiperenlaces a otras secciones del libro o a otros libros externos, así como la creación de scrips en javascript. Se pueden incluir metadatos con información relativa al libro, autor, título, idioma, etc. Aparte de un formato específico para diccionarios, incluso podemos usar sentencias SQL para consultar en el libro, y de hecho, si el visor los soportara, podría incluirse cualquier característica disponible en HTML y XML, ya que de hecho cuenta con un modelo DOM.

El mayor problema en el soporte de todo el formato está en el programa intérprete, que excepto la versión para PC y la de Windows Mobile, no soportan todas las características, y de hecho, la versión Java (que es la que incorporan la mayoría de los dispositivos de tinta electrónica) apenas si permite los elementos esenciales, y no siempre los renderiza de forma adecuada. Entre las carencias más flagrantes está el hecho de no poder especificar el tipo de fuente y el escaso e incompleto soporte para tablas. La peor limitación de todas no viene impuesta por las limitaciones del software, sino por la licencia: el único elemento con DRM en un dispositivo embebido ha de ser el visor de Mobipocket. Es decir, si quieres que tu dispositivo sea capaz de leer este formato con DRM, debe ser el único que soporte DRM en el aparato.

Mención especial para los lectores de tinta-e son los visores de código abierto FBReader y CREngine, que poco a poco van incluyendo característica sobre característica. Tampoco hay muchos programas que soporten el uso de diccionarios.

Pese a la opinión generalizada en contra, el formato Mobipocket es público y está perfectamente documentado en su totalidad y abierto a todo el que quiera implementar un visor o un creador: http://www.mobipocket.com/dev/article.asp?BaseFolder=prcgen.

Sin embargo, las extensiones creadas por Amazon son cerradas, y si bien parece ser que el formato AZW no trae otra extensión que la variación de la encriptación DRM, el Topaz apenas se empieza a conocer.

Poliocretes continua