Ekspor Persamaan Matematika dari Presentasi dalam Python
Pendahuluan
Aspose.Slides untuk Python via .NET memungkinkan Anda mengekspor persamaan matematika dari presentasi. Misalnya, Anda mungkin perlu mengekstrak persamaan dari slide tertentu dan menggunakan kembali di program atau platform lain.
Ekspor Persamaan Matematika ke LaTeX
Aspose.Slides dapat mengonversi persamaan matematika PowerPoint langsung ke LaTeX; file MathML perantara dan konverter eksternal tidak diperlukan. Persamaan matematika disimpan dalam bingkai teks sebagai sebuah MathPortion. Gunakan MathPortion.math_paragraph untuk mendapatkan sebuah MathParagraph, kemudian panggil MathParagraph.to_latex. Metode tersebut mengembalikan string yang dapat Anda simpan, tampilkan, kirim ke aplikasi lain, atau proses lebih lanjut.
Contoh berikut memeriksa setiap bingkai teks pada setiap slide, menemukan semua bagian matematika, dan menulis setiap persamaan ke file .tex terpisah:
import aspose.slides as slides
with slides.Presentation("equations.pptx") as presentation:
for slide_number, slide in enumerate(presentation.slides, start=1):
equation_number = 1
text_frames = slides.util.SlideUtil.get_all_text_boxes(slide)
for text_frame in text_frames:
for paragraph in text_frame.paragraphs:
for portion in paragraph.portions:
if not isinstance(portion, slides.mathtext.MathPortion):
continue
math_paragraph = portion.math_paragraph
latex_path = f"slide_{slide_number}_equation_{equation_number}.tex"
latex_text = math_paragraph.to_latex()
with open(latex_path, "w", encoding="utf-8") as latex_file:
latex_file.write(latex_text)
equation_number += 1
SlideUtil.get_all_text_boxes mengembalikan semua bingkai teks yang ditemukan pada sebuah slide. Pemeriksaan tipe MathPortion memisahkan persamaan yang dapat diedit secara nyata dari teks dan gambar biasa.
Mesin LaTeX dan templat dokumen tidak semuanya mendukung perintah, paket, atau karakter Unicode yang sama. Uji string yang dikembalikan dengan mesin LaTeX yang digunakan oleh aplikasi Anda. Jika sebuah simbol atau elemen Office Math tidak memiliki representasi yang sesuai dalam lingkungan tersebut, gantilah dalam string yang dikembalikan dengan perintah khusus proyek atau lewati persamaan tersebut dan catat masalahnya untuk ditinjau.
Simpan Persamaan Matematika sebagai MathML
Meskipun manusia dapat dengan mudah menulis LaTeX, MathML biasanya dihasilkan secara otomatis oleh aplikasi. Karena MathML berbasis XML, program dapat membaca dan mem‑parsenya dengan andal, sehingga sering digunakan sebagai format output dan pencetakan di berbagai bidang.
Kode contoh berikut menunjukkan cara mengekspor persamaan matematika dari sebuah presentasi ke MathML:
import aspose.slides as slides
import aspose.slides.mathtext as math
with slides.Presentation() as presentation:
slide = presentation.slides[0]
auto_shape = slide.shapes.add_math_shape(0, 0, 500, 50)
math_paragraph = auto_shape.text_frame.paragraphs[0].portions[0].math_paragraph
math_paragraph.add(
math.MathematicalText("a").
set_superscript("2").
join("+").
join(math.MathematicalText("b").set_superscript("2")).
join("=").
join(math.MathematicalText("c").set_superscript("2")))
with open("mathml.xml", "wb") as file_stream:
math_paragraph.write_as_math_ml(file_stream)
FAQ
Apa yang sebenarnya diekspor ke MathML—sebuah paragraf atau blok formula individual?
Anda dapat mengekspor seluruh paragraf matematika (MathParagraph) atau sebuah blok individual (MathBlock) ke MathML. Kedua tipe menyediakan metode untuk menulis ke MathML.
Bagaimana saya tahu bahwa sebuah objek pada slide adalah formula matematika bukan teks biasa atau gambar?
Sebuah formula berada dalam sebuah MathPortion dan memiliki sebuah MathParagraph. Gambar dan potongan teks biasa tanpa MathParagraph tidak dapat diekspor sebagai formula.
Dari mana MathML berasal dalam sebuah presentasi—apakah khusus PowerPoint?
Ekspor menargetkan MathML standar (XML). Aspose menggunakan Presentation MathML—subset presentasi dari standar tersebut—yang banyak digunakan di aplikasi dan web.
Apakah mengekspor formula dalam tabel, SmartArt, grup, dll., didukung?
Ya, jika objek-objek tersebut berisi potongan teks dengan MathParagraph (yaitu formula PowerPoint yang sebenarnya), maka akan diekspor. Jika sebuah formula disematkan sebagai gambar, maka tidak akan diekspor.
Apakah mengekspor ke MathML mengubah presentasi asli?
Tidak. Menulis MathML adalah proses serialisasi konten formula; tidak mengubah file presentasi.