Spara presentationer i JavaScript
Översikt
Open Presentations in JavaScript beskrev hur man använder klassen Presentation för att öppna en presentation. Den här artikeln förklarar hur man skapar och sparar presentationer. Klassen Presentation innehåller en presentations innehåll. Oavsett om du skapar en presentation från början eller ändrar en befintlig, vill du spara den när du är klar. Med Aspose.Slides för Node.js kan du spara till en fil eller ström. Den här artikeln förklarar de olika sätten att spara en presentation.
Spara presentationer till filer
Spara en presentation till en fil genom att anropa klassens save‑metod på Presentation. Skicka filnamnet och sparformatet till metoden. Följande exempel visar hur man sparar en presentation med Aspose.Slides.
// Instansiera Presentation-klassen som representerar en presentationsfil.
let presentation = new aspose.slides.Presentation();
try {
// Utför någon arbetsuppgift här...
// Spara presentationen till en fil.
presentation.save("Output.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Spara presentationer till strömmar
Du kan spara en presentation till en ström genom att skicka en utskriftsström till klassens save‑metod på Presentation. En presentation kan skrivas till många olika strömtyper. I exemplet nedan skapar vi en ny presentation och sparar den till en filström.
// Instansiera Presentation-klassen som representerar en presentationsfil.
let presentation = new aspose.slides.Presentation();
try {
let fileStream = java.newInstanceSync("java.io.FileOutputStream", "Output.pptx");
try {
// Spara presentationen till strömmen.
presentation.save(fileStream, aspose.slides.SaveFormat.Pptx);
} finally {
fileStream.close();
}
} finally {
presentation.dispose();
}
Spara presentationer med en fördefinierad vytyp
Aspose.Slides låter dig ange den initiala vyn som PowerPoint använder när den genererade presentationen öppnas via klassen ViewProperties. Använd metoden setLastView med ett värde från uppräkningen ViewType.
let presentation = new aspose.slides.Presentation();
try {
presentation.getViewProperties().setLastView(aspose.slides.ViewType.SlideMasterView);
presentation.save("SlideMasterView.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Spara presentationer i det strikt Office Open XML‑formatet
Aspose.Slides låter dig spara en presentation i det strikt Office Open XML‑formatet. Använd klassen PptxOptions och sätt dess konformitetsegenskap när du sparar. Om du sätter Conformance.Iso29500_2008_Strict sparas utdatakfilen i det strikt Office Open XML‑formatet.
Exemplet nedan skapar en presentation och sparar den i det strikt Office Open XML‑formatet.
let options = new aspose.slides.PptxOptions();
options.setConformance(aspose.slides.Conformance.Iso29500_2008_Strict);
// Instansiera Presentation-klassen som representerar en presentationsfil.
let presentation = new aspose.slides.Presentation();
try {
// Spara presentationen i det Strikta Office Open XML-formatet.
presentation.save("StrictOfficeOpenXml.pptx", aspose.slides.SaveFormat.Pptx, options);
} finally {
presentation.dispose();
}
Spara presentationer i Office Open XML‑format i Zip64‑läge
En Office Open XML‑fil är ett ZIP‑arkiv som begränsar den okomprimerade storleken på någon fil till 4 GB (2^32 byte), den komprimerade storleken på någon fil och den totala storleken på arkivet, och den begränsar även arkivet till 65 535 (2^16‑1) filer. ZIP64‑formatutökningar höjer dessa begränsningar till 2^64.
Metoden PptxOptions.setZip64Mode låter dig välja när ZIP64‑formatutökningar ska användas vid sparande av en Office Open XML‑fil.
Denna metod kan användas med följande lägen:
- IfNecessary använder ZIP64‑formatutökningar endast om presentationen överskrider begränsningarna ovan. Detta är standardläget.
- Never använder aldrig ZIP64‑formatutökningar.
- Always använder alltid ZIP64‑formatutökningar.
Följande kod demonstrerar hur man sparar en presentation som PPTX med ZIP64‑formatutökningar aktiverade:
let pptxOptions = new aspose.slides.PptxOptions();
pptxOptions.setZip64Mode(aspose.slides.Zip64Mode.Always);
let presentation = new aspose.slides.Presentation("Sample.pptx");
try {
presentation.save("OutputZip64.pptx", aspose.slides.SaveFormat.Pptx, pptxOptions);
} finally {
presentation.dispose();
}
NOTE
När du sparar med Zip64Mode.Never kastas ett PptxException om presentationen inte kan sparas i ZIP32‑format.Spara presentationer utan att uppdatera miniatyrbilden
Metoden PptxOptions.setRefreshThumbnail styr miniatyrbildsgenerering när en presentation sparas till PPTX:
- Om den sätts till
trueuppdateras miniatyrbilden under sparandet. Detta är standardvärdet. - Om den sätts till
falsebevaras den aktuella miniatyrbilden. Om presentationen saknar miniatyrbild genereras ingen.
I koden nedan sparas presentationen till PPTX utan att uppdatera dess miniatyrbild.
let pptxOptions = new aspose.slides.PptxOptions();
pptxOptions.setRefreshThumbnail(false);
let presentation = new aspose.slides.Presentation("Sample.pptx");
try {
presentation.save("Output.pptx", aspose.slides.SaveFormat.Pptx, pptxOptions);
}
finally {
presentation.dispose();
}
Info
Detta alternativ hjälper till att minska den tid som krävs för att spara en presentation i PPTX‑format.Spara framstegsuppdateringar i procent
Rapportering av sparningsframsteg konfigureras via metoden setProgressCallback på SaveOptions och dess underklasser. Tillhandahåll en Java‑proxy som implementerar gränssnittet IProgressCallback; under exporten får återanropet periodiska procentuella uppdateringar.
Följande kodsnuttar visar hur man använder IProgressCallback.
const ExportProgressHandler = java.newProxy("com.aspose.slides.IProgressCallback", {
reporting: function(progressValue) {
// Använd procentvärdet för framsteg här.
const progress = Math.floor(progressValue);
console.log(`${progress}% of the file has been converted.`);
}
});
let saveOptions = new aspose.slides.PdfOptions();
saveOptions.setProgressCallback(ExportProgressHandler);
let presentation = new aspose.slides.Presentation("Sample.pptx");
try {
presentation.save("Output.pdf", aspose.slides.SaveFormat.Pdf, saveOptions);
} finally {
presentation.dispose();
}
Info
Aspose har utvecklat en fri PowerPoint Splitter‑app som låter dig dela en presentation i flera filer genom att spara valda bildspel som nya PPTX‑ eller PPT‑filer.FAQ
Stöds “snabb sparning” (inkrementell sparning) så att endast ändringar skrivs?
Nej. Sparning skapar hela målfilen varje gång; inkrementell “snabb sparning” stöds inte.
Är det trådsäkert att spara samma Presentation‑instans från flera trådar?
Nej. En Presentation‑instans är inte trådsäker; spara den från en enda tråd.
Vad händer med hyperlänkar och externt länkade filer vid sparning?
Hyperlinks bevaras. Externt länkade filer (t.ex. videor via relativa sökvägar) kopieras inte automatiskt — se till att de refererade sökvägarna förblir åtkomliga.
Kan jag ställa in/spara dokumentmetadata (Författare, Titel, Företag, Datum)?
Ja. Standard document properties stöds och kommer att skrivas till filen vid sparning.