Hola Xavi:Puedes hacerlo con StretchDraw, que permite dibujar como Draw pero escalado. Supongo que estas usando el evento OnDrawDataCell, por ejemplo:
- He añadido un TImage de nombre Image1 y he cargado una imagen en el para probar, luego en el evento OnDrawDataCell:
void __fastcall TForm1::DBGrid1DrawDataCell(TObject *Sender,
const TRect &Rect, TField *Field, TGridDrawState State)
{
//...
//...Limpiamos el fondo, etc...
//...
TRect R = Rect;
int AnchoBmp = Image1->Picture->Width;
int AltoBmp = Image1->Picture->Height;
// Escalamos el bitmap proporcionalmente
R.Right = AnchoBmp * R.Height() / AltoBmp + Rect.Left;
// Lo dibujamos en la celda
DBGrid1->Canvas->StretchDraw(R, Image1->Picture->Graphic);
//...
}
Saludos.