本人要写一个工具,以方便开发手机游戏的字体。目标是支持全球所有的语言,包括中文。JAVA的版已经做了几种语言,不过JAVA开发的工具速度瓶颈显而易见,于是换到C来做,其中涉及到了图片放大缩小的问题。今天终于解决了,记录一下。
1,如何做到仅仅像素扩大,但不会模糊。如果不设置下面的参数,graphics会默认模糊放大。 尤其是第二个,参数必须是NearestNeighbor。
g_buf->SmoothingMode = SmoothingMode::None;
g_buf->InterpolationMode = InterpolationMode::NearestNeighbor;
g_buf->CompositingMode = CompositingMode::SourceCopy;
g_buf->CompositingQuality = CompositingQuality::Invalid;
2,放大缩小
这个就不多说了。改变下面m_ratio的值就可以了。
g_buf->DrawImage(newImage,50,150,newImage->Width * m_ratio,newImage->Height * m_ratio);