Ver Mensaje Individual
  #11 (permalink)  
Antiguo 16/12/2009, 18:38
scorpionhack
 
Fecha de Ingreso: noviembre-2007
Mensajes: 229
Antigüedad: 16 años, 5 meses
Puntos: 0
Cita:
Iniciado por pateketrueke Ver Mensaje
bien podrías hacer lo mismo con el software aquel que mencionaste para leer ABR

osea, sabiendo que es OpenSource puedes descargar el código fuente y reescribirlo en PHP, tarea dura... pero supongo que vale la pena, suerte!!
tarea durisima ya que C y yo no somos muy amigos aunque creo que no queda otra...

bueno el primer paso ya esta hecho aqui he encontrado un pdf el cual describe como leer todos los archivos de photoshop desde pinceles, psd, etc estoy mirando como hcerlo pero si alguien cree que puede aportar algo será bienvenido...

http://libpsd.graphest.com/files/Pho...%20Formats.pdf

gracias

buenas

ya he empezado con el el codigo php que me saque un thumnail de las imagenes...

esto es lo que llevo de moemento...

Código PHP:
    $fp fopen("a.abr",'r');
        
$infoArray['version id'] = @reset(unpack('n',fread($fp,2)));
        
$infoArray['Number_brush'] = @reset(unpack('n',fread($fp,2)));
        
$infoArray['typeofBrush'] = @reset(unpack('n',fread($fp,2)));
        
$infoArray['NumberofBytes'] = @reset(unpack('N',fread($fp,4)));
        
$infoArray['Misce'] = @reset(unpack('N',fread($fp,4)));
        
$infoArray['Spacing'] = @reset(unpack('n',fread($fp,2)));
        
$infoArray['Diameter'] = @reset(unpack('n',fread($fp,2)));
        
$infoArray['Roudness'] = @reset(unpack('n',fread($fp,2)));
        
$infoArray['Angle'] = @reset(unpack('n',fread($fp,2)));
        
$infoArray['hardness'] = @reset(unpack('n',fread($fp,2)));
        
fclose($fp);
        
        
var_dump($infoArray); 
pero creo que estan mal, por ejemplo la array typeofbrush me tendria que devolver 1 o 2 dependiendo del tipo de pincel y me devuelve 14000 y pico...

por lo tanto me gustaria haver si alguien puede poner un granito de arena en este codigo que al fin y al cabo el dia de mañana todos lo podemos utilizar. ya que si alguien desea hacer una pagina con cosas de photoshop, y quiere subir pinceles no haria falta subir tambien una imagen con los pinceles de los que se trata...

Buenas:

ya he avanzado un poquito mas en esto...conseguí un programa en "C" que leia los archivos en abr y los transforma en formato para el GIMP.

Gracias a eso estoy haciendo el codigo para leer los pinceles abr en php...

lo que pasa me quedado bloqueado, tengo que crear estructuras en php es decir...

Código:
struct _AbrBrushHeader
{
	gshort type;
	gint32 size;
};
esto es lo que tengo hecho de momento...

Código PHP:

function abr_read_short($arsfp,$bytes,$type){ 
    if(
$arsfp != NULL){
        return @
reset(unpack($type,fread($arsfp,$bytes)));
    }
}
    
function 
abr_load_v6($alvfp,$fle){
    
$infoArray['abr_subver'] = abr_read_short($alvfp,2,"n");
}
     
$file="a.abr";
$abr fopen($file,'rb');
$infoArray['version id'] = abr_read_short($abr,2,"n");// @reset(unpack('n',fread($fp,2)));
switch ($infoArray['version id']){
            case 
1:
            case 
2:
            break;
            case 
6:
            
abr_load_v6($abr,$file);
            break;
            default:
            Echo 
"Error: El archivo $file no es un pincel válido de Photoshop";
            break;
}    

fclose($abr); 
Gracias por todo

Última edición por GatorV; 20/12/2009 a las 11:35