程序中使用了一种特殊的字体,现在想将在CANVAS上用TEXTOUT输出的字的某一区域复制到另一个区域中,并且在另一区域居中填充!

解决方案 »

  1.   

    一般情况下对canvas操作,最常用的是BitBlt函数(WinApi)。这个函数一定要知道的。
    这个函数你看看帮助就可以了。就可以完成区域的复制功能。
    至于你说的并且在另外一区域中居中填充,没用搞明白意思。呵呵。
      

  2.   

    我现在写了如下语句,但打印出来却什么也没有。
    BitBlt(printer.Canvas.Handle,0,0,iWidth,iHeight div 2,image1.Canvas.Handle,0,iHeight div 2,SRCCOPY );
      

  3.   

    但在image之间拷贝就可以在目标上看到有图像。语句如下:
    BitBlt(image2.Canvas.Handle,0,0,iWidth,iHeight div 2+1,image1.Canvas.Handle,0,iHeight div 2,srccopy);
      

  4.   

    ACanvas.CopyRect(rect(0, 0, 100, 100), m_BitMap.Canvas, rect(0, 0, 100, 100));
      

  5.   

    我现在是如下的语句
    printer.Canvas.CopyRect(rect(0,0,iWidth,iHeight),Image1.Canvas,rect(0,0,iWidth,iHeight));
    但还是不行