C#获取到了img标签的HtmlElement怎么获取图片的内容?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#获取到了img标签的HtmlElement怎么获取图片的内容?相关的知识,希望对你有一定的参考价值。
以下为我写过一一个函数用来获取图片,首先得到img标签的htmlElement对象,然后IHTMLControlRange复制的方式得到图片。
/// <summary>
/// 返回指定WebBrowser中图片<IMG></IMG>中的图内容
/// </summary>
/// <param name="WebCtl">WebBrowser控件</param>
/// <param name="ImgeTag">IMG元素</param>
/// <returns>IMG对象</returns>
private Image GetWebImage(WebBrowser wb, string id)
HtmlElement ImgeTag = wb.Document.GetElementById(id);
if (ImgeTag == null)
return null;
HTMLDocument doc = (HTMLDocument)wbDb.Document.DomDocument;
HTMLBody body = (HTMLBody)doc.body;
IHTMLControlRange rang = (IHTMLControlRange)body.createControlRange();
IHTMLControlElement Img = (IHTMLControlElement)ImgeTag.DomElement; //图片地址
object oldobj = Clipboard.GetDataObject(); //备份粘贴版数据
rang.add(Img);
rang.execCommand("Copy", false, null); //拷贝到内存
Image numImage = Clipboard.GetImage();
try
Clipboard.SetDataObject(oldobj); //恢复粘贴板内容
catch
return numImage;
效果如下:
这个数据集是以表、行、列的形式存储数据的,所以我要访问某个数据可以使用以下方式:ds代表数据集对象。
ds.Tables[0].Rows[0][0];
这是将数据集中第一张表里第一行第一列的数据获取出来,获取出来后你只要通过this.txtName.Text=ds.Tables[0].Rows[0][0].ToString();这样不就好了么. 参考技术B 获取 Img 的src地址,再转化为数据流就行了 参考技术C 获取 Img src='这里的数据' src裏面不是URL就是图片的二进制码.本回答被提问者采纳
C# 怎么修改图片大小
我把图片已经存到了我的电脑上,我知道图片的路径"书籍图片/ xxm.jpg",用C#怎么改变图片的大小并且覆盖原来的图片呢? 麻烦大虾们帮帮忙。
1、要修改图片大小和动态语言类【c#、asp、jsp】等并无直接关联,而是和html的img标签相关的2、设置图片大小可以通过直接给img标签的width和height设置固定大小,也可以通过class类,写入样式规则设定大小,如下两种方式:
2-1、<img src="xxx.jpg" width="100" height="100" />
2-2、<img src="xxx.jpg" class="wh100" />
.wh100 width:100px; height:100px; 参考技术A 可以用生成的方式 规定图片大小后 保存为xxm.jpg 放在 书籍图片 文件夹中 就可以了 如果需要生成图片代码 我这里有个 可以给你下
public static string UploadPicture(FileUpload fileUpload, string uploadpath, string tplPath, int readSize)
string str = string.Empty;
string contentType = string.Empty;
string thumbnailPath = string.Empty;
string str4 = string.Empty;
string str5 = string.Empty;
Random random = new Random((int)DateTime.Now.Ticks);
contentType = fileUpload.PostedFile.ContentType;
str = uploadpath + DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + random.Next(0x3e8, 0x270f).ToString();
if (fileUpload.PostedFile.ContentLength > 0)
if (contentType == "image/gif")
str5 = ".gif";
else if (contentType == "image/pjpeg")
str5 = ".jpg";
else if (contentType == "image/x-png")
str5 = ".png";
else
return "";
//上传原图
fileUpload.PostedFile.SaveAs(HttpContext.Current.Server.MapPath("../../" + str) + str5);
thumbnailPath = "../../" + str + "_tmp" + str5;
str4 = "../../../" + str + "_mark" + str5;
//上传相关图片
MakeThumbnail("../../" + str + str5, thumbnailPath, 0x58, 0x58, "Cut");
string path = HttpContext.Current.Server.MapPath("../../Template/" + tplPath + "/ImgSize.xml");
XmlDocument document = new XmlDocument();
string xpath = "Picture";
if (File.Exists(path))
document.Load(path);
XmlNode node = document.SelectSingleNode(xpath);
for (int i = 0; i < node.ChildNodes.Count; i++)
string[] strArray = node.ChildNodes[i].SelectSingleNode("@value").Value.Split(new char[] '*' );
//生成缩略图
MakeThumbnail("../../" + str + str5, "../../" + str + "_" + strArray[0] + "-" + strArray[1] + str5, int.Parse(strArray[0]), int.Parse(strArray[1]), "Cut");
return (str + str5);
return "";
这个是单个图片上次 你要修改下本回答被提问者采纳
以上是关于C#获取到了img标签的HtmlElement怎么获取图片的内容?的主要内容,如果未能解决你的问题,请参考以下文章