-
大小: 10.56MB文件类型: .rar金币: 1下载: 0 次发布日期: 2023-10-08
- 语言: C#
- 标签: C# 图像亮度 MagickImage
资源简介
由于一个项目需要,调节图片的亮度,开始使用遍历图片每一个像素,并修改图像的RGB值,发现修改后无法恢复到原来图像。在网上查了一些资料,发现了强大的MagickImage,给大家分享一下,希望对大家有所帮助。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace SetImageHSL
{
public partial class Form1 : Form
{
private ImageMagick.MagickImage originalMagickImage;
public Form1()
{
InitializeComponent();
}
private void button3_Click(object sender EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
pictureBox2.Image = Image.FromFile(openFileDialog1.FileName);
pictureBox1.Image = Image.FromFile(openFileDialog1.FileName);
originalMagickImage = new ImageMagick.MagickImage(openFileDialog1.FileName);
}
}
private void trackBar1_Scroll(object sender EventArgs e)
{
lbHue.Text = trackBarH.Value.ToString();
if (pictureBox2.Image == null)
return;
ImageMagick.MagickImage newImage = new ImageMagick.MagickImage(originalMagickImage); // 相当于深复制
ImageMagick.Percentage brightness = new ImageMagick.Percentage(trackBarL.Value); // 100%表示不改变该属性
ImageMagick.Percentage hue = new ImageMagick.Percentage(trackBarH.Value); // 100%表示不改变该属性
ImageMagick.Percentage saturation = new ImageMagick.Percentage(trackBarS.Value); // 100%表示不改变该属性
newImage.Modulate(brightness saturation hue);
pictureBox2.Image = newImage.ToBitmap();
}
private void trackBarS_Scroll(object sender EventArgs e)
{
lbS.Text = trackBarS.Value.ToString();
if (pictureBox2.Image == null)
return;
ImageMagick.MagickImage newImage = new ImageMagick.MagickImage(originalMagickImage); // 相当于深复制
ImageMagick.Percentage brightness = new ImageMagick.Percentage(trackBarL.Value); // 100%表示不改变该属性
ImageMagick.Percentage hue = new ImageMagick.Percentage(trackBarH.Value); // 100%表示不改变该属性
ImageMagick.Percentage saturation = new ImageMagick.Percentage(trackBarS.Value); // 100%表示不改变该属性
newImage.Modulate(brightness saturation hue);
pictureBox2.Image = newImage.ToBitmap();
}
private void trackBarL_Scroll(object sender EventArgs e)
{
lbL.Text = trackBarL.Value.ToString();
if (pictureBox2.Image == null)
return;
ImageMagick.MagickImage newImage = new ImageMagick.MagickImage(originalMagickImage); // 相当于深复制
ImageMagick.Percentage brightness = new ImageMagick.Percentage(trackBarL.Value); // 100%表示不改变该属性
ImageMagick.Percentage hue = new ImageMagick.Percentage(trackBarH.Value); // 100%表示不改变该属性
ImageMagick.Percentage saturation = new ImageMagick.Percentage(trackBarS.Value); // 100%表示不改变该属性
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 12527160 2018-08-06 17:03 SetImageHSL\bin\Debug\Magick.NET-Q16-AnyCPU.dll
文件 1331645 2018-08-06 17:03 SetImageHSL\bin\Debug\Magick.NET-Q16-AnyCPU.xm
文件 12288 2018-08-08 10:53 SetImageHSL\bin\Debug\SetImageHSL.exe
文件 22016 2018-08-08 10:53 SetImageHSL\bin\Debug\SetImageHSL.pdb
文件 24216 2018-08-08 10:27 SetImageHSL\bin\Debug\SetImageHSL.vshost.exe
文件 490 2013-03-18 17:00 SetImageHSL\bin\Debug\SetImageHSL.vshost.exe.manifest
文件 3313 2018-08-08 10:53 SetImageHSL\Form1.cs
文件 9859 2018-08-08 10:47 SetImageHSL\Form1.Designer.cs
文件 6194 2018-08-08 10:47 SetImageHSL\Form1.resx
文件 215628 2018-08-08 11:01 SetImageHSL\MagickImage安装方法.docx
文件 6963 2018-08-08 10:24 SetImageHSL\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 670 2018-08-08 10:53 SetImageHSL\obj\Debug\SetImageHSL.csproj.FileListAbsolute.txt
文件 977 2018-08-08 10:53 SetImageHSL\obj\Debug\SetImageHSL.csproj.GenerateResource.Cache
文件 12288 2018-08-08 10:53 SetImageHSL\obj\Debug\SetImageHSL.exe
文件 180 2018-08-08 10:53 SetImageHSL\obj\Debug\SetImageHSL.Form1.resources
文件 22016 2018-08-08 10:53 SetImageHSL\obj\Debug\SetImageHSL.pdb
文件 180 2018-08-08 10:53 SetImageHSL\obj\Debug\SetImageHSL.Properties.Resources.resources
文件 148 2018-08-08 10:24 SetImageHSL\packages.config
文件 492 2018-08-08 10:13 SetImageHSL\Program.cs
文件 1364 2018-08-08 10:13 SetImageHSL\Properties\AssemblyInfo.cs
文件 2874 2018-08-08 10:13 SetImageHSL\Properties\Resources.Designer.cs
文件 5612 2018-08-08 10:13 SetImageHSL\Properties\Resources.resx
文件 1098 2018-08-08 10:13 SetImageHSL\Properties\Settings.Designer.cs
文件 249 2018-08-08 10:13 SetImageHSL\Properties\Settings.settings
文件 3947 2018-08-08 10:27 SetImageHSL\SetImageHSL.csproj
目录 0 2018-08-08 10:13 SetImageHSL\obj\Debug\TempPE
目录 0 2018-08-08 10:53 SetImageHSL\bin\Debug
目录 0 2018-08-08 10:53 SetImageHSL\obj\Debug
目录 0 2018-08-08 10:13 SetImageHSL\bin
目录 0 2018-08-08 10:13 SetImageHSL\obj
............此处省略5个文件信息
相关资源
- C#语言操作ActiveX_automation CAD二次开发
- C#收银系统源码
- C#实现打字游戏功能齐全完成代码
- unity C# Entitas 1.5.2 框架 带jenny server
- 支付宝线下支付C# WINFORM及官网DEMO
- C#视频播放器源码
- C# 地铁一卡通系统源码(含数据库)
- c# 实现多个客户端桌面截取共享到服
- NX OPEN C# 开发官方教程
- 《C#并发编程经典》高清带书签
- c#窗体应用程序
- 基于c#的图书管理系统
- C# paint.net 源代码
- c#大富翁源代码+详细注释
- C#并发编程经典-高清PDF(图灵2015年出
- C#MyQQ增强版
- C#做的桌面快捷方式管理程序
- winform 进销存源码+数据库
- C#语言编写的酒店管理系统
- C#人事管理系统winform版
- Arcgis Engine C# web开发(共24个)
- 使用C#语言winform做的医院挂号管理系
- C#功能界面美化(多种时尚化颜色搭配
- C# winform 通讯录软件
- 医院管理系统C#.NET 完整
- C#程序设计及应用教程第三版-马俊主
- c#水平矫正文本图像
- 校园导游图 C# floyd算法
- 数据结构与算法:C#语言描述(中文)
- C#课程设计《学生防疫信息管理软件》
评论
共有 条评论