MarkDown轉html代碼實現方案C#


MarkDown轉html代碼實現方案C#

 

使用UWP toolkit中的Parse

https://docs.microsoft.com/en-us/windows/communitytoolkit/parsers/markdownparser

解析MD,然后生成對應的html文本.插入本機圖片可轉換為src=base64內嵌格式

尚未找到合適的markdown直接轉html的C#解決方案,可以自己做一個

修正:找到MD2html項目MarkDownlToHtml(Nuget)

https://github.com/nightroman/FarNet

===================================后續更新

使用github插件CommonMark.NET(可通過nuget獲取)

github地址

使用方式:

using (var reader = new StringReader(Md_Text))
{
	 using (var writer = new StringWriter())
     {
		CommonMark.CommonMarkConverter.Convert(reader, writer);
		//writer.ToString()即為轉換好的html
		Frame.Navigate(typeof(WebPage), new string[] {Md_Title, writer.ToString() });
	 }
 } 

方式2:很多轉換控件使用js編寫,使用webview控件加載字符執行js獲得html內容.可以加載本地html

使用NavigateToString方法加載本地html

webview.NavigateToString(html);

然后執行外部腳本,參見js和C#互相通訊

 //string msg = "# hello, markdown!";  //構建腳本
			////js += "var converter = new showdown.Converter()"; //設置用戶名
			////js += "var text=''";
			////js += "var html = converter.makeHtml(text)";
			////js += "document.getElementById('h1').innerHTML = html;";
			
			//await webview.InvokeScriptAsync("render", new string[] { msg}); 

可以在本地html中使用內置函數,render是本地html中自己編寫的函數


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM