拉伸显示情况
double fWidthRate = (double)m_nRealWidth / (double)rc.Width();
double fHeightRate = (double)m_nRealHeight / (double) rc.Height();
int nX = (double)x / fWidthRate;
int nY = (double)y / fHeightRate;
int nWidth = (double)width / fWidthRate;
int nHeight = (double) height / fHeightRate;
if(nX < 0) nX = 0;
if(nY < 0) nY = 0;
CRect rect(nX,nY,nX+nWidth,nY+nHeight); //在显示框中 显示用户选择的框
等比例显示
int nMinLenght = m_nRealHeight;
int nWidthTemp = 0.nHeightTemp =0;
if(rc.width()/ rc.Height() > = m_nRealWidth / m_nRealHeight)
{
nWidthTemp = (m_nRealWidth * rc.Height()) / m_nRealHeight;
nHeightTemp = rc.Height();
}
else
{
nWidthTemp = rc.width();
nHeightTemp = rc.Width()*m_nRealHeight / m_nRealWidth;
}
int nX = x * nWidthTemp /m_nRealWidht;
int nY = y * nHeightTemp / m_nRealHeight;
int nWidth = width * nWidthTemp / m_nRealWidth;
int nHeight = height * nHeightTemp / m_nRealHeight;
if(nX < 0) nX =0;
if(nY < 0) nY =0;
CRect rect(nX,nY,nX+nWidth,nY + nHeight);
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。