重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
也容易,如果是黑白三个颜色加上相同的渐变量,彩色的是起始颜色的三个分量与终止颜色的对应三个分量的差值,再除于相同的份数,就得出三原色各自的步进量。
创新互联为客户提供专业的成都网站设计、做网站、成都外贸网站建设公司、程序、域名、空间一条龙服务,提供基于WEB的系统开发. 服务项目涵盖了网页设计、网站程序开发、WEB系统开发、微信二次开发、手机网站制作设计等网站方面业务。
窗体上放个图片框试试下面代码:
Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
Dim startColor As Color = Color.Red
Dim endColor As Color = Color.Green
Dim s As String = "vb.net 如何使文字能渐变颜色,就是颜色慢慢变淡然后在慢慢恢复?"
Dim Steps As Integer = s.Length \ 2
Dim StepR As Integer = (CInt(endColor.R) - startColor.R) \ Steps
Dim StepG As Integer = (CInt(endColor.G) - startColor.G) \ Steps
Dim StepB As Integer = (CInt(endColor.B) - startColor.B) \ Steps
Dim R As Integer = startColor.R
Dim G As Integer = startColor.G
Dim B As Integer = startColor.B
Dim drawFont As New System.Drawing.Font("Arial", 16)
Dim X As Integer = 50
For i As Integer = 1 To Steps
Dim drawBrush As New SolidBrush(Color.FromArgb(R, G, B))
e.Graphics.DrawString(s.Substring(i - 1, 1), drawFont, drawBrush, X, 50.0)
X += 18
R += StepR
G += StepG
B += StepB
Next
For i As Integer = 1 To Steps
Dim drawBrush As New SolidBrush(Color.FromArgb(R, G, B))
e.Graphics.DrawString(s.Substring(i + Steps - 1, 1), drawFont, drawBrush, X, 50.0)
X += 18
R -= StepR
G -= StepG
B -= StepB
Next
End Sub
这个问题的本质就是随机二字,无论c/s还是b/s里面的label1 ,只要随机设置字体颜色属性即可。而相关属性我相信您肯定知道,关键是怎样随机。vb.net里面有一个随机函数,只要利用该随机函数,随机生成相应的颜色即可,然后把随机颜色赋值给label的属性
假设Label控件名为Label1
Label1.FontName = "黑体" '黑体
Label1.FontBold = True '加粗
Label1.FontItalic = True '斜体
Label1.FontSize = 12 '12号字
或
Label1.Font.Name = "黑体" '黑体
Label1.Font.Bold = True '加粗
Label1.Font.Italic = True '斜体
Label1.Font.Size = 12 '12号字
两种方法效果一样,也可以混用.
给点提示吧,已粗体为例(完全是我自己的方法,不知别人是怎么做的):
'先获取选择的字体信息(字体、大小、样式。。。)
Dim currentFont As System.Drawing.Font = RichTextBox1.SelectionFont
'在重新定义某种样式的时候,不丢失其他信息
RichTextBox1.SelectionFont = New Font(currentFont.FontFamily, currentFont.Size, FontStyle.Bold)