Ver Mensaje Individual
  #3  
Antiguo 11-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola de nuevo.

Para ampliar un poco más, si querés utilizar imágenes .jpg podrías hacer:
Código:
#include<Jpeg.hpp>

bool IsBitmapsEqual(Graphics::TBitmap* B1, Graphics::TBitmap* B2)
{
  if( B1->Height != B2->Height || B1->Width != B2->Width ||
      B1->PixelFormat != B2->PixelFormat )
    return false;
  for(int i =0; i < B1->Height ; i++ )
    if(memcmp(B1->ScanLine[i],
      B2->ScanLine[i],B1->Width * (B1->PixelFormat) / 8) != 0)
      return false;
 return true;
}

Graphics::TBitmap *JpgToBmp(AnsiString AName)
{
Graphics::TBitmap *B1 = new Graphics::TBitmap;
TJPEGImage *J1 = new TJPEGImage;
  try {
    J1->LoadFromFile(AName);
    B1->Height = J1->Height;
    B1->Width = J1->Width;
    B1->Assign(J1);
  }
  catch(...) {
    delete(J1);
    throw Exception("Error al cargar la imágen");
  }
  delete(J1);
  return B1;
}
Llamada de ejemplo:
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 Image1->Picture->Bitmap = JpgToBmp("C:\\Users\\User\\Pictures\\Imagen1.jpg");
 Image2->Picture->Bitmap = JpgToBmp("C:\\Users\\User\\Pictures\\Imagen2.jpg");
 ShowMessage(IsBitmapsEqual(Image1->Picture->Bitmap,
   Image2->Picture->Bitmap ) ? "IGUALES" : "DIFERENTES");
}
Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 11-03-2012 a las 23:31:33. Razón: corregir ortografía
Responder Con Cita