我本地客户端有一张图片c:\zp.jpg,现在我在服务器后台代码想直接读取该图片,如何获取图片内容并转换成System.Drawing.Image类型?
注意:没有上传控件,没有页面,只有cs文件 希望大家帮忙 急啊 在线等
注意:没有上传控件,没有页面,只有cs文件 希望大家帮忙 急啊 在线等
解决方案 »
- 服务器和本地机的问题
- 大家看下这个问题怎么解决?
- 无法将类型“System.Data.DataSet”隐式转换为“System.Collections.Generic.List
- 我的存储过程怎么传条件传不过去啊,帮我看看啊
- 文件度取问题
- 请各位高手帮我写个用户注册,用户名不能重复的例子,在线等
- 通过单击按钮,给panel增加一个lable,为什么当这个页面事件发生变化后,这个label就没有了?
- 关于Datalist控件的排序序号的菜鸟问题 请各位大哥大姐帮忙
- 100分问两个关于XML小问题,顶者有分,3小时结贴,分不够在加,答对最少30分,顶者最少5分
- 我的datagrid 删除操作时的一个bug
- 几率问题。。。
- windows服务的问题
private static byte[] ResizeImageFile(byte[] imageFile, int targetSize) {
using (System.Drawing.Image oldImage = System.Drawing.Image.FromStream(new MemoryStream(imageFile))) {
Size newSize = CalculateDimensions(oldImage.Size, targetSize);
using (Bitmap newImage = new Bitmap(newSize.Width, newSize.Height, PixelFormat.Format24bppRgb)) {
using (Graphics canvas = Graphics.FromImage(newImage)) {
canvas.SmoothingMode = SmoothingMode.AntiAlias;
canvas.InterpolationMode = InterpolationMode.HighQualityBicubic;
canvas.PixelOffsetMode = PixelOffsetMode.HighQuality;
canvas.DrawImage(oldImage, new Rectangle(new Point(0, 0), newSize));
MemoryStream m = new MemoryStream();
newImage.Save(m, ImageFormat.Jpeg);
return m.GetBuffer();
}
}
}
}
===============》
图片在客户端,不上传到服务器端你怎么可能读取?不可能从服务器端如探囊取物一般直接想抓客户端哪个文件就抓那个,如果要这样,你得做个activex控件或者客户端程序还差不多。
而你要做的是,直接把流转化为图片,输出。 protected void Button2_Click(object sender, EventArgs e)
{
string xmlPath = @"D:\tuXml.xml"; XmlWriter xml = XmlWriter.Create(xmlPath); xml.WriteStartDocument(false);
xml.WriteStartElement("tu");
xml.WriteAttributeString("id", "1"); xml.WriteStartElement("image");
xml.WriteAttributeString("fileName", Page.Server.MapPath("123.JPG")); FileInfo inf = new FileInfo(Page.Server.MapPath("123.JPG"));
int size = (int)inf.Length; byte[] imgByte = new byte[size];
FileStream fs = new FileStream(Page.Server.MapPath("123.JPG"), FileMode.Open); BinaryReader reader = new BinaryReader(fs);
imgByte = reader.ReadBytes(size); reader.Close(); xml.WriteString(Convert.ToBase64String(imgByte)); xml.WriteEndElement();
xml.WriteEndElement();
xml.WriteEndDocument(); xml.Flush();
} //对应格式的读写操作。
protected void Button3_Click(object sender, EventArgs e)
{
XmlReader xml = XmlReader.Create(@"D:\tuXml.xml"); XmlTextReader ds = XmlTextReader.Create(@"D:\tuXml.xml"); while (xml.Read())
{
if (xml.NodeType == XmlNodeType.Element)
{
if (xml.Name == "image")
{
if (xml.AttributeCount == 0)
{
break;
} string str = xml.GetAttribute(0); string str1 = xml.ReadElementString(); ///打开现有文件以进行读取。
byte[] imgBytes = Convert.FromBase64String(str1); //转换为支持存储区为内存的流
System.IO.MemoryStream memStream = new System.IO.MemoryStream(imgBytes);
System.Drawing.Image returnImage = System.Drawing.Image.FromStream(memStream); ///////定义并实例化Bitmap对象
Bitmap bm = new Bitmap(memStream);
///////根据不同的条件进行输出或者下载;
Response.Clear();
returnImage.Save(Response.OutputStream, ImageFormat.Jpeg);
bm.Save(Response.OutputStream, ImageFormat.Jpeg);
}
}
}
}
你可以用js来查看本地的图片。
那是什么情况?
如果你想通过服务端来对比图片的可上传性的话,
过程是重绘了一张IMAGE,然后来进行对比
但你这情况好象不太正常
可以用js在客户端来对比