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());
}

c# Web浏览器内容大小调整

看起来像是你在寻找的答案。