几种渐变方法对比(含多种颜色水平渐变、中心至四周渐变等)

原创 2007年09月12日 14:25:00

常用的渐变方法对比如下

界面预览:

 

程序如下:

Imports System.Drawing
Imports System.Drawing.Drawing2D

Public Class form1

    
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        
Call Me.GradientFill1(Pic1)
        
Call Me.GradientFill2(Pic2)
        
Call Me.GradientFill3(Pic3)
        
Call Me.GradientFill4(Pic4)
    
End Sub


    
Private Sub GradientFill1(ByVal Control As Control)
        
Dim LineBrush As New LinearGradientBrush(Control.ClientRectangle, Color.Red, Color.Blue, LinearGradientMode.Horizontal)
        Control.CreateGraphics.FillRectangle(LineBrush, Control.ClientRectangle)
    
End Sub


    
Private Sub GradientFill2(ByVal Control As Control)
        
Dim path As New GraphicsPath
        path.AddRectangle(Control.ClientRectangle)

        
Dim pgb As New PathGradientBrush(path)

        pgb.CenterPoint 
= Point.op_Implicit(New Point(Control.Width / 2, Control.Height / 2))
        pgb.CenterColor 
= Color.White

        
Dim Colors() As Color = {Color.Red, Color.LightGreen, Color.Yellow, Color.Blue}
        pgb.SurroundColors 
= Colors
        Control.CreateGraphics.FillRectangle(pgb, Control.ClientRectangle)
    
End Sub


    
Private Sub GradientFill3(ByVal Control As Control)
        
Dim path As New GraphicsPath
        path.AddRectangle(Control.ClientRectangle)

        
Dim pgb As New PathGradientBrush(path)
        pgb.CenterPoint 
= Point.op_Implicit(New Point(Control.Width / 2, Control.Height / 2))

        
Dim Colors() As Color = {Color.Red, Color.LightGreen, Color.Yellow, Color.Blue}
        
Dim Positions() As Single = {00.30.61}

        
Dim cb As ColorBlend = New ColorBlend

        cb.Colors 
= Colors
        cb.Positions 
= Positions
        pgb.InterpolationColors 
= cb
        Control.CreateGraphics.FillRectangle(pgb, Control.ClientRectangle)
    
End Sub


    
Private Sub GradientFill4(ByVal Control As Control)
        
Dim Colors() As Color = {Color.Red, Color.LightGreen, Color.Yellow, Color.Blue}
        
Dim Positions() As Single = {00.330.661}
        
Dim cb As ColorBlend = New ColorBlend
        cb.Colors 
= Colors
        cb.Positions 
= Positions

        
Dim LineBrush As New LinearGradientBrush(Control.ClientRectangle, Color.White, Color.Black, LinearGradientMode.Horizontal)
        LineBrush.InterpolationColors 
= cb
        LineBrush.LinearColors 
= Colors
        Control.CreateGraphics.FillRectangle(LineBrush, Control.ClientRectangle)
    
End Sub


End Class


Android中心渐变动画XML

anim_zoom_in.xml
  • gdestiny
  • gdestiny
  • 2014年05月21日 20:04
  • 1149

技能GET-使用CSS3渐变实现单一元素多颜色展示

发现一个比较好玩的东东,CSS3渐变,基本介绍和使用方式详见http://www.runoob.com/css3/css3-gradients.html。 原本是实现颜色的过渡效果,已替代图片的使用...
  • lm278858445
  • lm278858445
  • 2016年11月28日 16:03
  • 459

CSS线性渐变 垂直和水平渐变linear-gradient

CSS实现渐变特效,从此可以不用图片了。本特效代码演示了水平和垂直方向上的渐变效果,CSS技术关键点,filter:progid:DXImageTransform.Microsoft.Gradient...
  • life66881
  • life66881
  • 2015年05月28日 12:43
  • 3800

渐变的ProgressBar

在drawable中创建一张图片progress_bar.xml:
  • gundumw100
  • gundumw100
  • 2017年04月10日 18:21
  • 264

iOS实现颜色渐变的几种方法

1. CAGradientLayer实现渐变 2. Core Graphics相关方法实现渐变 3. 以CAShapeLayer作为layer的mask属性...
  • xiaochaofeiyu
  • xiaochaofeiyu
  • 2016年10月18日 16:25
  • 1690

android里shape与渐变色学习

先说下shape 资源文件里主要包括:边角(corners),渐变色(gradrent),大小(size),边距(padding) ,填充(solid),扫边(stoke) 先说下边角 ...
  • sinat_30474567
  • sinat_30474567
  • 2016年04月26日 15:22
  • 3248

GDI+学习之------ 绘制角度可变的颜色渐变效果

GDI+ 是GDI(Windows 早期版本提供的图形设备接口)的后续版本,是Microsoft Windows XP作系统即后续版本的图形显示技术。它已经集成到了.Net开发环境中,所以不管你的OS...
  • jiangqin115
  • jiangqin115
  • 2015年03月19日 15:58
  • 1706

Android如何使用XML创建一个环形渐变颜色图片

android:fromDegrees="0"    android:pivotX="50%"    android:pivotY="50%"    android:toDegrees="360...
  • GXL_1899
  • GXL_1899
  • 2017年06月30日 15:23
  • 226

Android 使用xml实现边框阴影,背景渐变效果(附有RGB颜色查询对照表)

上图是显示效果,下面是代码实现: 个人理解就是使用layer-list实现两层view的叠加,其中top,left,bottom,left控制阴影 xml version="1.0" encodin...
  • Jersey_me
  • Jersey_me
  • 2017年04月20日 16:24
  • 4485

用PS把一张图片的边缘做成渐变的效果

用PS把一张图片的边缘做成渐变的效果 1.先用PS新建一个文档,再导入一张图层素材,使用矩形选框工具,做出矩形选区 2.单击鼠标右键,选择羽化 3...
  • cmlddcml
  • cmlddcml
  • 2015年10月06日 09:03
  • 2555
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:几种渐变方法对比(含多种颜色水平渐变、中心至四周渐变等)
举报原因:
原因补充:

(最多只允许输入30个字)