Aspose.Words for .NET 最新版新功能——Markdown功能的使用示例详解

在最新版的Aspose.Words for .NET v19.7中,新增了为Markdown功能实现基本读写器,下面我们用示例来演示该功能的使用和工作原理。

Aspose.Words for .NET是用于执行各种文档管理和操作任务,支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。同时支持所有流行的Word处理文件格式,并允许将Word文档导出或转换为固定布局文件格式和最常用的图像、多媒体格式。

在最新版的Aspose.Words for .NET v19.7中,新增了为Markdown功能实现基本读写器,下面我们用示例来演示该功能的使用和工作原理。>>欢迎下载Aspose.Words for .NET v19.7体验

Markdown是一种格式化纯文本的简单方法,可以轻松转换为HTML 。Aspose.Words支持  以下Markdown功能:

  • 标题
  • 阻止报价
  • 横向规则
  • 大胆的重点
  • 斜体强调

Markdown功能实现主要遵循Aspose.Words API中的CommonMark规范,所有功能都表示为相应的样式或直接格式。意思就是

  • 粗体和斜体表示为Font.Bold和Font.Italic。 
  • 标题是标题1 – 标题6样式的段落。 
  • 引号是样式名称中带有“引用”的段落。 
  • HorizontalRule是具有HorizontalRule形状的段落。

带有重点的标记文档

本节向你展示如何制作一个标记文件,重点如下:

Markdown treats asterisks (*) and underscores (_) as indicators of emphasis.
You can write **bold** or *italic* text.
You can also write ***BoldItalic***text.

下面的代码片段可用于生成上述给定的markdown文档:

Document doc = new Document();DocumentBuilder builder = new DocumentBuilder(doc);builder.writeln("Markdown treats asterisks (*) and underscores (_) as indicators of emphasis.");builder.write("You can write ");builder.getFont().setBold(true);builder.write("bold");builder.getFont().setBold(false);builder.write(" or ");builder.getFont().setItalic(true);builder.write("italic");builder.getFont().setItalic(false);builder.writeln(" text. ");builder.write("You can also write ");builder.getFont().setBold(true);builder.getFont().setItalic(true);builder.write("BoldItalic");builder.getFont().setBold(false);builder.getFont().setItalic(false);builder.write("text.");builder.getDocument().save("EmphasesExample.md");

带有标题的标记文档

本节向您演示如何生成标题如下所示的标记文档:

The following produces headings:
# Heading1
## Heading2
### Heading3
#### Heading4
##### Heading5
###### Heading6
# **Bold Heading1**

下面的代码片段可用于生成上述给定的markdown文档:

Document doc = new Document();DocumentBuilder builder = new DocumentBuilder(doc);// 默认情况下,Word中的标题样式可以采用粗体和斜体格式。// 如果不希望强调文本,请将这些属性显式设置为false。builder.getFont().setBold(false);builder.getFont().setItalic(false);builder.writeln("The following produces headings:");builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 1"));builder.writeln("Heading1");builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 2"));builder.writeln("Heading2");builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 3"));builder.writeln("Heading3");builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 4"));builder.writeln("Heading4");builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 5"));builder.writeln("Heading5");builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 6"));builder.writeln("Heading6");//注意,标题内也允许有重点:builder.getFont().setBold(true);builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 1"));builder.writeln("Bold Heading1");doc.save(dataDir + "HeadingsExample.md");

带有块引号的标记文档

本节向您演示如何生成一个带块引号的标记文档,如下所示:

We support blockquotes in Markdown:
>*Lorem*
>*ipsum*
 The quotes can be of any level and can be nested:
>>>Quote level 3
>>>>Nested quote level 4
>
>*Back to first level*
> ### Headings are allowed inside Quotes

下面的代码片段可用于生成上述给定的markdown文档:

Document doc = new Document();DocumentBuilder builder = new DocumentBuilder(doc);builder.writeln("We support blockquotes in Markdown:");builder.getParagraphFormat().setStyle(doc.getStyles().get("Quote"));builder.writeln("Lorem");builder.writeln("ipsum");builder.getParagraphFormat().setStyle(doc.getStyles().get("Normal"));builder.writeln("The quotes can be of any level and can be nested:");Style quoteLevel3 = doc.getStyles().add(StyleType.PARAGRAPH, "Quote2");builder.getParagraphFormat().setStyle(quoteLevel3);builder.writeln("Quote level 3");Style quoteLevel4 = doc.getStyles().add(StyleType.PARAGRAPH, "Quote3");builder.getParagraphFormat().setStyle(quoteLevel4);builder.writeln("Nested quote level 4");builder.getParagraphFormat().setStyle(doc.getStyles().get("Quote"));builder.writeln();builder.writeln("Back to first level");Style quoteLevel1WithHeading = doc.getStyles().add(StyleType.PARAGRAPH, "Quote Heading 3");builder.getParagraphFormat().setStyle(quoteLevel1WithHeading);builder.write("Headings are allowed inside Quotes");doc.save(dataDir + "QuotesExample.md");

带有水平线的标记文档

本节向您演示如何使用水平线生成一个标记文档,如下所示:

We support Horizontal rules (Thematic breaks) in Markdown:
—–

下面的代码片段可用于生成上述给定的markdown文档:

DocumentBuilder builder = new DocumentBuilder(new Document());builder.writeln("We support Horizontal rules (Thematic breaks) in Markdown:");builder.insertHorizontalRule();builder.getDocument().save(dataDir + "HorizontalRuleExample.md");

读取标记文档

下面的代码片段向您展示了如何读取markdown文档:

Document doc = new Document(dataDir + "QuotesExample.md");//让我们从最后一段的引用中删除标题格式。Paragraph paragraph = doc.getFirstSection().getBody().getLastParagraph();paragraph.getParagraphFormat().setStyle(doc.getStyles().get("Quote"));doc.save(dataDir + "QuotesModifiedExample.md");

*想要购买Aspose.Words正版授权的朋友可联系客服咨询哦~

1565166511625_12201A8E-ADC2-4723-A4C7-A25BEBC0575B(1).png

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年7月5日
下一篇 2019年7月5日

相关推荐

发表回复

登录后才能评论