
MS PowerPoint adalah aplikasi kaya fitur yang memungkinkan Anda membuat presentasi menarik yang memiliki teks, grafik, animasi, bagan, dan beberapa elemen lainnya. Dalam posting ini, Anda akan belajar bagaimana mengimplementasikan fitur otomatisasi PowerPoint dasar dalam aplikasi C++. Khususnya, Anda akan mengetahui cara membuat presentasi PowerPoint dan menambahkan teks, gambar, bagan, dan tabel ke slide menggunakan C++.
- API C++ PowerPoint
- Buat Presentasi PowerPoint di C++
- Tambahkan Slide ke Presentasi
- Tambahkan Teks ke Slide PowerPoint
- Buat Tabel di Presentasi
- Buat Bagan di Presentasi
- Buka Presentasi PowerPoint yang Ada
- Dapatkan Lisensi Gratis
API C++ PowerPoint
Aspose.Slides for C++ dirancang untuk mengotomatiskan fitur manipulasi presentasi PowerPoint dalam aplikasi C++. Dengan menggunakan API, Anda dapat membuat, mengedit, atau mengonversi presentasi PowerPoint dengan mulus. Anda dapat mengunduh paket lengkap file API atau mendapatkannya dari NuGet.
Buat Presentasi PowerPoint di C++
Mari kita mulai dengan membuat presentasi PowerPoint kosong menggunakan Aspose.Slides for C++. Berikut ini adalah langkah-langkah untuk melakukan operasi ini.
- Buat objek dari kelas Presentation.
- Simpan presentasi menggunakan metode Presentation->Save(String, SaveFormat::Pptx).
Contoh kode berikut menunjukkan cara membuat presentasi PowerPoint menggunakan C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// Path ke direktori dokumen.
const String outPath = u"../out/SampleChartresult.pptx";
//Kelas Presentasi Instansiasi yang mewakili file PPTX
SharedPtr<Presentation> pres = MakeObject<Presentation>();
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0);
// Tambahkan autoshape dari garis tipe
slide->get_Shapes()->AddAutoShape(Aspose::Slides::ShapeType::Line, 50.0, 150.0, 300.0, 0.0);
//Menyimpan presentasi
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
Tambahkan Slide ke Presentasi di C++
Setelah Anda membuat presentasi PowerPoint, Anda dapat memasukkan slide ke dalamnya. Berikut ini adalah langkah-langkah untuk menambahkan slide ke presentasi PowerPoint:
- Buat objek dari kelas Presentation.
- Dapatkan slide di objek ISlideCollection menggunakan metode Presentation->getSlides().
- Tambahkan slide menggunakan metode ISlideCollection->AddEmptySlide().
- Simpan presentasi menggunakan metode Presentation->Save(String, SaveFormat::Pptx).
Contoh kode berikut menunjukkan cara menambahkan slide ke presentasi PowerPoint menggunakan C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// Path ke direktori dokumen.
const String outPath = u"../templates/AddSlides.pptx";
// Kelas Presentasi Instantiate yang mewakili file presentasi
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// Instansiasi perhitungan SlideCollection
SharedPtr<ISlideCollection> slds = pres->get_Slides();
for (int i = 0; i < pres->get_LayoutSlides()->get_Count(); i++)
{
// Tambahkan slide kosong ke koleksi Slide
slds->AddEmptySlide(pres->get_LayoutSlides()->idx_get(i));
}
// Simpan file PPTX ke Disk
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
Untuk mempelajari lebih lanjut tentang memanipulasi slide, kunjungi Menambahkan, Memformat, dan Memanipulasi Slide.
Tambahkan Teks ke Slide PowerPoint menggunakan C++
Sekarang, mari tambahkan teks ke slide dalam presentasi PowerPoint. Untuk ini, Anda perlu memasukkan kotak teks ke slide. Di bawah ini adalah langkah-langkah untuk melakukan operasi ini.
- Buat presentasi baru atau muat presentasi yang sudah ada menggunakan kelas Presentation.
- Dapatkan referensi slide ke objek ISlide menggunakan metode Presentation->getSlides()->idxget(int).
- Tambahkan persegi panjang ke slide menggunakan metode ISlide->getShapes()->AddAutoShape(ShapeType::Rectangle, int, int, int, int) dan dapatkan referensinya di objek IAutoShape.
- Tambahkan bingkai teks menggunakan metode IAutoShape->AddTextFrame(u" “).
- Dapatkan bingkai teks menggunakan IAutoShape->getTextFrame() ke objek ITextFrame.
- Dapatkan paragraf menggunakan ITextFrame->getParagraphs()->idxget(0) ke objek IParagraph.
- Akses bagian paragraf menggunakan IParagraph->getPortions()->idxget(0) ke dalam objek IPortion.
- Tetapkan teks menggunakan metode IPortion->setText(u"Aspose TextBox”).
- Simpan presentasi menggunakan metode Presentation->Save(String, SaveFormat::Pptx).
Contoh kode berikut menunjukkan cara menambahkan teks ke slide dalam presentasi PowerPoint menggunakan C++.
// Path ke direktori dokumen.
const String outPath = u"../out/TextBoxOnSlideProgram_out.pptx";
const String templatePath = u"../templates/DefaultFonts_out.pptx";
// Muat presentasi yang diinginkan
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// Akses slide pertama
SharedPtr<ISlide> sld = pres->get_Slides()->idx_get(0);
// Tambahkan AutoShape dari tipe Rectangle
SharedPtr<IAutoShape> ashp = sld->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 150, 75, 150, 50);
// Tambahkan TextFrame ke Rectangle
ashp->AddTextFrame(u" ");
// Mengakses bingkai teks
SharedPtr<ITextFrame> txtFrame = ashp->get_TextFrame();
// Buat objek Paragraf untuk bingkai teks
SharedPtr<IParagraph> paragraph = txtFrame->get_Paragraphs()->idx_get(0);
// Buat objek Porsi untuk paragraf
SharedPtr<IPortion> portion = paragraph->get_Portions()->idx_get(0);
portion->set_Text(u"Aspose TextBox");
// Simpan PPTX ke Disk
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
Untuk mempelajari lebih lanjut tentang memanipulasi teks dalam presentasi, kunjungi Menambahkan, Memformat, dan Memanipulasi Teks.
Buat Tabel di Presentasi menggunakan C++
Berikut adalah langkah-langkah untuk menambahkan tabel pada slide presentasi PowerPoint menggunakan Aspose.Slides for C++.
- Buat instance dari kelas Presentation.
- Dapatkan referensi slide ke objek ISlide.
- Tentukan array kolom dan baris dengan memberikan lebar.
- Tambahkan tabel ke slide menggunakan metode ISlide->getShapes()->AddTable().
- Ulangi setiap sel untuk menerapkan pemformatan ke batas atas, bawah, kanan, dan kiri.
- Menggabungkan sel jika diperlukan.
- Akses bingkai teks sel untuk menambahkan beberapa teks.
- Simpan presentasi sebagai file PPTX.
Contoh kode berikut menunjukkan cara membuat tabel dalam presentasi PowerPoint menggunakan C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// Path ke direktori dokumen.
const String outPath = u"../out/TableFromScratch_out.pptx";
// Muat presentasi yang diinginkan
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// Akses slide pertama
SharedPtr<ISlide> islide = pres->get_Slides()->idx_get(0);
// Tentukan kolom dengan lebar dan baris dengan tinggi
System::ArrayPtr<double> dblCols = System::MakeObject<System::Array<double>>(4, 70);
System::ArrayPtr<double> dblRows = System::MakeObject<System::Array<double>>(4, 70);
// Tambahkan bentuk tabel ke slide
SharedPtr<ITable> table = islide->get_Shapes()->AddTable(100, 50, dblCols, dblRows);
// Tetapkan format batas untuk setiap sel
for (int x = 0; x < table->get_Rows()->get_Count(); x++)
{
SharedPtr<IRow> row = table->get_Rows()->idx_get(x);
for (int y = 0; y < row->get_Count(); y++)
{
SharedPtr<ICell> cell = row->idx_get(y);
cell->get_BorderTop()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderTop()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderTop()->set_Width(5);
cell->get_BorderBottom()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderBottom()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderBottom()->set_Width(5);
cell->get_BorderLeft()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderLeft()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderLeft()->set_Width(5);
cell->get_BorderRight()->get_FillFormat()->set_FillType(FillType::Solid);
cell->get_BorderRight()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
cell->get_BorderRight()->set_Width(5);
}
}
// Menggabungkan sel (1, 1) x (2, 1)
table->MergeCells(table->idx_get(1, 1), table->idx_get(2, 1), false);
// Menggabungkan sel (1, 2) x (2, 2)
table->MergeCells(table->idx_get(1, 2), table->idx_get(2, 2), false);
// Simpan PPTX ke Disk
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
Untuk mempelajari lebih lanjut tentang memanipulasi tabel, kunjungi Menambahkan, Memperbarui, dan Memanipulasi Tabel.
Buat Bagan dalam Presentasi menggunakan C++
Aspose.Slides for C++ mendukung berbagai jenis grafik seperti scatter, treemap, histogram, dan etc. Untuk demonstrasi, mari buat bagan normal. Di bawah ini adalah langkah-langkah untuk melakukan operasi ini.
- Buat instance dari kelas Presentation.
- Dapatkan referensi slide yang ingin Anda tambahkan bagan.
- Tambahkan bagan dengan data default beserta jenis yang diinginkan menggunakan metode ISlide->getShapes()->AddChart().
- Dapatkan referensi bagan di objek IChart.
- Hapus data bagan dan tambahkan seri dan kategori baru.
- Tambahkan data bagan baru untuk rangkaian bagan.
- Atur warna isian untuk rangkaian bagan.
- Tambahkan label rangkaian bagan.
- Simpan presentasi sebagai file PPTX.
Contoh kode berikut menunjukkan cara menyisipkan bagan dalam presentasi PowerPoint menggunakan C++.
For complete examples and data files, please go to https://github.com/aspose-slides/Aspose.Slides-for-C
// Path ke direktori dokumen.
const String outPath = u"../out/NormalCharts_out.pptx";
//Kelas Presentasi Instansiasi yang mewakili file PPTX
SharedPtr<Presentation> pres = MakeObject<Presentation>();
//Akses slide pertama
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0);
// Tambahkan bagan dengan data default
SharedPtr<IChart> chart = slide->get_Shapes()->AddChart(Aspose::Slides::Charts::ChartType::ClusteredColumn, 0, 0, 500, 500);
// Mengatur indeks lembar data bagan
int defaultWorksheetIndex = 0;
// Mendapatkan lembar kerja data bagan
SharedPtr<IChartDataWorkbook> fact = chart->get_ChartData()->get_ChartDataWorkbook();
// Judul bagan pengaturan
chart->get_ChartTitle()->AddTextFrameForOverriding(u"Sample Title");
chart->get_ChartTitle()->get_TextFrameForOverriding()->get_TextFrameFormat()->set_CenterText ( NullableBool::True);
chart->get_ChartTitle()->set_Height(20);
chart->set_HasTitle( true);
// Hapus seri dan kategori yang dibuat secara default
chart->get_ChartData()->get_Series()->Clear();
chart->get_ChartData()->get_Categories()->Clear();
int s = chart->get_ChartData()->get_Series()->get_Count();
s = chart->get_ChartData()->get_Categories()->get_Count();
// Sekarang, Menambahkan seri baru
chart->get_ChartData()->get_Series()->Add(fact->GetCell(defaultWorksheetIndex, 0, 1, ObjectExt::Box<System::String>(u"Series 1")), chart->get_Type());
chart->get_ChartData()->get_Series()->Add(fact->GetCell(defaultWorksheetIndex, 0, 2, ObjectExt::Box<System::String>(u"Series 2")), chart->get_Type());
// Tambahkan Kategori
chart->get_ChartData()->get_Categories()->Add(fact->GetCell(defaultWorksheetIndex, 1, 0, ObjectExt::Box<System::String>(u"Caetegoty 1")));
chart->get_ChartData()->get_Categories()->Add(fact->GetCell(defaultWorksheetIndex, 2, 0, ObjectExt::Box<System::String>(u"Caetegoty 2")));
chart->get_ChartData()->get_Categories()->Add(fact->GetCell(defaultWorksheetIndex, 3, 0, ObjectExt::Box<System::String>(u"Caetegoty 3")));
// Ambil seri bagan pertama
SharedPtr<IChartSeries> series = chart->get_ChartData()->get_Series()->idx_get(0);
// Sekarang mengisi data seri
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 1, 1, ObjectExt::Box<double>(20)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 2, 1, ObjectExt::Box<double>(50)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 3, 1, ObjectExt::Box<double>(30)));
// Mengatur warna isian untuk seri
series->get_Format()->get_Fill()->set_FillType(FillType::Solid);
series->get_Format()->get_Fill()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Red());
// Ambil seri bagan kedua
series = chart->get_ChartData()->get_Series()->idx_get(1);
// Sekarang mengisi data seri
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 1, 2, ObjectExt::Box<double>(30)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 2, 2, ObjectExt::Box<double>(10)));
series->get_DataPoints()->AddDataPointForBarSeries(fact->GetCell(defaultWorksheetIndex, 3, 2, ObjectExt::Box<double>(60)));
// Mengatur warna isian untuk seri
series->get_Format()->get_Fill()->set_FillType(FillType::Solid);
series->get_Format()->get_Fill()->get_SolidFillColor()->set_Color(System::Drawing::Color::get_Green());
// Label pertama akan menampilkan nama Kategori
SharedPtr<IDataLabel> lbl = series->get_DataPoints()->idx_get(0)->get_Label();
lbl->get_DataLabelFormat()->set_ShowCategoryName(true);
lbl = series->get_DataPoints()->idx_get(1)->get_Label();
lbl->get_DataLabelFormat()->set_ShowSeriesName (true);
// Tampilkan nilai untuk label ketiga
lbl = series->get_DataPoints()->idx_get(2)->get_Label();
lbl->get_DataLabelFormat()->set_ShowValue (true);
lbl->get_DataLabelFormat()->set_ShowSeriesName(true);
lbl->get_DataLabelFormat()->set_Separator (u"/");
// Tulis file presentasi ke disk
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
Pelajari lebih lanjut tentang memanipulasi bagan dari Menambahkan, Memformat, dan Memanipulasi Bagan.
Buka Presentasi PowerPoint di C++
Anda juga dapat membuka presentasi PowerPoint yang ada untuk mengedit konten. Untuk ini, Anda dapat mengikuti langkah-langkah di bawah ini:
- Muat file PPTX menggunakan kelas Presentation dengan memberikan nama file.
- Perbarui konten presentasi.
- Simpan file yang diperbarui menggunakan metode Presentation->Save(String, SaveFormat).
Contoh kode berikut menunjukkan cara membuka presentasi PowerPoint yang sudah ada menggunakan C++.
// Path ke direktori dokumen
const String templatePath = u"../templates/AccessSlides.pptx";
// Kelas Presentasi Instansiasi yang mewakili file PPTX
SharedPtr<Presentation> pres = MakeObject<Presentation>(templatePath);
// Cetak hitungan slide
printf("Total slides inside presentation are : %d\n", pres->get_Slides()->get_Count());
Dapatkan Lisensi Gratis
Anda bisa mendapatkan lisensi sementara gratis untuk mencoba API tanpa batasan evaluasi.
Kesimpulan
Pada artikel ini, Anda telah mempelajari cara membuat presentasi PowerPoint dari dalam aplikasi C++. Panduan langkah demi langkah dan contoh kode beserta referensi API telah menunjukkan cara membuat presentasi dari awal dan menyisipkan slide, teks, tabel, dan bagan ke dalamnya. Anda dapat mempelajari lebih lanjut tentang API menggunakan dokumentasi.