Zapisz prezentacje na Androidzie
Przegląd
Otwórz prezentacje na Androidzie opisuje, jak używać klasy Presentation do otwierania prezentacji. Ten artykuł wyjaśnia, jak tworzyć i zapisywać prezentacje. Klasa Presentation zawiera zawartość prezentacji. Niezależnie od tego, czy tworzysz prezentację od podstaw, czy modyfikujesz istniejącą, po zakończeniu będziesz chciał ją zapisać. Dzięki Aspose.Slides dla Androida możesz zapisać do pliku lub strumienia. Ten artykuł opisuje różne sposoby zapisywania prezentacji.
Zapisz prezentacje do plików
Zapisz prezentację do pliku, wywołując metodę save klasy Presentation. Przekaż nazwę pliku i format zapisu do metody. Poniższy przykład pokazuje, jak zapisać prezentację przy użyciu Aspose.Slides.
// Utwórz instancję klasy Presentation, która reprezentuje plik prezentacji.
Presentation presentation = new Presentation();
try {
// Wykonaj tutaj jakieś operacje...
// Zapisz prezentację do pliku.
presentation.save("Output.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Zapisz prezentacje do strumieni
Możesz zapisać prezentację do strumienia, przekazując strumień wyjściowy do metody save klasy Presentation. Prezentację można zapisać do wielu typów strumieni. W poniższym przykładzie tworzymy nową prezentację i zapisujemy ją do strumienia pliku.
// Utwórz instancję klasy Presentation, która reprezentuje plik prezentacji.
Presentation presentation = new Presentation();
try {
OutputStream fileStream = new FileOutputStream("Output.pptx");
try {
// Zapisz prezentację do strumienia.
presentation.save(fileStream, SaveFormat.Pptx);
} finally {
fileStream.close();
}
} finally {
presentation.dispose();
}
Zapisz prezentacje z określonym typem widoku
Aspose.Slides umożliwia ustawienie początkowego widoku, który PowerPoint używa po otwarciu wygenerowanej prezentacji, za pomocą klasy ViewProperties. Użyj metody setLastView z wartością z wyliczenia ViewType.
Presentation presentation = new Presentation();
try {
presentation.getViewProperties().setLastView(ViewType.SlideMasterView);
presentation.save("SlideMasterView.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Zapisz prezentacje w ścisłym formacie Office Open XML
Aspose.Slides umożliwia zapisanie prezentacji w ścisłym formacie Office Open XML. Użyj klasy PptxOptions i ustaw jej właściwość conformance podczas zapisu. Jeśli ustawisz Conformance.Iso29500_2008_Strict, plik wyjściowy zostanie zapisany w ścisłym formacie Office Open XML.
Poniższy przykład tworzy prezentację i zapisuje ją w ścisłym formacie Office Open XML.
PptxOptions options = new PptxOptions();
options.setConformance(Conformance.Iso29500_2008_Strict);
// Utwórz instancję klasy Presentation, która reprezentuje plik prezentacji.
Presentation presentation = new Presentation();
try {
// Zapisz prezentację w ścisłym formacie Office Open XML.
presentation.save("StrictOfficeOpenXml.pptx", SaveFormat.Pptx, options);
} finally {
presentation.dispose();
}
Zapisz prezentacje w formacie Office Open XML w trybie Zip64
Plik Office Open XML jest archiwum ZIP, które narzuca limity 4 GB (2^32 bajtów) na nieskompresowany rozmiar dowolnego pliku, skompresowany rozmiar dowolnego pliku oraz całkowity rozmiar archiwum, a także ogranicza liczbę plików w archiwum do 65 535 (2^16‑1). Rozszerzenia formatu ZIP64 podnoszą te limity do 2^64.
Metoda IPptxOptions.setZip64Mode umożliwia wybranie, kiedy używać rozszerzeń formatu ZIP64 przy zapisywaniu pliku Office Open XML.
Ta metoda może być użyta z następującymi trybami:
- IfNecessary używa rozszerzeń ZIP64 tylko wtedy, gdy prezentacja przekracza powyższe ograniczenia. To domyślny tryb.
- Never nigdy nie używa rozszerzeń ZIP64.
- Always zawsze używa rozszerzeń ZIP64.
Poniższy kod demonstruje, jak zapisać prezentację jako PPTX z włączonymi rozszerzeniami ZIP64:
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
Gdy zapisujesz z Zip64Mode.Never, zostaje rzucony PptxException, jeśli prezentacji nie można zapisać w formacie ZIP32.Zapisz prezentacje bez odświeżania miniatury
Metoda PptxOptions.setRefreshThumbnail kontroluje generowanie miniatury przy zapisywaniu prezentacji do PPTX:
- Jeśli ustawiona na
true, miniatura jest odświeżana podczas zapisu. To domyślne zachowanie. - Jeśli ustawiona na
false, zachowywana jest bieżąca miniatura. Jeśli prezentacja nie ma miniatury, żadna nie zostanie wygenerowana.
W poniższym kodzie prezentacja jest zapisywana do PPTX bez odświeżania jej miniatury.
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
Ta opcja pomaga skrócić czas potrzebny na zapisanie prezentacji w formacie PPTX.Zapisz postępy jako procenty
Interfejs IProgressCallback jest używany za pośrednictwem metody setProgressCallback udostępnionej przez interfejs ISaveOptions oraz abstrakcyjną klasę SaveOptions. Przypisz implementację IProgressCallback przy pomocy setProgressCallback, aby otrzymywać aktualizacje postępu zapisu w procentach.
Poniższe fragmenty kodu pokazują, jak używać IProgressCallback.
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();
}
class ExportProgressHandler implements IProgressCallback {
public void reporting(double progressValue) {
// Użyj tutaj wartości procentowej postępu.
int progress = (int) progressValue;
System.out.println(progress + "% of the file has been converted.");
}
}
Info
Aspose opracowało bezpłatną aplikację PowerPoint Splitter korzystającą z własnego API. Aplikacja pozwala podzielić prezentację na wiele plików, zapisując wybrane slajdy jako nowe pliki PPTX lub PPT.FAQ
Czy obsługiwany jest „szybki zapis” (zapis przyrostowy), aby zapisywać tylko zmiany?
Nie. Zapis tworzy pełny plik docelowy przy każdym wywołaniu; przyrostowy „szybki zapis” nie jest obsługiwany.
Czy zapis tego samego obiektu Presentation z wielu wątków jest bezpieczny?
Nie. Obiekt Presentation nie jest bezpieczny dla wielu wątków; zapisz go z jednego wątku.
Co się dzieje z hiperłączami i zewnętrznie powiązanymi plikami podczas zapisu?
Hiperłącza są zachowywane. Zewnętrznie powiązane pliki (np. wideo wskazywane względnymi ścieżkami) nie są kopiowane automatycznie — należy upewnić się, że odwoływane ścieżki pozostają dostępne.
Czy mogę ustawić/zapisać metadane dokumentu (Autor, Tytuł, Firma, Data)?
Tak. Standardowe właściwości dokumentu są obsługiwane i zostaną zapisane w pliku podczas zapisu.