viernes, 1 de abril de 2011

ePub desde Indesign y II. Problemas en la exportación

Si ya tenemos un ePub exportado en bruto con la tabla de contenidos resuelta podemos volver la vista al contenido.

Si hemos exportado desde CS4 los problemas de visualización serán mucho más evidentes que si lo hacemos desde CS5. Mi referencia de momento es CS4.

Debemos tener claro que el formato que visualizaremos en pantalla será definido por la hoja de estilo CSS alojada dentro del ePub, donde se declaran las fuentes y se atribuyen propiedades a las distintas clases generadas a partir de los estilos de párrafo creados en Indesign. Cada documento xhtml contenido dentro del ePub se vincula con esta hoja de estilo.

Las fuentes

En la exportación se incluirán aquellas y solo aquellas fuentes que se hayan utilizado dentro del documento por medio de un estilo de párrafo. Esto quiere decir que para que se incrusten debemos crear al menos un estilo de párrafo que la incluya y aplicarlo al menos en un párrafo del documento. De lo contrario no se incrustará.

Cuando vemos el ePub exportado nos damos cuenta de que no se visualiza la tipografía utilizada, ni tampoco sus estilos (negrita, cursiva, ...). Si editamos la CSS de un ePub con cualquier editor html o de texto (asumo que ya sabemos editar el ePub y sus archivos) habiendo utilizado, por ejemplo, la fuente Times LT Std, nos encontraremos con algo asi:

@font-face {
font-family: "Times LT Std";
font-style: normal;
font-weight: normal;
src:url(Fonts/TimesLTStd-Roman.otf);
}
@font-face {
font-family: "Times LT Std";
font-style: normal;
font-weight: normal;
src:url(Fonts/TimesLTStd-Italic.otf);
}
@font-face {
font-family: "Times LT Std";
font-style: normal;
font-weight: normal;
src:url(Fonts/TimesLTStd-Bold.otf);
}
@font-face {
font-family: "Times LT Std";
font-style: normal;
font-weight: normal;
src:url(Fonts/TimesLTStd-BoldItalic.otf);
}

Están declaradas y sin embargo la visualización es defectuosa. Para arreglarlo debemos editar las propiedades font-style y font-weigth, hasta dejarlo de esta forma:

@font-face {
font-family: "Times LT Std";
font-style: normal;
font-weight: normal;
src:url(Fonts/TimesLTStd-Roman.otf);
}
@font-face {
font-family: "Times LT Std";
font-style: italic;
font-weight: normal;
src:url(Fonts/TimesLTStd-Italic.otf);
}
@font-face {
font-family: "Times LT Std";
font-style: normal;
font-weight: bold;
src:url(Fonts/TimesLTStd-Bold.otf);
}
@font-face {
font-family: "Times LT Std";
font-style: italic;
font-weight: bold;
src:url(Fonts/TimesLTStd-BoldItalic.otf);
}

Con esto no estamos utilizando las tipografías incrustadas, si la Times, pero no sus variantes italic, bold y bolditalic, lo que estamos haciendo realmente es aplicar negritas y cursivas como si utilizaramos etiquetas html, de ahí que modifiquemos las propiedades font-style y font-weight.

La hoja de estilos

Pero aún no vemos el libro como en Indesign, hemos perdido características de formato, no tenemos márgenes, los tamaños no son relativos para su visualización en distintos dispositivos y tamaños de pantalla. Para solucionar todo esto está la CSS que indesign genera intentando emular las propiedades de nuestro documento Indesign y que son, al menos en CS4, ciertamente mejorables con un tratamiento adecuado de la CSS.

En este punto, si no lo conocemos ya, se hace necesario recurrir a las múltiples páginas que en la web pueden encontrarse con manuales y explicaciones del uso de CSS, sin olvidar que el objetivo de un ePub es un eReader, no la web, más allá de que pueda visualizarse en Digital Editions o en un navegador. Las propiedades CSS deberían orientarse así.

De entrada la especificación CSS para ePub tiene algunas limitaciones. Podemos acudir a la página del IDPF para conocerlas desde aquí. En general, como hablamos de libros, es decir, texto formateado, disponemos de la mayoria de las propiedades necesarias. No podremos reproducir, por ejemplo, versalitas o visualizar textos en mayúsculas si no son reales, así que habremos de convertir estas últimas antes de exportar. Para ello podemos utilizar algún script que lo haga de forma automática en Indesign, o tener la precaución de convertirlas en algún momento.

Y poco más tipográficamente hablando.

En el uso de la CSS es imprescindible además utilizar tamaños relativos. Hay que tener en cuenta que las pantallas de los dispositivos, en general, no superan las 6-7 pulgadas, por lo que será aconsejable partir de un tamaño inicial pequeño que proporcione una visualización razonable por defecto, podrá ampliarse en el dispositivo después. Yo parto de un tamaño inicial de 0.85em, los demás son relativos a este.

Los caracteres especiales

Cuando empecé a exportar ePubs me surgieron muchas dudas sobre los caracteres especiales que utilizamos en Indesign, como los distintos tipos de espacio o de guiones discrecionales, las sangrías, las tabulaciones..., carácteres no reproducibles en una salida html porque simplemente no existen. Pues bien, en esto la utilidad de exportación está muy bien trabajada, realiza el tratamiento necesario, dependiendo además de si encuentra el carácter al principio de línea, al final o entre palabras.

En el uso de caracteres especiales deberemos prestar especial atención a:

Espacios entre palabras

Pueden utilizarse con normalidad todas las variantes de espacio salvo el espacio de no separación, que no se reproduce y deja palabras juntas.

Guiones

