Monthly Archives: octubre 2011

Muerte en Hawaii

Dedicado a Nuri! Animo que ya queda poco para el finde!


Y la letra!

[quote]

Yo he peleao con cocodrilos
Me he balanceado sobre un hilo cargando más de 500 kilos
Le he dao la vuelta al mundo en menos de un segundo
He cruzao 100 laberintos y nunca me confundo

Respiro dentro y fuera del agua como las focas
Soy a prueba de fuego, agarro balas con la boca
Mi creatividad vuela como los aviones
Puedo construir un cerebro sin leer las instrucciones

Hablo todos los idiomas de todos los abecedarios
Tengo más vocabulario que cualquier diccionario
Tengo vista de águila, olfato de perro
Puedo caminar descalzo sobre clavos de hierro

Soy inmune a la muerte
No necesito bendiciones porque siempre tengo buena suerte
Ven conmigo a dar un paseo por el parque
Porque tengo más cuentos que contarte que García Marqués

Por ti, todo lo que hago lo hago por ti
Es que tú me sacas lo mejor de mí
Soy todo lo que soy
Porque tú eres todo lo que quiero

Por ti, todo lo que hago lo hago por ti
Es que tú me sacas lo mejor de mí
Soy todo lo que soy
Porque tú eres todo lo que quiero

Puedo brincar la cuerda con solo una pierna
Veo en la oscuridad sin usar una linterna
Cocino lo que quieras, yo soy todo un chef
Tengo sexo 24 – 7 todo el mes

Puedo soplar las nubes grises pa que tengas un buen día
También se como comunicarme por telepatía
Por ti, cruzo las fronteras sin visa
Y le saco una buena sonrisa a la “Mona Lisa”

Por ti, respiro antes de morirme
Por ti voy a la Iglesia y escucho toda la misa sin dormirme
Sigo siendo el Rey, aunque no tenga reino
Mi sudor huele a perfume y nunca me despeino

Se pelear todas las artes marciales
También se como comunicarme con los animales
Mientras más pasa el tiempo me veo más joven
Y esta canción la compuse sin escuchar como Beethoven

Por ti, todo lo que hago lo hago por ti
Es que tú me sacas lo mejor de mí
Soy todo lo que soy
Porque tú eres todo lo que quiero

Por ti, todo lo que hago lo hago por ti
Es que tú me sacas lo mejor de mí
Soy todo lo que soy
Porque tú eres todo lo que quiero

[/quote]

Generar imagenes al vuelo

Como todos sabeis, yo no soy diseñador, pero si me gusta trastear con el diseño a la hora de hacer paginas web, y muchas veces, necesito una imagen de cierto tamaño para color en la cabecera o para hacer un slider, para asi ver como queda en conjunto todo eso. Pero no siempre tengo un diseñador a mano, ni me apetece usar ningun programa para hacer las imagenes.

Asi que he decidido hacerme un ‘generador de imagenes’ para poder agregar a mi web y asi dejar el espacio para la foto final o ver como quedaria todo en conjunto.

El codigo seria:

<?
//primero definimos las distintas variables

//Directorio para generar una pequeña cache, asi no tenemos que generar siempre la imagen
$cacheDir = '/home/errante/el-maldito.com/www/i/cache/';
//Tamaños por defecto
define('ANCHO', 150);
define('ALTO',  150);
//Datos de la letra
$fuente = "arial.ttf";
$size   = 20; //Tamaño de la fuente

//calculamos el archivo que generaremos
$hash = md5($_SERVER['QUERY_STRING']);
$archivoCache = $cacheDir.$hash.'.png';

//Si ya tenemos el archivo lo servimos
if(file_exists($archivoCache)) {
        header ('Content-Type: image/png');
        readfile($archivoCache);
        die;
}

//Si llega aqui es que no tenemos el archivo generado, asi que empieza la fiesta =)
//Obtenemos todos los datos del _GET
// w => Ancho, h => Alto, t => Texto que queremos, c => Color de la imagen
$ancho = isset($_GET['w'])?$_GET['w']:ANCHO;
$alto  = isset($_GET['h'])?$_GET['h']:ALTO;
$texto = isset($_GET['t'])?$_GET['t']:'';
$color = isset($_GET['c'])?$_GET['c']:'';

//Función para obtener el valor RGB numero de uno Hexadecimal
function hex2rgb($hex) {
        $rgb[0]=hexdec(substr($hex,0,2));
        $rgb[1]=hexdec(substr($hex,2,2));
        $rgb[2]=hexdec(substr($hex,4,2));
        return($rgb);
}

//Sacamo el codigo rgb del color
$rgb    = hex2rgb($color);
$rgbInv = array();
//y el inverso para el texto (para que se vea bien)
foreach($rgb as $col) $rgbInv[] = (255 - $col);

//creamos la imagen y la pintamos del color correspondiente
$im     = imagecreatetruecolor($ancho, $alto);
$color  = imagecolorallocate($im, $rgb[0], $rgb[1], $rgb[2]);
imagefill($im, 0, 0, $color);

//Calculamos el tamaño del texto
$caracteres = strlen($texto);
$textoAlto  = imagefontheight($size);
$textoAncho = imagefontwidth($size) * $caracteres;
//y la posicion
$x = round(($ancho - $textoAncho) / 2);
$y = round(($alto  - $textoAlto)  / 2);

//pintamos el texto
$color2 = imagecolorallocate($im, $rgbInv[0], $rgbInv[1], $rgbInv[2]);
imagettftext($im, $size, 0, $x, $y, $color2, $fuente, $texto);

//guardamos una cache
imagepng($im, $archivoCache);

//mostramos la imagen
header ('Content-Type: image/png');
imagepng($im);
imagedestroy($im);

La manera de usarlo seria:

http://domino/ruta/hasta/el/php?w=320&h=200&c=abcabc&t=ejemplo
Y quedaria:

A disfrutarlo! 😀

 Scroll to top