社区
界面
帖子详情
drawtext换行的问题!
golgo
2004-10-14 05:17:39
DrawText(lpstr, CRect(rect.left, j--, rect.right, rect.bottom), DT_WORDBREAK)
lpstr中是汉字,就能正常换行,如果是英文字符,就不能正常换行了!为什么呀?
...全文
328
6
打赏
收藏
drawtext换行的问题!
DrawText(lpstr, CRect(rect.left, j--, rect.right, rect.bottom), DT_WORDBREAK) lpstr中是汉字,就能正常换行,如果是英文字符,就不能正常换行了!为什么呀?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
golgo
2004-10-15
打赏
举报
回复
多谢了,能分行了!参考了一个大哥的代码,可能还有点问题,正在改,多谢各位了
long width = rcWidth;
TCHAR temp[4076] = L"";
wcscpy(temp,lpszString);
TCHAR* cur;
cur = temp;
TRACE(L"cur_text = %s\n", cur);
int j;
CSize size;
while(*cur != '\0')
{
j=1;
do
{
if(cur[j-1] == '\r' || cur[j-1] == '\0') break;
size = pDC->GetTextExtent(cur,j);
if(size.cx >= abs(width))
{
textHeight +=size.cy;//返回文本显示的高度
break;
}
j++;
}while(TRUE);
if(j == 1) break;
j--;
if(cur[j] == '\0') break;
if(cur[j] != '\r' && !(cur[j] & 0x80))
{
memmove(&cur[j+1],&cur[j],j+1);
cur[j] = '\n';
}
cur += j+1;
TRACE(L"cur_text = %s\n", temp);
}
return temp;
memory_xj
2004-10-14
打赏
举报
回复
用DrawText(...,DT_WORDBREAK)总是不如意。还是GetTextExtentPoint32();按CRect的宽度将字符串分割成一个个字符串,再一行行TextOut()写出来比较好。
golgo
2004-10-14
打赏
举报
回复
怎样得到该换行的地方呢??有没有详细点的代码啊?
lixiaosan
2004-10-14
打赏
举报
回复
CPaintDC dc(this);
CString str = "1231\r\n23231";
dc.SetBkMode(TRANSPARENT);
dc.DrawText(str, CRect(50,50,20,20), DT_NOCLIP);
token_lys
2004-10-14
打赏
举报
回复
Drawtext换行不能把一个单词切分成两部分,保证每个单词都完整在一行上。
快乐鹦鹉
2004-10-14
打赏
举报
回复
英文中间有空格的话,能正常换行吧?
解决
Draw
Text
中文字与字母之间自动
换行
解决
Draw
Text
中文字与字母之间自动
换行
html5 canvas的绘制文本自动
换行
的示例代码
本文介绍怎么解决canvas绘图过程中,
draw
Text
的
换行
问题
,先看一个大家平时在canvas绘制文本都会遇到的
问题
: 一个150*100的canvas画布,加个边框明显边界 ...
Android-
Text
View-not-change-line-in-advance:不会因为有标点符号等
问题
随便
换行
的
text
view
Android-
Text
View-not-change-line-in-advance 不会因为有标点符号等
问题
随便
换行
的
text
view. 自己
draw
text
实现。
功能强大的免费DataGridView打印控件
5、改进
Draw
Text
函数输出文本的功能,现在,即便调用没有指定打印区域或打印宽度的
Draw
Text
函数输出文本,打印输出时控件也会智能
换行
和换页(原版本是需要指定打印宽度才能自动
换行
换页打印的) 6、改进
Draw
Image...
Qt Creator 的安装和hello world 程序+其他程序的编写--不是一般的好
器的进程中将该进程结束,而后再次运行就没
问题
了,当然先关闭Qt Creator, 而后再重新打开,这样也能解决
问题
。 如果把程序改为这样: #include #include "widget.h" #include "mydlg.h" int main(int argc, char ...
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章