Asuntos Oficiales > Retos

 Formato Bmp

<< < (4/35) > >>

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

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa