Archive for the 'desarrollo' Category

04DicRestyling para Via Valentina

vivalentina

Via valentina es la clase de proyecto integral que pone en juego gran parte de las capacidades de nuestro estudio. Venagraphica ha acompañado a esta marca desde su nacimiento, creando la imagen corporativa y asesorando en los diferentes aplicativos, hasta la elaboración de sus estrategias comerciales y la puesta en marcha de su puerta digital.

Para este proyecto generamos toda una gama de recursos técnicos algunos de ellos exclusivos para Via Valentina como lo son la galería de imágenes gestionada por un panel que trabaja sobre un sistema de datos XML (lo que la hace fácilmente actualizable) , la carga de contenidos con una barra vertical que hace que la velocidad de la página sea óptima y siempre y como hemos tratado de defender en todos nuestros proyectos enmarcado en un diseño cuidado y una usabilidad responsable.

A fin de mantenerla viva ha llegado también el momento de adaptarla a cada temporada y desde su nacimento no hemos dejado de hacerla mostrar el movimiento y cambio permanente de una empresa que se adapta constantemente y que cada temporada tiene nuevos contenidos que mostrar.

Al margen de poder ver la web aquí tenéis una muestra del cambio sufrido desde su creación y como hemos ido adaptando el color y la estética haciendo que esta herramienta de comunicación no caduque cada temporada. La web es a fin de cuentas un escapárate como lo son las tiendas de moda ¿alguna tienda deja su escaparate igual durante años?

 

viavalentina

viavalentina

 

viavalentina

viavalentina

viavalentina web

viavalentina

 

viavalentina

30NovIweh: CD interactivo para un congreso de la Universidad Politécnica de Valencia

El IWEH, en su primera edición nos contrató para la digitalización de las ponencias que formaban su congreso. Querían presentar a sus asistentes el contenido de más de 80 ponencias con sus respectivos artículos así como la información básica del mismo, que contaba entre otras cosas con un video o cortinilla de presentación, un mapa interactivo de los lugares de donde provenían los ponentes e información sobre el congreso.

El reto técnico del mismo recayó sobre un buscador de ponencias por título y autor que permite en el interior del CD interactivo localizar los documentos mediante una sencilla caja de texto para búsquedas.

El diseño de la interfaz, la programación del buscador, el montaje de video inicial y la producción de los CD’s fue llevada a cabo integramente por venagraphica con un excelente resultado que podéis ver en algunas capturas que os adjuntamos.

Captura del CD interactivo congreso IWEH

Captura del buscador del CD interactivo IWEH

 

30JunRed de contenidos para l’aventura

Una red de contenidos entendida como una estrategia SEO es una herramienta para la generación de un contenido accesorio a una web que permite ofrecer algo útil para el usuario que dirige su "mirada" a nuestro portal o web lo que nos reporta un beneficio mútuo. Además de esto la red de contenidos permite a determinados negocios ampliar la información sobre sus productos y ponerla a disposición del usuario.

Hoy os presentamos el caso real de l’aventura, un caso que hemos puesto en marcha como una primera piedra de algo mayor. Una forma de atraer la atención de las personas interesadas en las actividades al aire libre en las que l’aventura puede ofrecer equipamiento para desarrollarlas con garantías.

Para ello se ha contado también con un equipo de profesionales vinculados al medio, interesados en contribuir a este proyecto aportando información útil para los aficionados y personas vinculadas a este medio. Esto es quizás lo más costoso, si de verdad queremos generar un contenido útil y que resulte atractivo dedemso realizar un esfuerzo..nada es gratis….

 

06AbrCrear menús desplegables con CSS

css_menus

Los menús desplegables son un recurso habitual en la web. Permiten disponer la información en varios niveles que no sean siempre visibles y eso facilita tremendamente la arquitectura de la información en la web. Por espacio, por claridad, por dosificación de la información… Los encontramos en muchísimas páginas pero generarlos no es tan sencillo como pueda parecer. Hoy voy a dejar dos recursos y una solución a un problema concreto. Los recursos son dos ejemplos de Menús desplegables para poder insertar en cualquier página. La solución se refiere a un problema concreto. ¿Cómo hacemos que una "div" de uno de estos menús se sitúe sobre un objeto flash? O dicho de otra forma ¿Qué pasa cuando el menú desplegable se ha de situar sobre un SWF?

Antes de la explicación he de decir que los menús desplegables tradicionalmente se hacían mediante Javascript. Esto tiene varios problemas. El primero es que dependes de que el navegador del usuario tenga habilitado el Javascript. Si no lo tiene no ve los menús. El segundo es que si tienes a solventar los problemas empleando Javascript puedes acabar sobrecargando la web. Entre las ventajas estaría la dinamicidad de los menús y las posibilidades, mucho mayores empleando Javascript. Yo me decanto en este post por presentaros los menús hechos mediante CSS.

Bien, el recurso que os propongo es una web de las que podéis descargar menús que podréis utilizar sin problemas.

CSS Menus es una web con diferentes menús desplegables. Son gratuitos aunque el autor ha habilitado un espacio para donar dinero al proyecto.
http://www.cssmenus.co.uk/

23MarConectar por ssh de mac a ubuntu y ejecutar aplicaciones gráficas a distancia

Hoy os presento un ejercicio muy sencillo. Pero tremendamente útil. Queremos manejar un servidor ubuntu a distancia desde un equipo mac. De tal forma que, vamos a conectarnos desde un Mac a un sistema ubuntu, y vamos a ejecutar las aplicaciones en el equipo de ubuntu pero de tal forma que las interfaces gráficas se carguen en el Mac. Es decir navegaremos con el firefox viéndolo gráficamente en nuestro equipo cuando se ejecuta realmente en el equipo ubuntu.

¿Para qué?  os preguntaréis. Muy sencillo, queremos realizar operaciones en el servidor como si estuviésemos allí, pero necesitamso apoyo gráfico. Así que no nos basta con conectarnos con la terminal. Nos hace falta algo más.

De mano de la wikipedia os hago un resumen de la tecnología que vamos a emplear. Podéis ampliar la información allí.

Primero ¿qué vamos a usar?. Vamos a usar "X Window System". El sistema de ventanas X fue desarrollado a mediados de los años 1980 en el MIT para dotar de una interfaz gráfica a los sistemas Unix.

Al existir este estándar, diferentes servidores X se pueden desarrollar para distintos sistemas operativos y plataformas. Es decir, permite tener clientes X ejecutándose en un potente servidor UNIX mientras los resultados son visualizados en un PC de escritorio con cualquier otro sistema operativo funcionando.

Bien lo importante de todo esto es que es totalmente independiente del sistema operativo. Como además el sistema X es el encargado de la interfaces gráficas de los sistemas operativos Unix incluyendo a Mac y sus Versiones y por supuesto de Linux (todos ellos nacen de Unix), podemos emplearlo para que la información gráfica de las aplicaciones que se ejecutan en el equipo de ubuntu la manejemos desde nuestro equipo en mac.

Ojo, X no es un gestor de ventanas. Necesita de uno para definir los aspectos de decoración de ventana y manejos de ventanas.

Bien. Primero de todo tenemos que instalar las X en el mac. Eso se hace con el CD de instalación.
En esta imagen lo tenéis explicado:

Instalaciones Opcionales-> Aplicaciones->X11

Una vez instalado abrimos un terminal del mac.

Nuestro procedimiento va a ser emplear SSH para crear un túnel y conectarnos, pero especificando que las X se redirijan.

Esto lo haremos con la orden -X
Por otro lado la opción -l especifica el login que vamos a emplear y el nombre del host o la ip en este caso es el último parámetro que aparece.

  1.  
  2. ssh -X -l root 192.168.1.104

Con esta sencilla orden hemos creado el túnel para conectarnos. Sólo nos queda ejecutar un aplicación. Podéis hacerlo con algo sencillo como "xclock" o utilizar algo más elaborado, con cualquier otra aplicación que emplee interfaz gráfica como FIrefox. Por cierto el procedimeinto sería idéntico para ubuntu, sólo que en ubuntu no tenéis que instalar las X.
 

 

16MarImportar base de datos mysql desde la consola de comandos

Cuando la base de datos a importar en mysql excede un determinado peso se hace necesario prescindir de phpmyadmin, si trabajamos en windows estaremos quizás menos habituados a emplear la consola de comandos de DOS. Puede ser que ni siquiera ubiquemos el ejecutable. En este caso ubicado en la carpeta de instalación del paquete wamp, estos son los pasos que hemos seguido para importarla:

 

Ejecutamos la consola mysql

  1.  
  2. C:\wamp\mysql\bin\mysql.exe -h localhost -u root -p  Enter pasword: *******
  3.  

Creamos la base de datos

  1.  
  2. mysql>Create database base_datos  
  3. <p>La seleccionamos</p>
  4. mysql>USE base_datos

Importamos la base de datos

  1.  
  2. mysql>source C:/ffcv.sql

13MarOcr y desbloqueo de archivos pdf

Ocr sobre pdf y desbloquear archivos pdf

A veces un pdf está trazado en vez de ser texto. Es decir, no fue guardado como texto plano sino como imagen. En base a esta premisa me propuse encontrar una buena estrategia para convertir un número de pdfs elevado (unos 8 documentos) en archivos de caracteres identificables. La idea era que en archivos de texto en los que no podía realizar búsquedas ni copiar el texto se pudiesen leer pasándoles un OCR.

Un OCR (Optical character recognition), extrae de una imagen los caracteres que componen un texto para almacenarlos en un formato con el cual puedan interactuar programas de edición de texto.

Mientras que en una imagen los caracteres se describen indicando cada uno de los píxeles que los forman, al convertirlos a un formato de texto (por ejemplo ASCII o Unicode), pasan a estar descritos por un solo número, por lo que se produce una reducción significativa del espacio en memoria que ocupan.

Antes de que sigas leyendo estas indicaciones para solventar el problema de ese pdf, te sugiero que si lo que buscas es la forma de "desbloquear un pdf" que ha sido protegido para que no se pueda copiar, en esta dirección

www.ensode.net/pdf-crack.jsf

Tienes un programa que lo hace online. Es muy útil y muy sencillo de usar, lo subes y el te lo devuelve desprotegido.

Bien, sigamos con el OCR. Voy a presentaros dos softwares para ello y sus soluciones correspondientes. Una de ellas es libre y la usaremos bajo Linux y la otra es de pago la usaremos baja windows.

Empezaremos por la que es libre. No es mejor, pero es más versátil, libre y por tanto podremos usarla sin problemas de licencias. Iremos por pasos.

En primer lugar, lo que vamos a hacer es un script que se ejecute desde el shell y al que le pasaremos el nombre del archivo pdf a convertir y el número de páginas del archivo. Yo lo he hecho así porque no he encontrado un método para saber el número de páginas del pdf mediante el código, pero me imagino que existirán formas de hacerlo.

Creamos el archivo con un programa de edición de textos, yo lo voy a hacer con gedit.

  1.  
  2. $gedit script_ocr

Una vez creado lo rellenamos con la siguiente linea:

  1.  
  2. #!/bin/sh

Hemos usado Sh, habitualmente uso Bash,  Bash (bourne again shell) es una evolución/ampliación de sh
(también conocida como shell de bourne, por David Bourne su creador). Por lo tanto algunas construcciones/funciones que funcionan en bash puede que no funcionen en sh mientras que todo lo que funciona en sh debería
funcionar en bash. Sh no es más que la shell original de Unix mientras que bash es un proyecto desarrollado por GNU. Bash y Sh son el shell de Unix (intérprete de órdenes de Unix) y lo que le estamos especificando en la línea es que sea él quien ejecute las órdenes.

Los parámetros los recibirá a continuación del nombre del archivo y se numerarán como $1, $2….$N, donde $0 es el nombre del programa y $n el parámetro n.

