Converter um documento em Markdown

Markdown é um formato popular usado para marcar texto e sua posterior conversão para HTML, PDF, DOCX, ou outros formatos. Muitos desenvolvedores escolhem esse formato para escrever documentação, preparar artigos para publicação em blogs, descrever projetos e assim por diante.

Markdown é tão popular porque é fácil trabalhar com este formato, assim como pode ser simplesmente convertido para outros formatos. Por esta razão, Aspose.Words fornece a capacidade de converter um documento em any supported load format para Markdown e vice – versa - Aspose.Words também suporta o mais popular save formats.

Agora, a funcionalidade para trabalhar com o formato Markdown está sendo ativamente desenvolvida para fornecer mais oportunidades de trabalho conveniente e confortável com documentos.

Converter um documento

Para converter um documento em Markdown, basta carregar um documento em qualquer formato suportado ou criar um novo programaticamente. Em seguida, você precisa salvar o documento no formato Markdown.

O exemplo de código a seguir mostra como converter DOCX em Markdown:

Você também pode especificar a pasta física na qual deseja salvar as imagens ao exportar um documento para o formato Markdown. Por padrão, Aspose.Words salva imagens na mesma pasta onde o arquivo de documento é salvo, mas você pode substituir esse comportamento usando a propriedade ImagesFolder.

Especificar uma pasta via ImagesFolder também é útil se você salvar um documento em um fluxo e Aspose.Words não tiver uma pasta para salvar imagens.

Se o ImagesFolder especificado não existir, ele será criado automaticamente.

O exemplo de código a seguir mostra como especificar uma pasta para imagens ao salvar um documento em um fluxo:

Especifique as opções de salvamento ao converter para Markdown

Aspose.Words fornece a capacidade de usar a classe MarkdownSaveOptions para trabalhar com opções avançadas ao salvar um documento no formato Markdown. A maioria das propriedades está herdando ou sobrecarregando propriedades que já existem em outras classes de Namespace Aspose.Words.Saving. Além deles, também foram adicionadas várias propriedades específicas para o formato Markdown. Por exemplo, a propriedade TableContentAlignment para controlar o alinhamento do conteúdo em tabelas ou ImageSavingCallback e ImagesFolder para controlar como as imagens são salvas ao converter um documento para o formato Markdown.

Recursos Markdown Suportados

Aspose.Words Atualmente suporta os seguintes recursos Markdown, que seguem principalmente a especificação CommonMark no Aspose.Words API e são representados como estilos apropriados ou formatação direta:

  • Os títulos são parágrafos com estilos de Título 1 - Título 6
  • Blockquotes são parágrafos com “aspas” no nome do estilo
  • IndentedCode são parágrafos com “IndentedCode " no nome do estilo
  • FencedCode são parágrafos com “FencedCode " no nome do estilo
  • InlineCode são executadas com “InlineCode " no nome do estilo Font
  • Regras horizontais são parágrafos com a forma HorizontalRule
  • Ênfase ousada
  • Ênfase em itálico
  • StrikeThrough formatação
  • As listas são parágrafos numerados ou com marcadores
  • As tabelas são representadas com a classe Table
  • Os Links são representados como a classe FieldHyperlink

O exemplo a seguir mostra como criar um documento com alguns estilos e salvá-lo em Markdown:

O resultado deste exemplo de código é mostrado abaixo.

markdown-example-aspose-words-cpp

Dicas Úteis

Existem várias nuances e casos interessantes, tendo aprendido que você pode trabalhar com Markdown arquivos de forma mais flexível e conveniente. Por exemplo, existe a capacidade de usar:

  • SetextHeading que permite criar títulos de várias linhas em Markdown, enquanto os títulos regulares em Markdown só podem ser de uma única linha. SetextHeading é baseado em um estilo “título N”, e seu nível só pode ser 1 ou 2. Se N na " rubrica N “for maior ou igual a 2, então o SetextHeading correspondente baseia-se na” rubrica 2”, caso contrário, na"rubrica 1”.
  • Marcadores diferentes para o primeiro nível de listas com marcadores ("-”, “+” ou “*”, o marcador predefinido é “-”.) e diferentes tipos de numeração para listas ordenadas ("." ou “)”, o marcador predefinido é “.").