也容易,如果是黑白三個顏色加上相同的漸變量,彩色的是起始顏色的三個分量與終止顏色的對應(yīng)三個分量的差值,再除于相同的份數(shù),就得出三原色各自的步進量。
創(chuàng)新互聯(lián)為客戶提供專業(yè)的成都網(wǎng)站設(shè)計、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、程序、域名、空間一條龍服務(wù),提供基于WEB的系統(tǒng)開發(fā). 服務(wù)項目涵蓋了網(wǎng)頁設(shè)計、網(wǎng)站程序開發(fā)、WEB系統(tǒng)開發(fā)、微信二次開發(fā)、手機網(wǎng)站制作設(shè)計等網(wǎng)站方面業(yè)務(wù)。
窗體上放個圖片框試試下面代碼:
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?如何使文字能漸變顏色,就是顏色慢慢變淡然后在慢慢恢復(fù)?"
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
這個問題的本質(zhì)就是隨機二字,無論c/s還是b/s里面的label1 ,只要隨機設(shè)置字體顏色屬性即可。而相關(guān)屬性我相信您肯定知道,關(guān)鍵是怎樣隨機。vb.net里面有一個隨機函數(shù),只要利用該隨機函數(shù),隨機生成相應(yīng)的顏色即可,然后把隨機顏色賦值給label的屬性
假設(shè)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)