介绍这个库:C# Blazor中显示Markdown文件
1 讲目的
前几天上线了一个在线Icon转换工具[1],为了让大家使用放心,改了点代码,在转换下载Icon图标后立即删除临时文件,并在工具下面贴上了工具的开发步骤和代码,大家看这样改是否合适,见Issue 1[2]。
这篇不讲代码修改过程(因为工具[3]和网站博文[4]已经同步更新),本文讲讲在工具下方展示Markdown文件的实现方式,先看效果:
为啥要加这个功能?
我的想法是,除了提供工具免费使用外,也能让大家了解这个工具是如果开发的,这样应该更方便:
默认是不显示的,点击
如何开发的?
的按钮加载开发文章说明。评论功能目前没有(不排除后面加上),需要点击
我要建议(吐槽)
跳转到Dotnet9[5]网站同篇博文[6]留言。旁边有个按钮
我要浏览源码
可以点击浏览工具源码。
下面说说在Blazor中怎么展示Markdown文件,先说明目前完成的功能:
只是将Markdown文件展示为html。
高亮目前未加。
2 开发步骤
参考blazor-markdown[7]。
引入包
<PackageReference Include="BlazorMarkdown" Version="1.0.0" />
<PackageReference Include="HtmlSanitizer" Version="7.1.488" />
注入组件
Program.cs
builder.Services.AddScoped<IHtmlSanitizer, HtmlSanitizer>(x =>
{// Configure sanitizer rules as needed here.// For now, just use default rules + allow class attributesvar sanitizer = new HtmlSanitizer();sanitizer.AllowedAttributes.Add("class");return sanitizer;
});
引用命令空间
_Imports.razor
@using BlazorMarkdown
使用
准备好Markdown文件,比如我放wwwroot下:
在IcoTool.razor
中就可以直接使用了:
<Markdown FilePath="wwwroot/2022/02/2022-02-22_02.md"/>
总结
完了,就是这么简单,效果见文章开头,今天不啰嗦。
忘了,markdown中有图片等多媒体文件,记得加上这些样式实现自适应:
<style>h3 {border-bottom: 1px solid #eee;margin-top: 50px;padding-bottom: 10px;}pre {background: #1E1E1E;color: #eee;overflow-x: auto;padding: 0.5em !important;white-space: pre;word-break: normal;word-wrap: normal;}img, video, source { max-width: 100% }pre > code { white-space: pre; }
</style>
参考资料
[1]
在线Icon转换工具: https://tool.dotnet9.com/ico
[2]
Issue 1: https://github.com/dotnet9/dotnet9.com/issues/1
[3]
工具: https://tool.dotnet9.com/ico
[4]
博文: https://dotnet9.com/1715
[5]
Dotnet9: https://dotnet9.com
[6]
博文: https://dotnet9.com/1715
[7]
blazor-markdown: https://github.com/georgemathieson/blazor-markdown
介绍这个库:C# Blazor中显示Markdown文件相关推荐
- 完美:C# Blazor中显示Markdown并添加代码高亮
昨天发了一篇介绍这个库:C# Blazor中显示Markdown文件,介绍怎么在Blazor中显示Markdown内容的文章,文章内的代码是没有高亮的,思来相去,还是要做好,于是百度到这篇文章.NET ...
- Blazor 中如何下载文件到浏览器
Blazor 中如何下载文件到浏览器 目录 一.前言 二.方法一(导航跳转) 三.方法二(下载后传出) (一) 使用 RestSharp 下载 (二) 使用 BlazorDownloadFile 传出 ...
- 在html中加入pdf文件吗,如何在网页中显示PDF文件
我们是不是对百度文库能直接在网页上显示PDF文件感到好奇,你是否也想实现这样的功能?很多朋友认为可以直接在网页中插入代码就可以实现这个功能,其实要在网页中完整地显示PDF文件,需要把PDF文件转换成S ...
- Qt Creator在问题窗格中显示任务列表文件
Qt Creator在问题窗格中显示任务列表文件 在问题窗格中显示任务列表文件 管理任务列表条目 任务列表文件格式 在问题窗格中显示任务列表文件 您可以使用代码扫描和分析工具来检查源代码.这些工具报告 ...
- 在html中显示word,如何在浏览器网页中显示word文件内容
把word文件读到byte[]中,再Response.OutputStream.Write(bytes)到客户端去 Page_Load事件中写: //FileStream fs = new ...
- 【教程】PDF组件Spire.PDF 教程:在C#中显示PDF文件的打印预览
本文演示如何使用Spire.PDF和c#在Windows窗体应用程序中显示PDF文件的打印预览. 在使用下面的代码之前,我们需要创建一个Windows窗体应用程序,在窗体中添加一个PrintPrevi ...
- svg格式文件android,在Android中显示SVG文件
我想创建一个在一些平面图上显示位置的应用程序.导航通过WiFi以某种方式实现,我已经做到了,所以现在我有一个显示平面图的问题. 它可能是一些矢量格式,互联网冲浪一段时间后,我决定它必须是svg文件. ...
- 如何在jupyter notebook中运行markdown文件(脚本、代码)
需要装一个notedown插件,不能直接pip install notedown安装,需要: pip install notedown --index https://mirrors.ustc.edu ...
- shp文件显示 c语言,上传并在地图中显示Shp文件
前段时间参与了一个项目,客户有一个功能需求是上传SHP文件并在地图上显示,然后在此基础上做缓冲区处理.经过对比测试,最终选择了shapefile.js工具,在此做个记录. shapfe.js能够将Es ...
最新文章
- django模板的导入
- 请确保此代码文件中定义的类与“inherits”属性匹配,并且该类扩展的基类(例如Page 或UserControl)是正确的。...
- 使用DOM4J读取和维护XML数据
- [Java]Annotation元数据的几个应用
- mvc根据绝对路径下载文件
- AJAX学习笔记(基本使用,请求参数传递,获取服务端响应,错误处理,低版本IE浏览器缓存问题及解决)
- UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte
- linux下编辑文件实验,Linux上最常用的文本编辑器vi/vim使用教程
- Javascript 中继承汇总
- LoadRunner11完美破解
- 从零开始入门芯片行业
- 电子元器件简介——电容与电感篇
- C语言中数组和字符串长度以及输入输出详解
- 标书怎么做?标书制作教程附标书制作思维导图
- cocos-creator使用记录5_发布微信小游戏
- 网络通信技术(TCP/IP)
- php程序员述职材料_php程序员述职报告(多篇范文)
- itext 导出word
- 【触摸屏功能测试】昆仑通态MCGS——物联网功能测试
- ChinaSkills全国职业院校技能大赛Debian样题六||本专栏基于此试题,订阅前必读!!!
热门文章
- c++ 数据类型转换: static_cast dynamic_cast reinterpret_cast const_cast
- Class Diagram
- Lync Server 2010迁移至Lync Server 2013部署系列 Part18:开启Lync 2013 Mobility
- 成功的换心手术——Windows Phone 8 发布
- linux下tar解压特定的目录
- docker 修改服务器,docker-修改容器挂载目录的3种方法小结
- Apache用户身份验证
- WCF从理论到实践(4):路在何方
- Javascript基础学习20问(二)
- Git Bash的一些命令和配置