我试图创建图像webBrowser
控件的输出。 以下是我都试过了。 和有些达到我想要的,但问题是图像不是全高,它一定高度后得到修剪。
在你可以看到图中有4行,但图像是2个n个半行。 请指导。
HTML 1-4是在webBrowser
,以及空间后1-3是从下面代码创建的图像。
这里是代码:
private void WebBrowser1_LoadCompleted(object sender, NavigationEventArgs e)
{
var wb = (WebBrowser)sender;
var htmlDoc = wb.Document as mshtml.HTMLDocument;
if (htmlDoc == null || htmlDoc.body == null) return;
var body = (mshtml.IHTMLElement2)htmlDoc.body;
wb.Height = body.scrollHeight;
wb.Width = body.scrollWidth;
var imgScreen = new Image
{
Width = body.scrollWidth,
Height = body.scrollHeight,
Source = new DrawingImage(VisualTreeHelper.GetDrawing(wb))
};
// Add Image to the UI
StackPanel1.Children.Add(imgScreen);
}
也试过下面的代码相同的结果:
DrawingVisual vis = new DrawingVisual();
DrawingContext cont = vis.RenderOpen();
cont.DrawDrawing(VisualTreeHelper.GetDrawing(wb));
cont.Close();
RenderTargetBitmap rtb = new RenderTargetBitmap(body.scrollWidth, body.scrollHeight, 96d, 96d, PixelFormats.Default);
rtb.Render(vis);
imgScreen1.Source = rtb;