Saltar al contenido

Documentos Portables

Este artículo fue publicado en el Blog de Bogodev el día 1 de Julio de 2012. Vínculo

Cuando se necesitó empezar a divulgar contenido como documento electrónico, pero que no pudiera ser modificado y que quedara listo para imprimir si fuera necesario, un formato se coronó como el mejor para esto. Aunque en una época no mucha gente sabía o entendía lo que era, poco a poco empezó a estar en boca de todos y se volvió en el preferido para llevar documentos finalizados, y a ser exigido en ciertos correos electrónicos.

Y de repente los tiempos cambiaron: no fue necesaria una computadora para leer un documento. Y estos documentos seguían presentes. Las impresiones dejaron de ser lo más importante para los archivos. Y seguían presentes. Los dispositivos de lectura empezaron a hacerse más pequeños. Y aún seguían presentes. Los libros empezaron a cargarse directamente en dispositivos. Y continuaban ahí.

¿Alguna de esas personas que pretende publicar libros en este formato no ha intentado leerlo en una blackberry? Engorroso podría ser la palabra. Y eso sin contar algunos teléfonos de gamas menores que permiten leer estos documentos y que puede llegar a ser peor.

Los llamados smartphones tienen pantallas más grandes y mejores resoluciones, ¿Leen este formato sin problema? Claro. ¿Hay que hacer maromas con los dedos para poder leerlos? ¿Qué puedo hacer porque debo manejar el tamaño de la fuente porque la usada es muy pequeña? ¿Debo esperar a llegar a algo con pantalla más grande para poder saber qué dice en este documento?

Las librerías en red han adoptado otros formatos para la publicación de libros y parece que muchos no se enteran. ¿Y el software de lectura? Sí, hay que instalarlo. Al principio contaba que hace años muchas personas no sabían de qué hablaba cuando mencionaba este tipo de documento, actualmente al instalar un sistema operativo esas mismas personas preguntan si ya se instaló el reader.

Hoy existen muchos formatos de libros electrónicos en el mercado, con base en el xhtml o en el xml como el mobi o el epub. Estos poco ha poco han desplazado a otros y mostrado su fortaleza. Pero aún debo descargar publicaciones en el formato mencionado y aplicaciones como calibre se han vuelto necesarias para poder convertirlo a lo que considero un libro electrónico. No creo que se espere que descargue un archivo de más de 20 páginas (bueno, o de 5) para imprimirlo y no creo que muchas personas lo hagan en este momento.

Hay que hablar de documentos portables que sirvan para ver en cualquier dispositivo y sean cómodos para todos, no de un formato que porque todos lo conocen y saben cuál es siga siendo usado sin criterio.

Y no culpo al formato. El tiempo ha demostrado que es bastante bueno y versátil. La culpa es de quien publica, que no sabe a veces a quién dirige las cosas.



**************************************************
Prueba de código:
**************************************************

Tengo este simple plug-in para wordpress desarrollado y listo para publicar. El archivo se llama sil_last_flickr_widget.php y permite crear un widget que muestra una foto aleatoria o la última foto del sitio de Flickr.
Falta el código de inicialización para que wordpress lo reconozca, ¿cómo sería la mejor manera de hacerlo?
¿Qué errores tiene este plug-in? (y no son de puntos y comas ni nada de eso)
¿Cómo podría mejorarse?

<?php
/*
 * Plugin Name: Sil Random Flickr
 * Description: Simple widget that shows a random or last flickr photo
 * Version: 0.3
 * Plugin URI: http://silencesoft.co
 * Author: Byron Herrera
 * Author URI: http://byronh.axul.net
*/

/**
 * Adds Sil Random Flickr widget.
 */

class sil_random_flickr extends WP_Widget
{
	function sil_random_flickr() {
        parent::WP_Widget(false, $name = 'Sil Random Flickr', $description = 'aaa');	
	}

	public function widget( $args, $instance ) {
		extract( $args );
		$title = apply_filters( 'widget_title', $instance['title'] );
		$user = apply_filters( 'widget_user', $instance['user'] );
		$display = apply_filters( 'widget_display', $instance['display'] );
		$count = apply_filters( 'widget_count', $instance['count'] );

		echo $before_widget;
		if ( ! empty( $title ) )
			echo $before_title . $title . $after_title;
		?><script type="text/javascript" src="http://www.flickr.com/badge_code_v2.gne?count=<?php print $count?>&display=<?php print $display?>&size=t&layout=v&source=user&user=<?php print $user; ?>&"></script><?php
		echo $after_widget;
	}

	public function update( $new_instance, $old_instance ) {
		$instance = array();
		$instance['title'] = strip_tags( $new_instance['title'] );
		return $instance;
	}

	public function form( $instance ) {
		if ( isset( $instance[ 'title' ] ) ) {
			$title = $instance[ 'title' ];
		}
		else {
			$title = __( 'From Flickr', 'text_domain' );
		}
		if ( isset( $instance[ 'user' ] ) ) {
			$user = $instance[ 'user' ];
		}
		else {
			$user = '';
		}
		if ( isset( $instance[ 'count' ] ) ) {
			$count = $instance[ 'count' ];
		}
		else {
			$count = '1';
		}
		if ( isset( $instance[ 'display' ] ) ) {
			$display = $instance[ 'display' ];
		}
		else {
			$display = 'random';
		}
		?>
		<p>
		<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:' ); ?></label> 
		<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
		<label for="<?php echo $this->get_field_id( 'user' ); ?>"><?php _e( 'Flickr User Id:' ); ?></label> 
		<input class="widefat" id="<?php echo $this->get_field_id( 'user' ); ?>" name="<?php echo $this->get_field_name( 'user' ); ?>" type="text" value="<?php echo esc_attr( $user ); ?>" />
		<label for="<?php echo $this->get_field_id( 'count' ); ?>"><?php _e( 'Count:' ); ?></label> 
		<input class="widefat" id="<?php echo $this->get_field_id( 'count' ); ?>" name="<?php echo $this->get_field_name( 'count' ); ?>" type="text" value="<?php echo esc_attr( $count ); ?>" />
		<label for="<?php echo $this->get_field_id( 'user' ); ?>"><?php _e( 'Display:' ); ?></label>
		<select id="<?php echo $this->get_field_id( 'display' ); ?>" name="<?php echo $this->get_field_name( 'display' ); ?>">
			<option value="random"<?php print ($display == "random") ? ' selected="selected"' : ''; ?>><?php print _e('Random'); ?></option>
			<option value="last"<?php print ($display == "last") ? ' selected="selected"' : ''; ?>><?php print _e('Last'); ?></option>
		</select>
		</p>
		<?php 
	}

} // class sil_random_flickr_Widget
Publicado enBogodevOpinión

2 comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


*