Chuyển đổi Bài thuyết trình PowerPoint sang Markdown trong PHP
Giới thiệu
Aspose.Slides cho phép bạn chuyển đổi các bài thuyết trình PowerPoint sang Markdown, điều này hữu ích cho quy trình tài liệu, tạo trang tĩnh, di chuyển nội dung và xuất bản văn bản có kiểm soát phiên bản. API hỗ trợ xuất trực tiếp từ các bài thuyết trình PPT và PPTX sang tệp MD và cung cấp các tùy chọn bổ sung để kiểm soát cách nội dung slide được biểu diễn trong tài liệu Markdown kết quả.
Bạn có thể xuất các bài thuyết trình dưới dạng Markdown thuần, chọn từ nhiều kiểu Markdown như CommonMark và GitHub Flavored Markdown, và cấu hình cách xử lý hình ảnh trong quá trình xuất. Đối với các bài thuyết trình chứa nội dung hình ảnh, Aspose.Slides cũng cho phép lưu ảnh vào thư mục riêng và tham chiếu chúng từ tệp Markdown được tạo.
ExportType = MarkdownExportType::Visual và chỉ định BasePath, nơi các hình ảnh được tham chiếu trong tài liệu Markdown sẽ được lưu.
Chuyển đổi bài thuyết trình sang Markdown
Phần này giải thích cách Aspose.Slides chuyển đổi các bài thuyết trình PowerPoint và OpenDocument (PPT, PPTX, ODP) thành Markdown sạch, giữ nguyên cấu trúc slide, văn bản và định dạng cốt lõi để bạn có thể tái sử dụng nội dung trong tài liệu hoặc quy trình kiểm soát phiên bản mà không cần công sức thủ công thêm.
- Tạo một thể hiện của lớp Presentation để đại diện cho bài thuyết trình.
- Sử dụng phương thức save để xuất nó dưới dạng tệp Markdown.
$presentation = new Presentation("presentation.pptx");
try {
$presentation->save("presentation.md", SaveFormat::Md);
} finally {
$presentation->dispose();
}
Chuyển đổi bài thuyết trình sang một kiểu Markdown
Aspose.Slides cho phép bạn chuyển đổi các bài thuyết trình PowerPoint sang Markdown với cú pháp cơ bản, cũng như sang CommonMark, GitHub‑flavored Markdown, Trello, XWiki, GitLab và mười bảy kiểu Markdown khác.
Mã PHP sau đây minh họa cách chuyển đổi một bài thuyết trình PowerPoint sang CommonMark:
$presentation = new Presentation("presentation.pptx");
try {
$saveOptions = new MarkdownSaveOptions();
$saveOptions->setFlavor(Flavor->CommonMark);
$presentation->save("presentation.md", SaveFormat::Md, $saveOptions);
} finally {
$presentation->dispose();
}
23 kiểu Markdown được hỗ trợ được liệt kê trong Flavor enumeration.
Chuyển đổi bài thuyết trình có chứa hình ảnh sang Markdown
Lớp MarkdownSaveOptions cung cấp các thuộc tính và enum cho phép bạn cấu hình tệp Markdown kết quả. Ví dụ, enum MarkdownExportType chỉ định cách xử lý hình ảnh: Sequential, TextOnly hoặc Visual.
markdownSaveOptions.setExportType(MarkdownExportType::Visual) và đặt BasePath chỉ ra nơi các hình ảnh được tham chiếu trong tệp Markdown sẽ được lưu.
Chuyển đổi hình ảnh theo thứ tự
Nếu bạn muốn các hình ảnh xuất hiện riêng lẻ, lần lượt, trong Markdown kết quả, phải chọn tùy chọn Sequential. Mã PHP sau đây cho thấy cách chuyển đổi một bài thuyết trình có chứa hình ảnh sang Markdown:
$presentation = new Presentation("presentation.pptx");
try {
$saveOptions = new MarkdownSaveOptions();
$saveOptions->setShowHiddenSlides(true);
$saveOptions->setShowSlideNumber(true);
$saveOptions->setFlavor(Flavor->Github);
$saveOptions->setExportType(MarkdownExportType::Sequential);
$saveOptions->setNewLineType(NewLineType::Windows);
$slideIndices = array(1, 2, 3, 4);
$presentation->save("presentation.md", $slideIndices, SaveFormat::Md, $saveOptions);
} finally {
$presentation->dispose();
}
Chuyển đổi hình ảnh theo dạng trực quan
Nếu bạn muốn các hình ảnh xuất hiện cùng nhau trong Markdown kết quả, phải chọn tùy chọn Visual. Trong trường hợp này, các hình ảnh được lưu vào thư mục hiện tại của ứng dụng (và một đường dẫn tương đối được tạo cho chúng trong tài liệu Markdown), hoặc bạn có thể chỉ định thư mục và tên thư mục ưa thích của mình.
Mã PHP sau đây minh họa thao tác này:
$presentation = new Presentation("presentation.pptx");
try {
$outPath = "c:/documents";
$saveOptions = new MarkdownSaveOptions();
$saveOptions->setExportType(MarkdownExportType::Visual);
$saveOptions->setImagesSaveFolderName("md-images");
$saveOptions->setBasePath($outPath);
$presentation->save("presentation.md", SaveFormat::Md, $saveOptions);
} finally {
$presentation->dispose();
}
Câu hỏi thường gặp
Liệu các siêu liên kết có được giữ lại khi xuất sang Markdown không?
Có. Các siêu liên kết trong văn bản được giữ lại dưới dạng liên kết Markdown tiêu chuẩn. Các chuyển tiếp và hoạt ảnh không được chuyển đổi.
Tôi có thể tăng tốc chuyển đổi bằng cách chạy đa luồng không?
Bạn có thể thực hiện song song trên các tệp, nhưng đừng chia sẻ cùng một thể hiện Presentation giữa các luồng. Sử dụng các thể hiện/tiến trình riêng cho mỗi tệp để tránh tranh chấp.
Điều gì xảy ra với hình ảnh—chúng được lưu ở đâu và đường dẫn có phải là tương đối không?
Hình ảnh được xuất ra một thư mục riêng, và tệp Markdown tham chiếu chúng bằng các đường dẫn tương đối theo mặc định. Bạn có thể cấu hình đường dẫn xuất cơ sở và tên thư mục tài sản để giữ cấu trúc kho dự đoán được.