图像 - 创建 头像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数 ...
随机推荐
- 微信JS-SDK说明文档及常见问题处理
概述 微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包. 通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照.选图.语音.位置等手机系统的能力,同时可以直接使用微 ...
- mini2440 uboot使用nfs方式引导内核,文件系统
mini2440 uboot使用nfs方式引导内核,文件系统 成于坚持,败于止步 看了一段时间的u-boot了,到今天才真正完全实现u-boot引导内核和文件系统,顺利开机,在此记录完整过程 1.首先 ...
- 为什么在DllMain里不能调用LoadLibrary和FreeLibrary函数?
为什么在DllMain里不能调用LoadLibrary和FreeLibrary函数? MSDN里对这个问题的答案十分的晦涩.不过现在我们已经有了足够的知识来解答这个问题.考虑下面的情况: ...
- hdu 5595 GTW likes math(暴力枚举查询)
思路:直接暴力枚举区间[l,r]的整数值,然后max和min就可以了. AC代码: #pragma comment(linker, "/STACK:1024000000,1024000000 ...
- Android核心基础(五)
1.仿网易新闻客户端 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xml ...
- hdu 4753 Fishhead’s Little Game
状态压缩dp解博弈问题(记忆化搜索).比赛的时候最后才开始做这道题,而且当时不知道为什么一直犯一些很2B的问题,导致没能ac,晚上看了看原先的代码,改了一下就MLE了...我原先是开的dp[1 < ...
- 【最大流之EdmondsKarp算法】【HDU1532】模板题
题意:裸的最大流,什么是最大流,参考别的博客 运用复杂度最高的EK算法 O(M*N),模板来自紫书 #include <cstdio> #include <cstdlib> # ...
- asp.net 总结
asp.net 是服务器段控件,运行是返回一个客户端html 页面给服务器
- ASP.NET MVC 3 配置EF自动生成模型
Tools(工具) => 扩展工具 => Nuget Tools(工具) => Nuget=>程序包管理器控制台 Nuget 程序包管理器 => Install-Pac ...
- webapi拦截请求
[AttributeUsage(AttributeTargets.Method)] public class WebApiSensitive : ActionFilterAttribute { pub ...