hola amigos
Tengo una form donde cargo una imagen en un DBImage, anteriormente habia preguntado como cargar un jpg ahora lo que necesito es saber como redimensionar este jpg o sea cambiar el tamaño de la imagen en pixeles ejemplo de 800x600 a 100x100 y el tamaño en fisico ejemplo de 500 Kb a 150Kb.
les dejo el código para que le hechen un ojo
Gracias de antemano
Código:
if(OpenDialog1->Execute())
{
if (OpenDialog1->FileName == "")
{
if (OpenDialog1->FileName == "")
{
MessageDlg("Operación cancelada" , mtInformation, TMsgDlgButtons() << mbOK, 0);
}
else
{
//obtener la extension del fichero seleccionado
b = OpenDialog1->FileName.Length() - 3;
a = OpenDialog1->FileName.Delete(1,b);
a = a.LowerCase();
if (a == "bmp" || a == "BMP")
{
DBImage1->Picture->LoadFromFile(OpenDialog1->FileName);
}
if (a == "jpg" || a == "jpeg" || a == "JPG" || a == "JPEG")
{
// Carga en memoria el fichero
jpg->LoadFromFile(OpenDialog1->FileName);
//convertir
bmp->Assign(jpg);
//poner convertido en la imagen
DBImage1->Picture->Assign(bmp);
//limpiar memoria
delete jpg;
delete bmp;
}
}
}
}
TFileStream *File = new TFileStream(OpenDialog1->FileName, fmOpenRead);
if (File->Size >= 600000)
{
MessageDlg("La imagen es demasiado grande, debe ser menor de 600000 bytes y su tamaño actual es " + IntToStr(File->Size) + " bytes", mtError, TMsgDlgButtons() << mbOK, 0);
delete File;
}
else
{
ADOQuery2->Post();
}