Menyimpan Presentasi di Android
Ikhtisar
Buka Presentasi di Android menjelaskan cara menggunakan kelas Presentation untuk membuka sebuah presentasi. Artikel ini menjelaskan cara membuat dan menyimpan presentasi. Kelas Presentation berisi konten sebuah presentasi. Baik Anda membuat presentasi dari awal maupun memodifikasi yang sudah ada, Anda akan ingin menyimpannya setelah selesai. Dengan Aspose.Slides untuk Android, Anda dapat menyimpan ke file atau stream. Artikel ini menjelaskan berbagai cara menyimpan sebuah presentasi.
Simpan Presentasi ke File
Simpan sebuah presentasi ke file dengan memanggil metode save pada kelas Presentation. Berikan nama file dan format penyimpanan ke metode tersebut. Contoh berikut menunjukkan cara menyimpan sebuah presentasi dengan Aspose.Slides.
import com.aspose.slides.*;
// Membuat instance kelas Presentation yang merepresentasikan file presentasi.
Presentation presentation = new Presentation();
try {
// Lakukan beberapa pekerjaan di sini...
// Simpan presentasi ke sebuah file.
presentation.save("Output.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Simpan Presentasi ke Stream
Anda dapat menyimpan sebuah presentasi ke stream dengan memberikan output stream ke metode save pada kelas Presentation. Sebuah presentasi dapat ditulis ke berbagai jenis stream. Pada contoh di bawah, kami membuat presentasi baru dan menyimpannya ke stream file.
import com.aspose.slides.*;
import java.io.FileOutputStream;
import java.io.OutputStream;
// Membuat instance kelas Presentation yang merepresentasikan file presentasi.
Presentation presentation = new Presentation();
try {
OutputStream fileStream = new FileOutputStream("Output.pptx");
try {
// Simpan presentasi ke stream.
presentation.save(fileStream, SaveFormat.Pptx);
} finally {
fileStream.close();
}
} finally {
presentation.dispose();
}
Simpan Presentasi dengan Jenis Tampilan yang Ditetapkan
Aspose.Slides memungkinkan Anda mengatur tampilan awal yang digunakan PowerPoint saat presentasi yang dihasilkan dibuka melalui kelas ViewProperties. Gunakan metode setLastView dengan nilai dari enumerasi ViewType.
import com.aspose.slides.*;
Presentation presentation = new Presentation();
try {
presentation.getViewProperties().setLastView(ViewType.SlideMasterView);
presentation.save("SlideMasterView.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Simpan Presentasi dalam Format Strict Office Open XML
Aspose.Slides memungkinkan Anda menyimpan sebuah presentasi dalam format Strict Office Open XML. Gunakan kelas PptxOptions dan atur properti conformance‑nya saat menyimpan. Jika Anda menetapkan Conformance.Iso29500_2008_Strict, file output akan disimpan dalam format Strict Office Open XML.
Contoh di bawah membuat sebuah presentasi dan menyimpannya dalam format Strict Office Open XML.
import com.aspose.slides.*;
PptxOptions options = new PptxOptions();
options.setConformance(Conformance.Iso29500_2008_Strict);
// Membuat instance kelas Presentation yang merepresentasikan file presentasi.
Presentation presentation = new Presentation();
try {
// Simpan presentasi dalam format Strict Office Open XML.
presentation.save("StrictOfficeOpenXml.pptx", SaveFormat.Pptx, options);
} finally {
presentation.dispose();
}
Simpan Presentasi dalam Format Office Open XML dalam Mode Zip64
File Office Open XML adalah arsip ZIP yang memberlakukan batas 4 GB (2^32 byte) pada ukuran tidak terkompresi dari setiap file, ukuran terkompresi, dan total ukuran arsip, serta membatasi arsip hingga 65 535 (2^16‑1) file. Ekstensi format ZIP64 meningkatkan batas ini menjadi 2^64.
Metode IPptxOptions.setZip64Mode memungkinkan Anda memilih kapan menggunakan ekstensi format ZIP64 saat menyimpan file Office Open XML.
Metode ini dapat digunakan dengan mode berikut:
- IfNecessary menggunakan ekstensi format ZIP64 hanya jika presentasi melebihi batas di atas. Ini adalah mode default.
- Never tidak pernah menggunakan ekstensi format ZIP64.
- Always selalu menggunakan ekstensi format ZIP64.
Kode berikut menunjukkan cara menyimpan sebuah presentasi sebagai file PPTX dengan ekstensi format ZIP64 diaktifkan:
import com.aspose.slides.*;
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setZip64Mode(Zip64Mode.Always);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("OutputZip64.pptx", SaveFormat.Pptx, pptxOptions);
} finally {
presentation.dispose();
}
NOTE
Ketika Anda menyimpan dengan Zip64Mode.Never, sebuah PptxException akan dilemparkan jika presentasi tidak dapat disimpan dalam format ZIP32.Simpan Presentasi dalam Format Office Open XML dengan Tingkat Kompresi
Ketika bekerja dengan presentasi besar, Anda dapat menyesuaikan tingkat kompresi untuk menyeimbangkan ukuran file dan waktu pemrosesan. Bergantung pada kebutuhan Anda, Anda mungkin lebih memilih pemrosesan yang lebih cepat atau file output yang lebih kecil.
Aspose.Slides menyediakan metode IPptxOptions.setCompressionLevel yang memungkinkan Anda menentukan tingkat kompresi yang digunakan saat menyimpan sebuah presentasi dalam format Office Open XML.
Tingkat kompresi berikut tersedia:
- None: Tidak ada kompresi yang diterapkan. File disimpan apa adanya.
- Level1: Kompresi tercepat dengan rasio kompresi terendah.
- Level2: Kompresi lebih cepat dengan rasio kompresi sedikit lebih baik dibanding Level1.
- Level3: Menyediakan kompresi lebih baik daripada Level2 dengan dampak sedang pada waktu pemrosesan.
- Level4: Menyediakan kompresi lebih baik daripada Level3.
- Level5: Menyediakan kompresi yang lebih baik daripada Level4 dengan waktu pemrosesan tambahan.
- Level6: Kompresi standar yang menawarkan keseimbangan yang baik antara kecepatan pemrosesan dan ukuran file. Ini adalah tingkat kompresi default.
- Level7: Menyediakan kompresi lebih baik daripada Level6 dengan pemrosesan lebih lambat.
- Level8: Menyediakan kompresi lebih baik daripada Level7.
- Level9: Kompresi maksimum. Menghasilkan ukuran file terkecil dengan biaya waktu pemrosesan terpanjang.
Contoh berikut menunjukkan cara menyimpan sebuah presentasi sebagai file PPTX tanpa kompresi:
import com.aspose.slides.*;
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setCompressionLevel(CompressionLevel.None);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Sample-out.pptx", SaveFormat.Pptx, pptxOptions);
} finally {
presentation.dispose();
}
Contoh ini menunjukkan cara menyimpan sebuah presentasi sebagai file PPTX dengan kompresi maksimum:
import com.aspose.slides.*;
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setCompressionLevel(CompressionLevel.Level9);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Sample-level9.pptx", SaveFormat.Pptx, pptxOptions);
} finally {
presentation.dispose();
}
Simpan Presentasi tanpa Menyegarkan Thumbnail
Metode PptxOptions.setRefreshThumbnail mengontrol pembuatan thumbnail saat menyimpan sebuah presentasi ke PPTX:
- Jika disetel ke
true, thumbnail akan disegarkan selama penyimpanan. Ini adalah nilai default. - Jika disetel ke
false, thumbnail saat ini dipertahankan. Jika presentasi tidak memiliki thumbnail, tidak ada yang dihasilkan.
Pada kode di bawah, presentasi disimpan ke PPTX tanpa menyegarkan thumbnail‑nya.
import com.aspose.slides.*;
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setRefreshThumbnail(false);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Output.pptx", SaveFormat.Pptx, pptxOptions);
}
finally {
presentation.dispose();
}
Info
Opsi ini membantu mengurangi waktu yang diperlukan untuk menyimpan presentasi dalam format PPTX.Simpan Pembaruan Progres dalam Persentase
Antarmuka IProgressCallback digunakan melalui metode setProgressCallback yang disediakan oleh antarmuka ISaveOptions dan kelas abstrak SaveOptions. Tetapkan implementasi IProgressCallback dengan setProgressCallback untuk menerima pembaruan progres penyimpanan dalam persentase.
Potongan kode berikut menunjukkan cara menggunakan IProgressCallback.
import com.aspose.slides.*;
ISaveOptions saveOptions = new PdfOptions();
saveOptions.setProgressCallback(new ExportProgressHandler());
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Output.pdf", SaveFormat.Pdf, saveOptions);
} finally {
presentation.dispose();
}
import com.aspose.slides.*;
class ExportProgressHandler implements IProgressCallback {
public void reporting(double progressValue) {
// Gunakan nilai persentase kemajuan di sini.
int progress = (int) progressValue;
System.out.println(progress + "% of the file has been converted.");
}
}
Info
Aspose telah mengembangkan sebuah aplikasi PowerPoint Splitter gratis menggunakan API‑nya sendiri. Aplikasi ini memungkinkan Anda memisahkan sebuah presentasi menjadi beberapa file dengan menyimpan slide terpilih sebagai file PPTX atau PPT baru.FAQ
Apakah “fast save” (penyimpanan inkremental) didukung sehingga hanya perubahan yang ditulis?
Tidak. Setiap kali menyimpan, file target lengkap dibuat; “fast save” inkremental tidak didukung.
Apakah aman untuk thread menyimpan instance Presentation yang sama dari beberapa thread?
Tidak. Sebuah instance Presentation tidak aman untuk thread; simpanlah dari satu thread saja.
Apa yang terjadi pada hyperlink dan file yang ditautkan secara eksternal saat menyimpan?
Hyperlinks tetap dipertahankan. File yang ditautkan secara eksternal (misalnya video via jalur relatif) tidak disalin secara otomatis—pastikan jalur referensi tetap dapat diakses.
Bisakah saya mengatur/menyimpan metadata dokumen (Penulis, Judul, Perusahaan, Tanggal)?
Ya. Properti dokumen standar didukung dan akan ditulis ke file saat disimpan.