JavaScript ile Sunumları Kaydet

Genel Bakış

Open Presentations in JavaScript sunumları JavaScript’te nasıl açacağınızı gösterir. Bu makale, sunumları nasıl oluşturacağınızı ve kaydedeceğinizi açıklar. Presentation sınıfı bir sunumun içeriğini barındırır. Sıfırdan bir sunum oluşturuyor veya mevcut bir sunumu değiştiriyor olun, işiniz bittiğinde kaydetmek isteyeceksiniz. Aspose.Slides for Node.js ile bir dosyaya veya akışa kaydedebilirsiniz. Bu makale, bir sunumu kaydetmenin farklı yollarını açıklar.

Sunumları Dosyalara Kaydetme

Bir sunumu dosyaya kaydetmek için Presentation sınıfının save yöntemini çağırın. Yönteme dosya adını ve kaydetme biçimini geçirin. Aşağıdaki örnek, Aspose.Slides ile bir sunumu nasıl kaydedeceğinizi gösterir.

// Sunum dosyasını temsil eden Presentation sınıfını örnekleyin.
let presentation = new aspose.slides.Presentation();
try {
    // Burada bazı işlemler yapın...

    // Sunumu bir dosyaya kaydedin.
    presentation.save("Output.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sunumları Akışlara Kaydetme

Bir sunumu, çıkış akışını Presentation sınıfının save yöntemine geçirerek akışa kaydedebilirsiniz. Bir sunum birçok akış türüne yazılabilir. Aşağıdaki örnekte yeni bir sunum oluşturup bir dosya akışına kaydediyoruz.

// Sunum dosyasını temsil eden Presentation sınıfını örnekleyin.
let presentation = new aspose.slides.Presentation();
try {
    let fileStream = java.newInstanceSync("java.io.FileOutputStream", "Output.pptx");
    try {
        // Sunumu akışa kaydedin.
        presentation.save(fileStream, aspose.slides.SaveFormat.Pptx);
    } finally {
        fileStream.close();
    }
} finally {
    presentation.dispose();
}

Önceden Tanımlı Görünüm Türüyle Sunumları Kaydetme

Aspose.Slides, oluşturulan sunum açıldığında PowerPoint’in kullandığı ilk görünümü ViewProperties sınıfı aracılığıyla ayarlamanıza izin verir. setLastView yöntemini, ViewType enum’undan bir değerle kullanın.

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();
}

Sunumları Katı Office Open XML Biçiminde Kaydetme

Aspose.Slides, bir sunumu Katı Office Open XML biçiminde kaydetmenize olanak tanır. Kaydederken PptxOptions sınıfını kullanın ve uyum özelliğini ayarlayın. Conformance.Iso29500_2008_Strict ayarlanırsa, çıktı dosyası Katı Office Open XML biçiminde kaydedilir.

Aşağıdaki örnek bir sunum oluşturur ve Katı Office Open XML biçiminde kaydeder.

let options = new aspose.slides.PptxOptions();
options.setConformance(aspose.slides.Conformance.Iso29500_2008_Strict);

// Sunum dosyasını temsil eden Presentation sınıfını örnekleyin.
let presentation = new aspose.slides.Presentation();
try {
    // Sunumu Katı Office Open XML biçiminde kaydedin.
    presentation.save("StrictOfficeOpenXml.pptx", aspose.slides.SaveFormat.Pptx, options);
} finally {
    presentation.dispose();
}

Sunumları Office Open XML Biçiminde Zip64 Modunda Kaydetme

Bir Office Open XML dosyası, sıkıştırılmamış herhangi bir dosyanın, sıkıştırılmış herhangi bir dosyanın ve arşivin toplam boyutunun 4 GB (2^32 bayt) sınırına tabi olduğu bir ZIP arşividir ve aynı zamanda arşivde 65 535 (2^16‑1) dosya sınırı vardır. ZIP64 biçim uzantıları bu sınırları 2^64’e yükseltir.

PptxOptions.setZip64Mode yöntemi, bir Office Open XML dosyası kaydedilirken ZIP64 uzantılarının ne zaman kullanılacağını seçmenizi sağlar.

Bu yöntem aşağıdaki modlarla kullanılabilir:

  • IfNecessary yalnızca sunum yukarıdaki sınırlamaları aşarsa ZIP64 uzantılarını kullanır. Bu varsayılan moddur.
  • Never ZIP64 uzantılarını asla kullanmaz.
  • Always ZIP64 uzantılarını her zaman kullanır.

Aşağıdaki kod, ZIP64 uzantıları etkinleştirilmiş bir PPTX olarak sunumu nasıl kaydedeceğinizi gösterir:

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();
}

Küçük Resmi Yenilemeden Sunumları Kaydetme

PptxOptions.setRefreshThumbnail yöntemi, bir sunumu PPTX olarak kaydederken küçük resim oluşturulmasını kontrol eder:

  • true olarak ayarlanırsa, kaydetme sırasında küçük resim yenilenir. Bu varsayılandır.
  • false olarak ayarlanırsa, mevcut küçük resim korunur. Sunumun küçük resmi yoksa hiçbir şey oluşturulmaz.

Aşağıdaki kodda sunum, küçük resmi yenilenmeden PPTX olarak kaydedilir.

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();
}

Kaydetme İlerleme Güncellemelerini Yüzde Olarak Kaydetme

Kaydetme ilerleme raporlaması, SaveOptions ve alt sınıfları üzerindeki setProgressCallback yöntemiyle yapılandırılır. Java’da IProgressCallback arayüzünü uygulayan bir proxy sağlayın; dışa aktarım sırasında geri çağırma periyodik yüzde güncellemeleri alır.

Aşağıdaki kod parçacıkları IProgressCallback kullanımını gösterir.

const ExportProgressHandler = java.newProxy("com.aspose.slides.IProgressCallback", {
    reporting: function(progressValue) {
        // Burada ilerleme yüzde değerini kullanın.
        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();
}

SSS

“Hızlı kaydetme” (artımlı kaydetme) yalnızca değişikliklerin yazılmasını destekliyor mu?

Hayır. Kaydetme her seferinde tam hedef dosyayı oluşturur; artımlı “hızlı kaydetme” desteklenmez.

Aynı Presentation örneğini birden fazla iş parçacığından kaydetmek güvenli mi?

Hayır. Bir Presentation örneği thread‑safe değildir; tek bir iş parçacığından kaydedilmelidir.

Kaydedilirken köprüler ve harici bağlı dosyalar ne olur?

Hyperlinks korunur. Harici bağlı dosyalar (örneğin, göreli yollarla eklenen videolar) otomatik olarak kopyalanmaz—referans verilen yolların erişilebilir olduğundan emin olun.

Belge meta verilerini (Yazar, Başlık, Şirket, Tarih) ayarlayıp kaydedebilir miyim?

Evet. Standart belge özellikleri desteklenir ve kaydetme sırasında dosyaya yazılır.