//Draw picture.
{
int iWidth = m_pBitmap->GetWidth();
int iHeight = m_pBitmap->GetHeight();
CRect rct(0, 0, iWidth, iHeight);
if ((float)rct.Width() / (float)rct.Height() > (float)m_rctClient.Width() / (float)m_rctClient.Height())
{
iWidth = (int)((float)iHeight * (float) m_rctClient.Width() / (float)m_rctClient.Height());
int iMargin = (rct.Width() - iWidth) / 2;
rct.left += iMargin;
rct.right -= iMargin;
}
if ((float)rct.Width() / (float)rct.Height() < (float)m_rctClient.Width() / (float)m_rctClient.Height())
{
iHeight = (int)((float)iWidth * (float)m_rctClient.Height() / (float)m_rctClient.Width());
int iMargin = (rct.Height() - iHeight) / 2;
rct.top += iMargin;
rct.bottom -= iMargin;
}
pRT->DrawBitmap(m_pBitmap, GetRect_2(m_rctClient), GetRect_2(rct), 1.0F, FALSE);
}