Después crearemos una serie de directorios para ir almacenando los archivos resultado del proceso. Para eso sirven estas lineas:

  1.  
  2. mkdir ./directorio$1
  3. mkdir ./directorio$1/tiff/
  4. mkdir ./directorio$1/paginas/
  5. mkdir ./directorio$1/paginasTratadas/
  6. mkdir ./directorio$1/textos/

Ahora convertimos el archivo de pdf a tiff. Para ello vamos a emplear convert. Es un programa de imageMagick, un paquete de programas para tratar imágenes en linux. Para ello vamos a tener que instalar el programa, en ubuntu es fácil hacerlo con:

  1.  
  2. apt-get install convert

Añadimos esta línea al script:

  1.  
  2. convert -density 150×150 -compress Group4 $1 ./$1/tiff/convertido.tiff
  3.  

Esta línea lo que hace es convertir el pdf en un archivo tiff. La denominación en inglés "Tagged Image File Format" (formato de archivo de imágenes con etiquetas) se debe a que los ficheros TIFF contienen, además de los datos de la imagen propiamente dicha, "etiquetas" en las que se archiva información sobre las características de la imagen, que sirve para su tratamiento posterior.

Tiff es un formato vinculado a photoshop porque además de ser propiedad de adobe permite guardar la información de capas de este programa de edición de imágenes. En esta última linea le indicamos la densidad, que determina la resolución en píxeles en base a la resolución que define por defecto el programa. Si no lo hacemos así nos lo escanea a baja resolución y no nos servirá para reconocer con ocr. El compress es otra opción para la compresión del archivo resultante.

Y seguimos añadiendo líneas a nuestro programa:

  1.  
  2. for i in $(seq –format=%003.f 1 $2); do
  3. convert -depth 8 ./directorio$1/tiff/convertido.tiff[$i] ./directorio$1/paginas/pagina-$i.pnm
  4. done

En estas líneas hemos hecho un bucle que recorre los tiffs y los convierte archivos pnm. Lo hemos hecho accediendo a cada hoja del tiff con "convertido.tiff[$i]", es decir usando el operador corchetes. La línea de depth 8, es necesaria porque se ha de guardar en 8 bits y no en 16 o fallará el programa unpapper que usaremos después. Ahora tenemos el pdf separado en archivos .pnm, pnm es un archivo similar al mapa de bits, no usa compresión y se suele usar para guardar archivos de páginas.

Estamos acabando. Vamos a usar Tesseract para el ocr, Tesseract fue creado por Hewlett Packard Laboratories entre 1985 y 1995. En 1995 obtubo el lugar 3 entre los de mejor comportamiento en la contienda preparada por la UNLV(University of Nevada in Las Vegas), google la utiliza para buscar texto en los libros que ya no tienen CopyRight. Fue liberado en 2005 bajo la licencia de OpenSource y lo podéis encontrar en el repositorio de google, como es libre usarlo como lo estoy usando yo.

Pero debemos hacer un para de arreglos antes. Separamos el tiff en pnm, porque un tiff de varias hojas no lo podía leer Tesseract, pero Tesseract no admite otro formato que no sea tiff. Asi que convertiremos los pnm a tiff, ahora en archivos separados. Pero además de eso le haremos un tratamiento previo con unpapper para dejar la hoja lista. Unpapper umbralizará la hoja para que los caracteres se identifiquen mejor.

  1.  
  2. for i in $(seq –format=%003.f 1 $2); do
  3. #aplicamos unpapper (–overwritte hace que si ya existe el archivo lo sobreescriba)
  4. unpaper –overwrite  ./directorio$1/paginas/pagina-$i.pnm ./directorio$1/paginas/unpapered-$i.pnm
  5.  
  6. #convertimos el pnm a tiff y luego lo eliminamos
  7. convert ./directorio$1/paginas/unpapered-$i.pnm ./directorio$1/paginasTratadas/prepared-$i.tif &amp;&amp; rm ./directorio$1/paginas/unpapered-$i.pnm
  8.  
  9. #y por &uacute;ltimo aplicamos tesseract, indicando el idioma con -l spa (espa&ntilde;ol es este caso)
  10. tesseract ./directorio$1/paginasTratadas/prepared-$i.tif ./directorio$1/textos/pagina-$i -l spa
  11. done

