我用image.canvas.textout方法输出文字后,还会在image上叠加一些图片,当将image放大一两倍时,文字就变得有些不清晰了,请问如何可以做到像word或wps一样,当调整显示比例时,内容会根据调整比例放大或缩小。word可以将显示比例调整到很好倍,但是还是很清晰哦。

解决方案 »

  1.   

    一般都是在OnPaint中按对应的字体大小一个个画的,而不是直接缩放图片。
    也就是说,把Canvas.TextOut放到窗体的OnPaint函数中实现,Image也在这个函数中通过StretchBlt等函数画上去。
      

  2.   

    不知word是不是也是这样实现的?
      

  3.   

    或者换个方法,为了防止在paint函数里写代码造成闪烁
    可以放两个控件,一个image存图片,一个label 透明存文字,image改变大小后,label大小字号也手动改变,需要保存图片的时候截图即可
      

  4.   

    大家还有什么办法呀?还有我想知道word的那个显示比例是如何实现的?
      

  5.   

    图片放大模糊,这个word也是无法做到的,不是矢量图是不行的, 有可能你测试的时候误解了。 
    如果文字你自己输出的,可以考虑放大图片后,再输出文字, 不是矢量图无解。 比如你拿个一寸照片,去扩影成海报,只能是一坨了。