图像 - 创建 头像V1.0
byte[] logo
//处理群头像信息
//byte[] logoByte = Convert.FromBase64String(logo);
////1.0
System.IO.MemoryStream mstream = new System.IO.MemoryStream(logo);
//1.1
System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(mstream);
//1.2
bitmap.PixelFormat.GetType();
//1.3
logoImg = qun.ID + "qunImg" + DateTime.Now.ToString("yyyymmddhhmmss") + DateTime.Now.Millisecond + ".jpg";
//1.4
bitmap.Save(Qun_Logo_IMG_SAVE_URL, System.Drawing.Imaging.ImageFormat.Jpeg);
/// <summary>
/// 上传图片
/// </summary>
/// <param name="type">图片类型</param>
/// <param name="bytesStr">图片流</param>
/// <returns></returns>
public string UploadImg(int type, String bytesStr)
{
//取到服务器路径
//string pathTemp = System.Web.HttpContext.Current.Request.PhysicalApplicationPath;
//int index = pathTemp.LastIndexOf("\\");
//pathTemp = pathTemp.Substring(0, index + 1);
String ImgStr = CommonUtility.ApplicationPath + "Images";
//string ImgStr = Server.MapPath("~\Images");
//string ImgStr = "..\Images";
//如果不存在路径
if (!Directory.Exists(ImgStr))
{
//创建图片路径
Directory.CreateDirectory(ImgStr);
}
//定义流
MemoryStream ms = null;
//返回结果
String result = "";
//定义图片
Bitmap bmp = null;
try
{
//解析图片流
//FileStream ifs = new FileStream(txtFileName, FileMode.Open, FileAccess.Read);
//StreamReader sr = new StreamReader(ifs);
//String inputStr = sr.ReadToEnd();
byte[] arr = Convert.FromBase64String(bytesStr);
ms = new MemoryStream(arr);
bmp = new Bitmap(ms);
}
catch (Exception ex)
{
return null;
}
//执行日期
DateTime dt = DateTime.Now;
String dateStr = dt.ToString("yyyyMMdd");
//判断上传图片类型
//贴图图片
if (type == 1)
{
string qunImgStr = ImgStr + "\\qunImg";
//如果不存在路径
if (!Directory.Exists(qunImgStr))
{
//创建图片路径
Directory.CreateDirectory(qunImgStr);
}
//今日文件夹
string dateQunImgStr = qunImgStr + "\\" + dateStr;
//如果不存在路径
if (!Directory.Exists(dateQunImgStr))
{
//创建图片路径
Directory.CreateDirectory(dateQunImgStr);
}
string imgname = dt.ToString("yyyyMMddHHmmssffffff") + "_" + bytesStr.Length.ToString() + "_" + type.ToString() + ".jpg";
string imgurl = dateQunImgStr + "\\" + imgname;
try
{
bmp.Save(imgurl, System.Drawing.Imaging.ImageFormat.Jpeg);
}
catch (Exception ex)
{
return null;
}
result = "Images/qunImg/" + dateStr + "/" + imgname;
}
//头像图片
else
{
string iconImgStr = ImgStr + "\\iconImg";
//如果不存在路径
if (!Directory.Exists(iconImgStr))
{
//创建图片路径
Directory.CreateDirectory(iconImgStr);
}
//今日文件夹
string dateIconImgStr = iconImgStr + "\\" + dateStr;
//如果不存在路径
if (!Directory.Exists(dateIconImgStr))
{
//创建图片路径
Directory.CreateDirectory(dateIconImgStr);
}
string imgname = dt.ToString("yyyyMMddHHmmssffffff") + "_" + bytesStr.Length.ToString() + "_" + type.ToString() + ".jpg";
string imgurl = dateIconImgStr + "\\" + imgname;
try
{
bmp.Save(imgurl, System.Drawing.Imaging.ImageFormat.Jpeg);
}
catch (Exception ex)
{
return null;
}
result = "Images/iconImg/" + dateStr + "/" + imgname;
}
if (ms != null)
{
ms.Close();
}
return result;
}
//测试方法
public string getimgbase64(string path)
{
try
{
Bitmap bmp = new Bitmap(path);
MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] arr = new byte[ms.Length];
ms.Position = 0;
ms.Read(arr, 0, (int)ms.Length);
ms.Close();
String img = Convert.ToBase64String(arr);
return this.UploadImg(1, img);
}
catch (Exception ex)
{
return null;
}
}
#endregion
Test
PicUploadTest
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PicUploadTest.aspx.cs" Inherits="WebService.PicUploadTest" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:FileUpload ID="FileUpload1" runat="server" />
<br />
<br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
<br />
<br />
<br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<br />
<br />
</div>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using RSAIF.BLL.IServiceBLL;
using RSAIF.BLL.ServiceBLL;
using System.Drawing;
using System.IO;
namespace WebService
{
public partial class PicUploadTest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string filepath = FileUpload1.PostedFile.FileName;
string filename = filepath.Substring(filepath.LastIndexOf("//") + 1);
var path = Server.MapPath("~/images/test/") + filename;
FileUpload1.PostedFile.SaveAs(path);
//上传图片
UploadManage model = new UploadManage();
try
{
Bitmap bmp = new Bitmap(path);
MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] arr = new byte[ms.Length];
ms.Position = 0;
ms.Read(arr, 0, (int)ms.Length);
ms.Close();
String img = Convert.ToBase64String(arr);
Label1.Text = model.UploadImg(1, img);
}
catch (Exception ex)
{
Label1.Text = ex.Message;
}
//model.UploadImg(2, path);
//model.getimgbase64(path);
}
}
}
图像 - 创建 头像V1.0的更多相关文章
- .Net Core .Net Core V1.0 创建MVC项目
.Net Core V1.0 创建MVC项目 创建MVC项目有两种方式: 一.创建Web项目:(有太多没用的东西要去删太麻烦) 2.项目目录结构: 此种方法要注意的是,会创建好多个json文件,下面就 ...
- 【JS】heatmap.js v1.0 到 v2.0,详细总结一下:)
前段时间,项目要开发热力图插件,研究了heatmap.js,打算好好总结一下. 本文主要有以下几部分内容: 部分源码理解 如何迁移到v2.0 v2.0官方文档译文 关于heatmap.js介绍,请看这 ...
- ZXing工具类v1.0
package com.jadyer.util; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import jav ...
- Rookey.Frame v1.0快速开发平台-整体介绍
Rookey.Frame v1.0是一套基于.NET MVC的极速开发框架,支持简单逻辑模块零代码编程.支持二次开发,具有高扩展性.高复用性.高伸缩性. 框架特点 (1)简单逻辑模块实现零代码编程,通 ...
- Canvas绘制不规则图形,实现可拖动,编辑--V1.0第一篇
目前的工作在做在线的标注工具,接触canvas一年了,各种绘制,基本上图像的交互canvas都可以完成,也写了几篇关于canvas的文章,遇到的问题也写博客上了,对于canvas有问题的朋友可以去看看 ...
- 熊海CMS xhcms v1.0代码审计
有空的时候就进行小型CMS的代码审计,这次审计的对象是熊海CMS v1.0 本地环境安装好了之后,可以看到提示安装了锁文件 说明重装漏洞应该不会存在了,这时候丢进seay代码审计系统的代码也出结果了, ...
- ASP.NET Boilerplate终于发布v1.0了
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:ABP经过2年多的开发,终于发布第一个主要版本了,谨此提醒ABP的使用者. ASP.N ...
- .net下灰度模式图像在创建Graphics时出现:无法从带有索引像素格式的图像创建graphics对象 问题的解决方案。
在.net下,如果你加载了一副8位的灰度图像,然后想向其中绘制一些线条.或者填充一些矩形.椭圆等,都需要通过Grahpics.FromImage创建Grahphics对象,而此时会出现:无法从带有索引 ...
- 基于Qt5.5.0的sql数据库、SDK_tts文本语音朗读的CET四六级单词背诵系统软件的编写V1.0
作者:小波 QQ:463431476 请关注我的博客园:http://www.cnblogs.com/xiaobo-Linux/ 我的第二款软件:CET四六级单词背诵软件.基于QT5.5.0.sql数 ...
随机推荐
- python 2.6升级到2.7
CentOS 6.5上安装的python版本是2.6.6,不能满足我运行软件的要求,所以对python进行升级. 原以为这也就是安装个软件的事儿,在我求稳搜索一下了之后发现,也并不是那么单纯简单. 下 ...
- iOS Dev (21) 用 AVPlayer 播放一个本地音频文件
iOS Dev (21) 用 AVPlayer 播放一个本地音频文件 作者:CSDN 大锐哥 博客:http://blog.csdn.net/prevention 前言 这篇文章与上一篇极其相似,要注 ...
- css 兼容小三角
<!DOCTYPE><html ><head><meta http-equiv="Content-Type" content=" ...
- Square Coins(母函数)
Square Coins 点我 Problem Description People in Silverland use square coins. Not only they have square ...
- 回文数猜想(hd1282)
回文数猜想 Problem Description 一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数.任取一个正整数,如果不是回文数,将该数与他的倒序 ...
- Java Web 中 过滤器与拦截器的区别
过滤器,是在java web中,你传入的request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或者struts的 action进行业务逻辑,比如过滤掉非法u ...
- zabbix 模版其实就是主机
</pre><pre name="code" class="python">mysql> select hostid,host , ...
- codevs1219 骑士游历
题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象棋马. 规定: 1)马只能走日字 2)马只能向右跳 问给定起点x1,y1和终点x2,y ...
- HDU1181 变形课 (回溯法)
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submis ...
- 谈谈 WLST Custom Commands
在了解WLST定制命令之前,简单说一下WLST,WLST 全称叫Weblogic Scripting Tool, 它提供了一组预定义命令来方便Weblogic的用户通过命令行对Weblogic 实例, ...