C#学习-图片的处理
1.在图片上加防伪标记
private void btnAddString_Click(object sender, EventArgs e)
{
//以流的方式,获取一张图片
using (FileStream reader=new FileStream(@"H:/img/1.jpg",FileMode.OpenOrCreate,FileAccess.Read))
{
//通过流创建一个Image对象
using (Image img=Image.FromStream(reader))
{
//通过Image,创建一个画布
Graphics g = Graphics.FromImage(img);
//在画布上,画一个字符串
g.DrawString("我是有版权的",new Font("华文彩云",20,FontStyle.Bold),Brushes.Black,0,0 );
//保存,本机的物理路径 或 根目录下为“\”
img.Save(@"H:/img/new/1.jpg");
}
}
MessageBox.Show("ok");
}
2.对图片进行等比例缩放
private void btnImgCut_Click(object sender, EventArgs e)
{
//获取一张图片,得到一个流
using (FileStream reader = new FileStream(@"H:/img/1.jpg", FileMode.OpenOrCreate, FileAccess.Read))
{
//通过流,创建一个Image对象
using (Image img = Image.FromStream(reader))
{
//缩放后的宽度
int newWidth = (int)img.Width/2;
//缩放后的高度
int newHeight = (int)img.Height/2;
//创建一张新的空图片
Image newImage = new Bitmap(newWidth, newHeight);
//创建一张画布
Graphics g = Graphics.FromImage(newImage);
//在 新 画布上画上 图片
g.DrawImage(img,new Rectangle(0,0,newImage.Width,newImage.Height),new Rectangle(0,0,img.Width,img.Height),GraphicsUnit.Pixel );
//保存
newImage.Save(@"H:/img/new/1n.jpg");
}
}
MessageBox.Show("ok");
}
C#学习-图片的处理的更多相关文章
- iOS学习——图片压缩到指定大小以内
一.图片压缩简述 在我们开发过程中,有可能会遇到拍照.或者从相册中选择图片,要么单选或者多选,然后上传图片到服务器,一般情况下一张图片可能3-4M,如果类似微信朋友圈上传9张图片大约是 35M左右,如 ...
- Java多线程学习——图片下载
实现多线程方式1:继承类Thread——重写方法run——调用方法start 从网络下载图片首先要增加包commons-io.jar import org.apache.commons.io.File ...
- android 基础学习图片六progross
加载进度条应用
- Android图片开发内幕--基础篇
前言:本来我是做电视应用的,但是因为公司要出手机,人员紧张,所以就抽调我去支援一下,谁叫俺是雷锋呢!我做的一个功能就是处理手机中的应用ICON,处理无非就是美化一下,重新与底板进行合成和裁剪,用到了很 ...
- lecture14-RBM的堆叠、修改以及DBN的决策学习和微调
这是Hinton的第14课,主要介绍了RBM和DBN的东西,这一课的课外读物有三篇论文<Self-taught learning- transfer learning from unlabele ...
- Xamarin.Forms入门学习路线
Xamarin 介绍 Xamarin是一套跨平台解决方案,目的是使用C#语言创造原生的iOS,Android,Mac和Windows应用. Xamarin的三个优势: Xamarin App拥有原生A ...
- Android 图片开发内幕系列第一篇
前言:本来我是做电视应用的,但是因为公司要出手机,人员紧张,所以就抽调我去支援一下,谁叫俺是雷锋呢!我做的一个功能就是处理手机中的应用ICON,处理无非就是美化一下,重新与底板进行合成和裁剪,用到了很 ...
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】
转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...
- ThinkPHP图片上传
ThinkPHP是国内比较流行的轻量级的PHP框架,它在国内流行的一个最主要的因素在于它的说明文档非常健全完善,以及它源码内的注释都是中文的,方便于英语能力较差的程序员学习. 图片上传在网站里是很常用 ...
随机推荐
- 【01】bootstrap基本信息
[01]基本信息 中文官网:http://www.bootcss.com/ 英文官网:https://github.com/twbs/bootstrap/ 支持IE8+ CND : htt ...
- HDU 1234 简单模拟题
题目很简单不多说了,我只是觉得这题目的输入方式还是很有特点的 #include <cstdio> #include <cstring> #include <algorit ...
- [JavaEE] JTA, Java Transaction API, Repository for DB opreations
Mainly two things: 1. For all the creating and deleting opreations for the DB, we want to use 'REQUI ...
- Python3基础(九) 错误和异常
本文主要介绍Python中的错误和异常,涉及到简单的异常处理.抛出异常以及清理动作.至于自定义异常类,将在介绍类与继承的时候讲到. 一.定义 常见的两种错误:语法错误 和 异常. 1.语法错误(Syn ...
- LeetCode 69. Sqrt(x) (平方根)
Implement int sqrt(int x). Compute and return the square root of x. x is guaranteed to be a non-nega ...
- Android:仿手机QQ好友动态的ListView
1.介绍: 本博客使用XListView模仿Android版QQ好友动态的ListView效果.效果截图例如以下: 效果图1 watermark/2/text/aHR0cDovL2Jsb2cuY3Nk ...
- 1245 最小的N个和(前k小ai+bi)
1245 最小的N个和 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 Description 有两个长度为 N ...
- Java中去除字符串中的空格
1.去掉首尾的空格 String.trim() trim()是去掉首尾空格 2.去掉所有的空格 str.replace(" ", ""); 去掉所有空格,包括 ...
- 2.EF的数据审计日志
转载:采用EntityFramework.Extended 对EF进行扩展(Entity Framework 延伸系列2) 数据审计日志: 先说一下这个审计的概念,就是对所有的实体的操作(增,删,改) ...
- codeforces 920 EFG 题解合集 ( Educational Codeforces Round 37 )
E. Connected Components? time limit per test 2 seconds memory limit per test 256 megabytes input sta ...