Csharp/C#教程:C# 使用 WebBrowser 实现 HTML 转图片功能的示例代码分享

在.NET平台上,我们有多种方式可以将一段HTML文本转换为一张图片:HTMLRenderer、SelectPdf、Aspose.Html等。

在WinForm程序中,每一个System.Windows.Forms.Control的派生类型均包含一个名为DrawToBitmap的方法,该方法可以将控件绘制到一张图片上。WebBrowser具备显示HTML的功能,又因为其从Control类型派生,所以包含DrawToBitmap方法。我们只需将要在WebBrowser上加载要展示的HTML并在其DocumentCompleted事件中绘制图片即可:

publicstaticasyncTask<Image>HtmlToImage(Stringhtml,intwidth=1024,intheight=768) { vartaskCompletionSource=newTaskCompletionSource<Image>(); varthread=newThread(()=> { usingvarbrowser=newWebBrowser { Width=width, Height=height, ScrollBarsEnabled=false }; browser.DocumentCompleted+=(s,e)=> { varb=sasWebBrowser; if(b==null) { return; } varbmp=newBitmap(b.Width,b.Height); b.DrawToBitmap(bmp,newRectangle(0,0,b.Width,b.Height)); taskCompletionSource.SetResult(bmp); Application.ExitThread(); }; browser.DocumentText=html; Application.Run(); }); thread.SetApartmentState(ApartmentState.STA); thread.Start(); returnawaittaskCompletionSource.Task; }

上述就是C#学习教程:C# 使用 WebBrowser 实现 HTML 转图片功能的示例代码分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/903818.html

(0)
上一篇 2021年10月21日
下一篇 2021年10月21日

精彩推荐