Ver Mensaje Individual
  #14 (permalink)  
Antiguo 28/06/2011, 09:12
Avatar de stramin
stramin
 
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: Código para meter texto en imagen

vaya, sinceramente me impresiona que hayas llegado tan lejos, entendiste bien el concepto de las cajas de texto para centrar.

bueno, el problema que tienes seguramente es por las tildes, resulta que el sistema GD no usa html para los textos, por lo que debes cambiar la codificación del texto, para esto en el manual de php alguien publicó una conveniente funcion llamada foxy que cambia el formato a utf-8.

la función no la he podido encontrar pero tengo una que copié hace tiempo y no recuerdo si la he modificado pero funciona:

FOXY UTF8 TO NCE
Código PHP:
function foxy_utf8_to_nce$utf '' ) {
    if(
$utf == '') return($utf);
    
$max_count 5;
    
$max_mark 248;
    
$html '';
    for(
$str_pos 0$str_pos strlen($utf); $str_pos++) {
        
$old_chr $utf{$str_pos};
        
$old_val ord$utf{$str_pos} );
        
$new_val 0;
        
$utf8_marker 0;
        if( 
$old_val 127 ) {
            
$mark $max_mark;
            for(
$byte_ctr $max_count$byte_ctr 2$byte_ctr--) {
                if( ( 
$old_val $mark  ) == ( ($mark << 1) & 255 ) ) {
                    
$utf8_marker $byte_ctr 1;
                    break;
                }
                
$mark = ($mark << 1) & 255;
            }
        }
        if(
$utf8_marker and isset( $utf{$str_pos 1} ) ) {
            
$str_off 0;
            
$new_val $old_val & (127 >> $utf8_marker);
            for(
$byte_ctr $utf8_marker$byte_ctr 1$byte_ctr--) {
                if( (
ord($utf{$str_pos 1}) & 192) == 128 ) {
                    
$new_val $new_val << 6;
                    
$str_off++;
                    
$new_val $new_val | ( ord$utf{$str_pos $str_off} ) & 63 );
                }
                else {
                    
$new_val $old_val;
                }
            }
            
$html .= '&#'.$new_val.';';
            
$str_pos $str_pos $str_off;
        }else{
            
$html .= chr($old_val);
            
$new_val $old_val;
        }
    }
    return(
$html);

no tengo el nombre del creador pero aparece como "limalopex.eisfux.de"

se usa así:

foxy_utf8_to_nce("título");

ve si eso soluciona el problema :)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D