Sólo queda añadir una última línea. Recopilamos los textos en modulo.txt

cat ./directorio$1/textos/pagina-* >modulo.txt

Todo ha quedado guardado en un archivo de texto.

Al archivo script_ocr tendremos que darle permisos de ejecución con chmod. La orden "chmod +x script_ocr" bastará para ello.
Por último ejecutamos el programa desde el shell, si el archivo se llama archivo.pdf y tiene 43 páginas lo haremos así:

  1.  
  2. ./script_ocr archivo.pdf 43

No pongáis la dirección con ./archivo.pdf o dará error al crear los directorios con mkdir.

Bueno lo podéis descargar el script completo aquí.

Pero como os decía hay una alternativa de pago. Es Abby Fine Reader que en su versión 9 permite directamente leer el pdf y convertirlo. Eso sí la versión de prueba sólo permite guardar una hoja cada vez. Pero la interfaz gráfica es sencillísima. Como veis, un proceso muy complicado el de Linux frente a uno muy sencillo de Windows. En contra, Abby tiene que es de pago, de hecho no he conseguido ni para probarla una versión pirata, pero tengo la versión 4 de Abby que venía con mi Scanner Acer. Abby Fine reader es muy preciso escaneando Tessearact lo es pero quizá no tanto, intuyo que influye el tratamiento previo de la imagen que no lo hace el propio Tessaract sino que lo hemos hecho con unpapper.

Si aprendéis a usar convert de linux, comprobaréis que es una herramienta mucho más potente que la automatización por lotes de photoshop para renombrar y convertir imágenes en determinados casos.

04MarLa rueda del ratón no funciona en la máquina virtual de ubuntu

La rueda del ratón no funciona en la máquina virtual de linux ubuntu que tengo corriendo en VMWare. ¿Cómo lo soluciono?

Editamos el fichero /etc/X11/xorg.conf, buscamos la sección “Input Device” que ponga “Configured Mouse” y la dejamos tal que así:

  1.  
  2. Section "InputDevice"
  3.          Identifier "Configured Mouse"
  4.          Driver "vmmouse"
  5.          Option "CorePointer"
  6.          Option "Device"       "/dev/input/mice"
  7.          Option "Protocol"     "ImPS/2"
  8.          Option "Buttons"      "5"
  9.          Option "ZAxisMapping" "4 5"
  10.  
  11. EndSection
  12.  

Luego reiniciamos las X con Ctrl+Alt+Backspace

28EneTraslado de dominio: que no te mareen

Te quieres trasladar a otro dominio, pero tu empresa de servicios de internet no te lo facilita… Que no te mareen, tienen la obligación de hacerlo. En este artículo hemos encontrado una interesante información al respecto. Lo curioso es que estamos peleando con un proveedor de servicios de internet y telefonía que nos pone todos los impedimentos del mundo para no facilitarnos el traslado del dominio.

Para trasladar un dominio es necesario el  AUTH CODE o SECRET CODE del dominio. Hasta ahora esta norma sólo afectaba a los dominios .org y .info. Esto se debe al cambio en el protocolo internacional de transferencias, que pasa de ser RRP (Registry Registrar Protocol) a una nueva especificación, llamada EPP (Extensible Provisioning Protocol), que nace para asegurar el traslado no fraudulento de dominios.

Por lo tanto, para trasladar un dominio entre proveedores de servicios de Internet o registradores, será necesario averiguar este código. Por regla general los proveedores con un buen sistema de gestión de dominios deben facilitarle este código a través del panel de control del dominio, no obstante, si las herramientas de gestión de su dominio en su actual proveedor no le permiten obtener el Auth-Code, para trasladar su dominio deberá solicitarlo a dicho proveedor o directamente a la entidad registradora (Register con el que trabaje su proveedor).




Blogroll

Recent Listening