var png : TPngObject;
··
img_tile := TImage.Create(GroupBox2);
img_tile.Picture.Assign(png); //载入1张带有透明的PNG图
img_tile.Canvas.TextOut(0,0,'tt'); //运行时候这行出错,提示can only modify image if it contains bitmap.
这个里面没有位图··。
如何解决这2个问题呢。
4 个解决方案
#1
#2
首先要说的是,TButton不具备这个属性,就算设置了让控件有半透明显示的属性,实际上效果也不行,一般要实现半透明,都要自己绘制实现,获得底图,然后绘制上去,然后融合。
至于第二个问题
如何实现在已经载入PNG图的TImage上写文字
可以用Png加载了图片之后,用png.Canvas.TextOut
写上文字,然后Image刷新就行了
至于你用的那个报错,建议你去看看TImage源码中的Canvas的指向,自然明了!
另建议,碰到问题,何妨去追追问题的根源,看看VCL内部的东西!
至于第二个问题
如何实现在已经载入PNG图的TImage上写文字
可以用Png加载了图片之后,用png.Canvas.TextOut
写上文字,然后Image刷新就行了
至于你用的那个报错,建议你去看看TImage源码中的Canvas的指向,自然明了!
另建议,碰到问题,何妨去追追问题的根源,看看VCL内部的东西!
#3
路过学习了………………
#4
1.D自带的button控件不可以设置透明
2.TImage只有加载bmp图片才可画
2.TImage只有加载bmp图片才可画
#1
#2
首先要说的是,TButton不具备这个属性,就算设置了让控件有半透明显示的属性,实际上效果也不行,一般要实现半透明,都要自己绘制实现,获得底图,然后绘制上去,然后融合。
至于第二个问题
如何实现在已经载入PNG图的TImage上写文字
可以用Png加载了图片之后,用png.Canvas.TextOut
写上文字,然后Image刷新就行了
至于你用的那个报错,建议你去看看TImage源码中的Canvas的指向,自然明了!
另建议,碰到问题,何妨去追追问题的根源,看看VCL内部的东西!
至于第二个问题
如何实现在已经载入PNG图的TImage上写文字
可以用Png加载了图片之后,用png.Canvas.TextOut
写上文字,然后Image刷新就行了
至于你用的那个报错,建议你去看看TImage源码中的Canvas的指向,自然明了!
另建议,碰到问题,何妨去追追问题的根源,看看VCL内部的东西!
#3
路过学习了………………
#4
1.D自带的button控件不可以设置透明
2.TImage只有加载bmp图片才可画
2.TImage只有加载bmp图片才可画