Lucrul cu Markdown caracteristici
Acest subiect discută despre modul de implementare a Markdown Caracteristici folosind Aspose.Words. Markdown este o modalitate simplă de a formata text simplu care poate fi ușor convertit în HTML. Aspose.Words acceptă următoarele Markdown Caracteristici:
- Titluri
- Blockquotes
- Reguli orizontale
- Accent îndrăzneț
- Accent cursiv
Implementarea caracteristicilor Markdown urmează în mare parte specificația CommonMark
în Aspose.Words API și toate caracteristicile sunt reprezentate ca stiluri corespunzătoare sau formatare directă. Ceea ce înseamnă că
- Bold și Italic sunt reprezentate ca
Font.Bold
șiFont.Italic
. - Titlurile sunt paragrafe cu Heading 1 - Heading 6 stiluri.
- Citatele sunt paragrafe cu “citat” în numele stilului.
- HorizontalRule este un paragraf cu o formă
HorizontalRule
.
Markdown Document cu accente
Această secțiune vă demonstrează cum să produceți un document markdown cu accente, așa cum este prezentat mai jos:
Markdown treats asterisks (*) and underscores (_) as indicators of emphasis.
You can write **bold** or *italic* text.
You can also write ***BoldItalic***text.
Următorul fragment de cod poate fi folosit pentru a produce documentul markdown dat mai sus.
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
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"); |
Markdown Document cu titluri
Această secțiune vă demonstrează cum să produceți un document markdown cu titluri, așa cum este prezentat mai jos:
The following produces headings:
# Heading1
## Heading2
### Heading3
#### Heading4
##### Heading5
###### Heading6
# **Bold Heading1**
Următorul fragment de cod poate fi folosit pentru a produce documentul markdown dat mai sus.
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// By default Heading styles in Word may have bold and italic formatting. | |
// If we do not want text to be emphasized, set these properties explicitly to | |
// 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"); | |
// Note, emphases are also allowed inside Headings: | |
builder.getFont().setBold(true); | |
builder.getParagraphFormat().setStyle(doc.getStyles().get("Heading 1")); | |
builder.writeln("Bold Heading1"); | |
doc.save(dataDir + "HeadingsExample.md"); |
Markdown Document cu ghilimele bloc
Această secțiune vă demonstrează cum să produceți un document markdown cu ghilimele bloc, așa cum este prezentat mai jos:
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
>
Următorul fragment de cod poate fi folosit pentru a produce documentul markdown dat mai sus.
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
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"); |
Markdown Document cu regulă orizontală
Această secțiune vă demonstrează cum să produceți un document markdown Cu regulă orizontală, așa cum este prezentat mai jos:
We support Horizontal rules (Thematic breaks) in Markdown:
-----
Următorul fragment de cod poate fi folosit pentru a produce documentul markdown dat mai sus.
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
DocumentBuilder builder = new DocumentBuilder(new Document()); | |
builder.writeln("We support Horizontal rules (Thematic breaks) in Markdown:"); | |
builder.insertHorizontalRule(); | |
builder.getDocument().save(dataDir + "HorizontalRuleExample.md"); |
Citirea unui Document Markdown
Următorul fragment de cod vă arată cum să citiți un document markdown.
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// This is Markdown document that was produced in example of | |
// MarkdownDocumentWithBlockQuotes. | |
Document doc = new Document(dataDir + "QuotesExample.md"); | |
// Let's remove Heading formatting from a Quote in the very last paragraph. | |
Paragraph paragraph = doc.getFirstSection().getBody().getLastParagraph(); | |
paragraph.getParagraphFormat().setStyle(doc.getStyles().get("Quote")); | |
doc.save(dataDir + "QuotesModifiedExample.md"); |
Specificați Markdown Opțiuni De Salvare
Aspose.Words API oferă clasa MarkdownSaveOptions pentru a specifica opțiuni suplimentare în timp ce salvați un document în formatul Markdown.
Următorul exemplu de cod a demonstrat cum să specificați diferite opțiuni de salvare Markdown.
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
DocumentBuilder builder = new DocumentBuilder(); | |
builder.writeln("Some text!"); | |
// specify MarkDownSaveOptions | |
MarkdownSaveOptions saveOptions = (MarkdownSaveOptions) SaveOptions.createSaveOptions(SaveFormat.MARKDOWN); | |
builder.getDocument().save(dataDir + "TestDocument.md", saveOptions); |
Cum să aliniați conținutul în interiorul tabelului în timp ce exportați în Markdown
Aspose.Words API oferă TableContentAlignment enumerare care definește direcțiile de aliniere pentru a alinia conținutul în tabele în timp ce exportă în documentul Markdown. Următorul exemplu de cod demonstrează modul de aliniere a conținutului în interiorul tabelului.
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
DocumentBuilder builder = new DocumentBuilder(); | |
// Create a new table with two cells. | |
builder.insertCell(); | |
builder.getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT); | |
builder.write("Cell1"); | |
builder.insertCell(); | |
builder.getParagraphFormat().setAlignment(ParagraphAlignment.CENTER); | |
builder.write("Cell2"); | |
MarkdownSaveOptions saveOptions = new MarkdownSaveOptions(); | |
// Makes all paragraphs inside table to be aligned to Left. | |
saveOptions.setTableContentAlignment(TableContentAlignment.LEFT); | |
builder.getDocument().save(dataDir + "left.md", saveOptions); | |
// Makes all paragraphs inside table to be aligned to Right. | |
saveOptions.setTableContentAlignment(TableContentAlignment.RIGHT); | |
builder.getDocument().save(dataDir + "right.md", saveOptions); | |
// Makes all paragraphs inside table to be aligned to Center. | |
saveOptions.setTableContentAlignment(TableContentAlignment.CENTER); | |
builder.getDocument().save(dataDir + "center.md", saveOptions); | |
// Makes all paragraphs inside table to be aligned automatically. | |
// The alignment in this case will be taken from the first paragraph in | |
// corresponding table column. | |
saveOptions.setTableContentAlignment(TableContentAlignment.AUTO); | |
builder.getDocument().save(dataDir + "auto.md", saveOptions); |