【发布时间】:2011-02-04 17:04:09
【问题描述】:
我想在其中心绘制一个带有百分比的进度条, 但我希望 text 具有 background 的 negative(对比色)。
因此,ProgressBar 已填充部分上方的文本部分为白色,未填充部分上方的部分为白色。
我可以通过“作弊”来做到这一点
- 首先绘制文本的黑色部分
- 绘制进度矩形(它将覆盖要隐藏的部分)
- 仅在进度矩形上绘制白色文本(剪切)
在此应用程序中,两次绘制文本对性能的影响可以忽略不计,但我很感兴趣是否有一些简单的方法可以只分两步完成(比如让进度条以某种方式反转已绘制的文本) 混合。
【问题讨论】:
-
如何剪切白色文本?
-
@farukdgn
graphicsObj.Clip = new Region(rectangle);- 这会将Graphics对象中的绘图限制在您设置的Rectangle区域内。