CDC 文本输出对齐,涉及文本表格问题
char *info[20]={
"     文本输出对齐,涉及文本表格问题,输出后,在图片中显示没有对齐,问有说明好的方法?         ",
" 。                                                                                     ",
"                                     文本表格如下                                             ",
"----------------------------------------------------------------------------------------------",
"|                                 |          |                                |              |",
"|点对点短信费:                   |   6.00   |   梦网短信费:                 |       5.00   |",
"|湖南气象局:                     |   4.00   |   北京灵讯互动:               |       8.00   |",
"|广州新嵘信息产业有限公司:       |   5.00   |   深圳腾讯:                   |       5.60   |",
"|湖南省移动通信公司:             |  18.10   |   新浪网:                     |      15.40   |",
"|湖南天迈:                       |   0.10   |   摩托罗拉定位服务:           |       0.30   |",
"|中信泽:                         |   0.50   |   WLAN/17201业务的短信受理:   |       0.10   |",
"|深圳市拇指族科技发展有限公司:   |   4.80   |                                |              |",
"|                                 |          |                                |              |",
"----------------------------------------------------------------------------------------------",
"   其他文本继续,表格只是文本中的一部分,有没有好的方法使之对齐                               ",
" 。。                                                                                   ",
};
CDC pMemDC;
for(int i=0;i<16;i++)
pMemDC->TextOut(start_cx,sizeA.cy*i+start_cy,info[i]);
输出后,在图片中显示没有对齐,问有说明好的方法?

解决方案 »

  1.   

    我全部采用空格组成,里面没有TAB键,当空格、数字和字符都是全角时才能对齐。我现在要一般文本都要对齐,含汉字、英文、字符、空格等。
      

  2.   

    你可以先定好每个字的宽度在依次将每个字输出啊!
    如:
    int len=strlen(line1);
    int i=0;
    while(i<len)
    {
       if(line1[i]>0)
       {
            Textout(i*24,y,line1+i,1);
            i++;
       }
       else
       {
            TextOut(i*24,y,line+i,2);
            i+=2;
       }
    }
      

  3.   

    一个一个字去显示,如果是汉字怎么办?
    如果几千个文本都转化成图片,那慢得要死呀。我认为主要在字体的设置问题。我没有MSDN,上网又很不方便,比较难。
      

  4.   

    汉字问题已经解决,但对齐却很难,最好只有采用一个一个字符或汉字去显示,但是速度另人失望。
    我在BCB中只要设置字体为宋体就可以对齐。不知道VC为何不行。
      

  5.   

    汉字问题已经解决,但对齐却很难,最好只有采用一个一个字符或汉字去显示,才能解决对齐问题,但是速度另人失望。
    我在BCB中只要设置字体为宋体就可以对齐。不知道VC为何不行。