Asuntos Oficiales > Retos

 Formato Bmp

<< < (25/35) > >>

senzao18:
He resuelto lo del padding despues de tanto buscar en internet jejee

Mi error fue que leia los byte del padding despues de cada pixel y se leen despues de cada linea horizontal. bueno asi me salio a mi jeje...

ahora el problema que tengo es con el ancho y alto de la imagen

por ejemplo cuandpo leo los 3 bytes del ancho tengo lo siguiente:
70, 0 ,0 Aqui no hayproblema el ancho es de 70...

Pero cuando me regresa
70, 2, 0 Ahi si no se como se calcula el ancho...... Alguna idea de como se calcula???

Imagino que ustedes leen los 3 byte en una variable de un tipo que soporte los tres byte y no en un arreglo y al leerlo ya les da el ancho sin tener que calcular pero pues yo leo 3 bytes en un arreglo y no tengo idea de como se calcula :(.

JuanK:

--- Cita de: "senzao18" --- Mi error fue que leia los byte del padding despues de cada pixel y se leen despues de cada linea horizontal. bueno asi me salio a mi jeje...
 
--- Fin de la cita ---
asi es.. de eso hemos hablado en casi todo el thread  :P


--- Citar ---por ejemplo cuandpo leo los 3 bytes del ancho tengo lo siguiente:
70, 0 ,0 Aqui no hayproblema el ancho es de 70...

Pero cuando me regresa
70, 2, 0 Ahi si no se como se calcula el ancho...... Alguna idea de como se calcula???

Imagino que ustedes leen los 3 byte en una variable de un tipo que soporte los tres byte y no en un arreglo y al leerlo ya les da el ancho sin tener que calcular pero pues yo leo 3 bytes en un arreglo y no tengo idea de como se calcula
--- Fin de la cita ---

No te lies, el ancho es un entero de 4 bytes, asi que nada mas lee los cuatro bytes del archivo en una variable entera, sino sabes como hacerlo con la tecnica que usas de byte a byte sirve pero debes hacer operaciones binarias para convertir los 4 bytes en nun int utilizando corrimientos de bytes y/o operadores | &

Enko:

--- Citar ---He resuelto lo del padding despues de tanto buscar en internet jejee

--- Fin de la cita ---
Acaso nadie lee los posts del thread? :devil:

senzao18:
Si los lei todos por recomendacion de JuanK, pero la verdad fue en horas de trabajo asi que los lei a la carrera jaja. Y me hice bolas. :P.

Geo:

--- Cita de: "senzao18" --- He resuelto lo del padding despues de tanto buscar en internet jejee

Mi error fue que leia los byte del padding despues de cada pixel y se leen despues de cada linea horizontal. bueno asi me salio a mi jeje...

ahora el problema que tengo es con el ancho y alto de la imagen

por ejemplo cuandpo leo los 3 bytes del ancho tengo lo siguiente:
70, 0 ,0 Aqui no hayproblema el ancho es de 70...

Pero cuando me regresa
70, 2, 0 Ahi si no se como se calcula el ancho...... Alguna idea de como se calcula???

Imagino que ustedes leen los 3 byte en una variable de un tipo que soporte los tres byte y no en un arreglo y al leerlo ya les da el ancho sin tener que calcular pero pues yo leo 3 bytes en un arreglo y no tengo idea de como se calcula :(.
--- Fin de la cita ---
Como dice Juank, el ancho es un entero de 4 bytes (un DWORD en la WinAPI), si usas fread puedes fácilmente leer esos 4 bytes en una sola operación de lectura. Si lo estás haciendo byte a byte, toma los 4 bytes y únelos con algo como:

--- Código: Text --- DWORD hiword = 0xaabb;DWORD loword = 0xccdd; DWORD resultado = ( hiword &#60;&#60; 16 ) + loword; // resultado = 0xaabbccdd;  Aquí lo hice con dos variables de 2 bytes, se "unen" para formar una de 4 bytes, puedes hacer algo similar con los 4 bytes que lees del archivo y representan el ancho de la imagen.

Una cosa, ¿con qué lenguaje estás trabajando :D?

Saludos,
JJ (Geo).

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa