好多人都觉得在中实现文字竖排是一件很难的事情,其实可以使用“躺”着的字体很方便的实现文字竖排。
Windows中有一些字体是“躺”着的,例如:@Fixedsys、@System、@宋体、@黑体等等,有很多,这些字体和不加@的字体的唯一区别就是用这些字体显示的文字是“躺”着的。如下图:
对这些“躺”着的字体进行270°的旋转就可以实现文字竖排了,效果如下:
以下代码可以产出竖排的宋体。CFont font; CFont *pOldFont; font.CreateFont(18, 0, 2700, 2700, FW_NORMAL, 0, 0, 0, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH,"@宋体"); pOldFont=dc.SelectObject(&font) dc.TextOut(50,50,"文字竖排"); dc.SelectObject(&pOldFont)/* 何问起 hovertree.com */
大家可以试一下。
推荐: