c# Web浏览器内容大小调整
本文关键字:调整 Web 浏览器 | 更新日期: 2023-09-27 18:17:16
我有一个c#应用程序,里面有一个WebBrowser,应用程序拉html链接,被认为是来自论坛的图像,然后我告诉我的WebBrowser导航到图像链接,逐个显示图像。
问题是其中一些图像比我的WebBrowser对象的大小大得多。我不想调整窗口的大小,我喜欢它的大小:)
我想让网页浏览器页面调整大小,例如像firefox和chrome做,当你打开一个图像链接,你不让他们最大化,他们只是让它更小,以适应窗口?
Thanks in advance
解决方案:Works a treat, Elerium(Top Answer)提供的链接,只是将VB代码改为c#
double origSizeWidth, origSizeHeight;
origSizeWidth =webBrowser1.Size.Width; //get the original size of browser
origSizeHeight = webBrowser1.Size.Height;
HtmlElement pic = webBrowser1.Document.Images[0]; //get your image
double origPicWidth, origPicHeight;
origPicWidth = double.Parse(pic.GetAttribute("WIDTH")); //save the image width
origPicHeight = double.Parse(pic.GetAttribute("HEIGHT"));//and height
double tempW, tempY, widthScale, heightScale;
double scale = 0;
if(origPicWidth > origSizeWidth){
widthScale = origSizeWidth / origPicWidth; //find out the scale factor for the width
heightScale = origSizeHeight / origPicHeight; //scale factor for height
scale = Math.Min(widthScale,heightScale);//determine which scale to use from the smallest
tempW = origPicWidth * scale; //multiply picture original width by the scale
tempY = origPicHeight * scale; // multiply original picture height by the scale
pic.SetAttribute("WIDTH", tempW.ToString()); // set your attributes
pic.SetAttribute("HEIGHT", tempY.ToString());
}
看起来像是你在寻找的答案。