Konversi Presentasi PowerPoint ke Markdown di .NET

Pendahuluan

Aspose.Slides memungkinkan Anda mengonversi presentasi PowerPoint ke Markdown, yang dapat berguna untuk alur kerja dokumentasi, pembuatan situs statis, migrasi konten, dan penerbitan teks yang dikontrol versi. API mendukung ekspor langsung dari presentasi PPT dan PPTX ke file MD serta menyediakan opsi tambahan untuk mengendalikan bagaimana konten slide direpresentasikan dalam dokumen Markdown yang dihasilkan.

Anda dapat mengekspor presentasi sebagai Markdown polos, memilih dari berbagai varian Markdown seperti CommonMark dan GitHub Flavored Markdown, serta mengonfigurasi cara penanganan gambar selama ekspor. Untuk presentasi yang berisi konten visual, Aspose.Slides juga memungkinkan Anda menyimpan gambar ke folder terpisah dan merujuknya dari file Markdown yang dihasilkan.

Konversi PowerPoint ke Markdown

  1. Buat sebuah instance dari kelas Presentation untuk merepresentasikan objek presentasi.
  2. Gunakan Save method untuk menyimpan objek sebagai file markdown.

Contoh kode C# berikut menunjukkan cara mengonversi PowerPoint ke markdown:

using (Presentation pres = new Presentation("pres.pptx"))
{
    pres.Save("pres.md", SaveFormat.Md);
}

Konversi PowerPoint ke Varian Markdown

Aspose.Slides memungkinkan Anda mengonversi PowerPoint ke markdown (mengandung sintaks dasar), CommonMark, GitHub flavored markdown, Trello, XWiki, GitLab, dan 17 varian markdown lainnya.

Contoh kode C# berikut menunjukkan cara mengonversi PowerPoint ke CommonMark:

using (Presentation pres = new Presentation("pres.pptx"))
{
    pres.Save("pres.md", SaveFormat.Md, new MarkdownSaveOptions
    {
        Flavor = Flavor.CommonMark
    });
}

23 varian markdown yang didukung terdaftar pada enumerasi Flavor dari kelas MarkdownSaveOptions.

Konversi Presentasi yang Mengandung Gambar ke Markdown

Kelas MarkdownSaveOptions menyediakan properti dan enumerasi yang memungkinkan Anda mengatur opsi tertentu untuk file markdown yang dihasilkan. Enum MarkdownExportType misalnya, dapat diatur ke nilai yang menentukan bagaimana gambar dirender atau ditangani: Sequential, TextOnly, Visual.

Konversi Gambar Secara Berurutan

Jika Anda ingin gambar muncul satu per satu secara berurutan dalam markdown yang dihasilkan, pilih opsi sequential. Contoh kode C# berikut menunjukkan cara mengonversi presentasi yang berisi gambar ke markdown:

using (Presentation pres = new Presentation("pres.pptx"))
{
    MarkdownSaveOptions markdownSaveOptions = new MarkdownSaveOptions
    {
        ShowHiddenSlides = true,
        ShowSlideNumber = true,
        Flavor = Flavor.Github,
        ExportType = MarkdownExportType.Sequential,
        NewLineType = NewLineType.Windows
    };
    
    pres.Save("doc.md", new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, SaveFormat.Md, markdownSaveOptions);
}

Konversi Gambar Secara Visual

Jika Anda ingin gambar muncul bersama-sama dalam markdown yang dihasilkan, pilih opsi visual. Dalam kasus ini, gambar akan disimpan ke direktori kerja aplikasi (dan jalur relatif akan dibangun untuknya dalam dokumen markdown), atau Anda dapat menentukan jalur dan nama folder yang diinginkan.

Contoh kode C# berikut memperlihatkan operasinya:

using (Presentation pres = new Presentation("pres.pptx"))
{
    const string outPath = "c:\\documents";
    pres.Save(Path.Combine(outPath, "pres.md"), SaveFormat.Md, new MarkdownSaveOptions
    { 
        ExportType = MarkdownExportType.Visual,
        ImagesSaveFolderName = "md-images",
        BasePath = outPath
    });
}

FAQ

Apakah hyperlink tetap ada setelah diekspor ke Markdown?

Ya. Teks hyperlinks dipertahankan sebagai tautan Markdown standar. Slide transitions dan animations tidak dikonversi.

Bisakah saya mempercepat konversi dengan menjalankannya dalam beberapa thread?

Anda dapat memparalelkan antar file, namun don’t share instance Presentation yang sama antar thread. Gunakan instance atau proses terpisah per file untuk menghindari kontensi.

Apa yang terjadi pada gambar—di mana mereka disimpan, dan apakah jalurnya relatif?

Images diekspor ke folder khusus, dan file Markdown merujuknya dengan jalur relatif secara default. Anda dapat mengonfigurasi jalur output dasar dan nama folder aset untuk menjaga struktur repositori yang dapat diprediksi.