Se pueden utilizar con normalidad. No pueden utilizarse guiones manuales como guiones de separación, en su lugar pueden utilizarse guiones discrecionales. Un guión manual siempre aparecerá como un guión en cualquier salida.

Retornos de párrafo

No partir párrafos de forma manual porque en la salida se consideran 2 párrafos independientes, en su lugar pueden utilizarse saltos de línea forzados, pero si los usamos en párrafos que serán justificados quedarán partidos, es un buen recurso para párrafos alineados al centro, izquierda o derecha, no justificados.

Tabuladores

No pueden utilizarse en sustitución de las tablas, si un texto está tabulado en filas y/o columnas deberá ser una tabla que pueda formatearse en html.

En la tabla siguiente pongo una relación de los comportamientos concretos resultado de analizarlos detalladamente


SÍMBOLOS
Viñeta. Se exporta correctamente
©Copiryght. Se exporta correctamente
Puntos suspensivos. Se exporta correctamente
Signo de párrafo. Se exporta correctamente
®Marca comercial registrada. Se exporta correctamente
§Símbolo de sección. Se exporta correctamente
Signo de marca comercial. Se exporta correctamente
MARCADORES
Número de página actual. No exporta nada
Número de página siguiente. No exporta nada
Número de página anterior. No exporta nada
Marcador de sección. No exporta nada
GUIONES BAJOS Y GUIONES
Guión largo. Se exporta correctamente
Guión corto. Se exporta correctamente
Guión discrecional. No exporta nada
-Guión de no separación. Se exporta correctamente. 1900-2000
COMILLAS
Comillas de apertura. Se exporta correctamente
Comillas de cierre. Se exporta correctamente
Comilla de apertura. Se exporta correctamente
Comilla de cierre. Se exporta correctamente
Comillas rectas. Se exporta correctamente
Comilla recta (apóstrofo). Se exporta correctamente
OTRO
Tabulaciones. Las tabulaciónes no se exportan si están al principio o final de párrafo. Si están intercaladas se exporta un espacio.
Tabulación. Exporta un espacio en blanco
Tabulación de sangría derecha. Exporta un espacio en blanco
Sangría hasta aquí. No exporta nada
Finalizar estilo anidado aquí. No exporta nada
Separador. No exporta nada
ESPACIOS EN BLANCO
Espacio largo. Exporta un espacio en blanco
Espacio corto. Exporta un espacio en blanco
 Espacio de no separación. No exporta nada.
Debe reemplazarse por un espacio
 Espacio de no separación (ancho fijo). No exporta nada.
Debe reemplazarse por un espacio
Espacio ultrafino. Exporta un espacio en blanco
Sexto de espacio. Exporta un espacio en blanco
Espacio fino. Exporta un espacio en blanco
Cuarto de espacio. Exporta un espacio en blanco
Tercio de espacio. Exporta un espacio en blanco
Espacio de puntuación. Exporta un espacio en blanco
Espacio para cifra. Exporta un espacio en blanco
Espacio de alineación. Exporta un espacio en blanco
CARACTERES DE SALTO
Salto de columna. Exporta un salto de párrafo
Salto de marco. Exporta un salto de párrafo
Salto de página. Exporta un salto de párrafo
Salto de página impar. Exporta un salto de párrafo
Salto de página par. Exporta un salto de párrafo
Salto de párrafo. Exporta un salto de párrafo
Salto de línea forzado. Exporta un salto de línea forzado <br>
Salto de línea opcional. No exporta nada

El color

Hablar del color en el ePub no deja de ser un sin sentido si pensamos en la naturaleza de los dispositivos para los que está destinado, pero el caso es que un ePub podemos reproducirlo en cualquier ordenador con la aplicación necesaria, o en una tableta, un smartphone... y en todos ellos está presente el color. ¿Que hacer entonces? Los eReaders en color harán desaparecer el problema, pero de momento hemos de tener cuidado con los tonos de color suaves, teniendo en cuenta que se transformarán en grises y pueden perderse, lo que en Digital Editions se verá con toda claridad, en un eReader puede no ser legible, así que, ante todo, probar la visualización en los distintos dispositivos, y usar siempre tonos oscuros. Otra opción es tener dos versiones del ePub, reemplazar los colores en la CSS es muy sencillo. En definitiva, hemos de tener las consideraciones que hemos tenido siempre al trabajar para escala de grises o color.

¿Esto quiere decir que en el documento Indesign debemos limitar los colores? Desde luego que no, solo deberemos optimizar la hoja des estilos de las salida ePub, el resto de salidas no deben verse afectadas, de hecho, si optamos por mantener dos versiones, las mismas clases de la salida html serán perfectamente válida para el epub.

Las calidad de las imágenes

Es recurrente oir hablar de la mala calidad de las imágenes en los libros electrónicos. Y lo cierto es que nuevamente el problema es del dispositivo, del lector electrónico, no del formato. Cuando Indesign exporta a ePub coge las imágenes originales y las convierte en un archivo de 72 ppp almacenándolas en un directorio dentro del ePub. Es lo que necesita la pantalla de tinta electrónica de un lector en blanco y negro con 16 niveles de gris. Pero optimizar esas imágenes para otros dispositivos es tan sencillo como tomar las imágenes originales, dejarlas al tamaño y resolución que decidamos y reemplazarlas en el ePub respetando sus nombres, sin más. Al final será el enlace a la imagen del archivo xhtml el que haga que se muestre la imagen que encuentre en la ruta, sea de la calidad que sea. Como cuando hablamos del color, no es nada difícil obtener dos versiones de un mismo ePub, uno optimizado para lectores en blanco y negro con imágenes en baja resolución y otro en color con imágenes de calidad.