最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#實現(xiàn)繪制浮雕圖片效果實例

 更新時間:2014年08月11日 15:10:28   投稿:shichen2014  
這篇文章主要介紹了C#實現(xiàn)繪制浮雕圖片效果實例,是C#程序設(shè)計中非常實用的一個功能,需要的朋友可以參考下

本文采用C#實例講解了處理圖片為浮雕效果的實現(xiàn)方法,這在PS中是一個常見的功能,也是C#中的一個簡單的圖像處理例子。程序先讀取原圖,然后依次訪問每個像素的RGB值,獲取相鄰兩個像素的R、G、B值,計算與左上角像素的RGB分量之差,將計算后的RGB值回寫到位圖,最后進行圖片的浮雕處理。

主要代碼如下:

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Drawing.Imaging;
namespace EmbossColander
{
 public class Form1 : System.Windows.Forms.Form
 {
 private System.ComponentModel.Container components = null;
 public Form1()
 {
  InitializeComponent();
 }
 protected override void Dispose( bool disposing )
 {
  if( disposing )
  {
  if (components != null)
  {
   components.Dispose();
  }
  }
  base.Dispose( disposing );
 }
 #region Windows 窗體設(shè)計器生成的代碼
 private void InitializeComponent()
 {
  this.components = new System.ComponentModel.Container();
  this.Size = new System.Drawing.Size(350,200);
  this.Text = "Form1";
 }
 #endregion
 protected override void OnPaint(PaintEventArgs e)
 {
  base.OnPaint (e);
  Graphics graphics = e.Graphics;
  graphics.Clear(Color.White);
  graphics.ScaleTransform(0.7f,0.7f);
  Bitmap image = new Bitmap("dog.bmp");
  int Width = image.Width;
  int Height = image.Height;
  //image2:進行雕刻處理
  Bitmap image2 = image.Clone(new Rectangle(0,0,Width,Height),PixelFormat.DontCare );
  //繪制原圖
  graphics.DrawImage(
  image, new Rectangle(0, 0, Width, Height));
  Color color, colorTemp,colorLeft;
  //進行圖片的浮雕處理
  //依次訪問每個像素的RGB值
  for(int i=Width-1; i>0;i--)
  {
  for( int j=Height-1; j>0;j--)
  {
   //獲取相鄰兩個像素的R、G、B值
   color =image.GetPixel(i, j);
   colorLeft=image.GetPixel(i-1, j-1);
   //計算與左上角像素的RGB分量之差
   //67:控制圖片的最低灰度,128:常量,更改這兩個值會得到不同的效果
   int r = Math.Max(67,Math.Min(255,
   Math.Abs(color.R-colorLeft.R+128)));
   int g = Math.Max(67,Math.Min(255,
   Math.Abs(color.G-colorLeft.G+128)));
   int b = Math.Max(67,Math.Min(255,
   Math.Abs(color.B-colorLeft.B+128)));
   Color colorResult=Color.FromArgb(255,r,g,b);
   //將計算后的RGB值回寫到位圖
   image.SetPixel(i, j,colorResult);
  }
  //繪制浮雕圖
  graphics.DrawImage(
   image, new Rectangle(Width+10, 0, Width, Height));
  }
 }
 [STAThread]
 static void Main()
 {
  Application.Run(new Form1());
 }
 }
}

感興趣的朋友可以點此本站下載完整實例代碼。

相關(guān)文章

最新評論

赤壁市| 鱼台县| 稷山县| 仁怀市| 湖州市| 全南县| 颍上县| 榆社县| 万宁市| 福安市| 龙江县| 宁明县| 丹阳市| 吉隆县| 琼海市| 瑞丽市| 昌黎县| 三台县| 岑巩县| 淮南市| 乐陵市| 东兰县| 舒兰市| 正镶白旗| 麦盖提县| 黄山市| 樟树市| 临洮县| 张家川| 八宿县| 措美县| 邛崃市| 德格县| 高安市| 故城县| 山阳县| 石阡县| 柘城县| 永年县| 田阳县| 玉林市|