Asuntos Oficiales > Retos
Formato Bmp
Diodo:
Bueno ya lo termine. Me tarda unos 5 segundos en mostrar un BMP de 500x360, supongo que se puede mejorar y bastante, asi que seguire investigando hasta que dure el reto.
La interfaz es algo cutre (un miniform con un boton y por cada bmp se abre otro form con el tamaño de la imagen), voy a ver si la mejoro poniendo unas tabpages sobre un formulario, y que se abra una tabpage por cada bmp cargado
salu2 :hola:
Enko:
Como estaba aburrido decidi hacer el reto SIN PARTICIPAR de la competencia.
Ya está terminado, pero no se porque causa, a veces, algunos bitmap que los modifico con el paint (en muy raras ocaciones) se abren torcidos :blink:
Igualmente, hice una clase que se encarga de Abrir, Guardar, mostrar, es decirm, todo está en el mismo modulo. (como no voy a competir, no importa)
Segun veo, lo que más tarda es mostrar la imagen en la pantalla, por ahora lo estoy haciendo Piexel por Pixel, igualemente, ahora trataré de buscar una forma más rápida.
--- Citar ---TSimpleBitmap = class
private
FBitmap: PPixel24bit; //definido más arriba pero no posteo
FBitmapHeader: TBitmapHeader;//definida más arriba pero no la posteo
FWidth: LongWord;
FHeight: LongWord;
procedure SetSize(AWidth, AHeight: LongWord);
function GetPixel(X, Y: LongWord): TPixel24bit;
procedure SetHeight(const Value: LongWord);
procedure SetPixel(X, Y: LongWord; const Value: TPixel24bit);
procedure SetWidth(const Value: LongWord);
procedure ReSize;
public
constructor Create; overload;
constructor Create(AWidth, AHeight: LongWord); overload;
destructor Destroy; override;
property Width: LongWord read FWidth write SetWidth;
property Height: LongWord read FHeight write SetHeight;
//las propiedades que importan
property Pixels[X,Y: LongWord]:TPixel24bit read GetPixel write SetPixel;
procedure LoadFromFile(const FileName: String);
procedure SaveToFile(const FileName: String);
procedure Draw(DestBitmap: TCanvas);
end;
--- Fin de la cita ---
Geo:
Pero si lo interesante es participar :D. Ya, al final (muchas veces pasa), no hay ganador ni nada, pero todos aprendemos compartiendo.
Saludos,
JJ (Geo).
Eternal Idol:
--- Cita de: "Enko" --- Ya está terminado, pero no se porque causa, a veces, algunos bitmap que los modifico con el paint (en muy raras ocaciones) se abren torcidos :blink:
--- Fin de la cita ---
Busca info sobre padding.
JuanK:
--- Cita de: "Enko" --- Ya está terminado, pero no se porque causa, a veces, algunos bitmap que los modifico con el paint (en muy raras ocaciones) se abren torcidos :blink:
--- Fin de la cita ---
:D
si ese error es clasico, te hace falta una pequeña validacion en el codigo.
Por eso les recomiendo a todos que prueben con varios bmp diferentes para que cubran la totalidad de los casos.
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa