Android'de Sunumları Kaydet

Genel Bakış

Open Presentations on Android bir sunumu açmak için Presentation sınıfının nasıl kullanılacağını açıklamaktadır. Bu makale, bir sunumu nasıl oluşturup kaydedeceğinizi açıklar. Presentation sınıfı bir sunumun içeriğini barındırır. Sıfırdan bir sunum oluşturuyor ya da var olanı değiştiriyor olun, işiniz bittiğinde onu kaydetmek isteyeceksiniz. Aspose.Slides for Android ile bir dosyaya veya akışa kaydedebilirsiniz. Bu makale, bir sunumu kaydetmenin farklı yollarını açıklamaktadır.

Sunumları Dosyalara Kaydet

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

import com.aspose.slides.*;

// Sunum dosyasını temsil eden Presentation sınıfını oluştur.
Presentation presentation = new Presentation();
try {
    // Burada bazı işlemler yapın...

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

Sunumları Akışlara Kaydet

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

import com.aspose.slides.*;
import java.io.FileOutputStream;
import java.io.OutputStream;

// Sunum dosyasını temsil eden Presentation sınıfını oluştur.
Presentation presentation = new Presentation();
try {
    OutputStream fileStream = new FileOutputStream("Output.pptx");
    try {
        // Sunumu akışa kaydedin.
        presentation.save(fileStream, SaveFormat.Pptx);
    } finally {
        fileStream.close();
    }
} finally {
    presentation.dispose();
}

Önceden Tanımlı Görünüm Türü ile Sunumları Kaydet

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 metodunu ViewType enumerasyonundaki bir değerle kullanın.

import com.aspose.slides.*;

Presentation presentation = new Presentation();
try {
    presentation.getViewProperties().setLastView(ViewType.SlideMasterView);
    presentation.save("SlideMasterView.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Sunumları Katı Office Open XML Biçiminde Kaydet

Aspose.Slides, bir sunumu Katı Office Open XML biçiminde kaydetmenizi sağlar. Kaydederken PptxOptions sınıfını kullanın ve onun conformance özelliğini ayarlayın. Conformance.Iso29500_2008_Strict değerini ayarlarsanız, çıktı dosyası Katı Office Open XML biçiminde kaydedilir.

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

import com.aspose.slides.*;

PptxOptions options = new PptxOptions();
options.setConformance(Conformance.Iso29500_2008_Strict);

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

Sunumları Office Open XML Biçiminde Zip64 Modunda Kaydet

Bir Office Open XML dosyası, herhangi bir dosyanın sıkıştırılmamış boyutu, sıkıştırılmış boyutu ve arşivin toplam boyutu için 4 GB (2^32 bayt) sınırları koyan bir ZIP arşividir ve ayrıca arşivi 65 535 (2^16‑1) dosyayla sınırlar. ZIP64 biçim uzantıları bu sınırları 2^64’e yükseltir.

IPptxOptions.setZip64Mode metodu, bir Office Open XML dosyası kaydedilirken ZIP64 biçim uzantılarını ne zaman kullanacağınızı 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 biçim uzantılarını kullanır. Bu varsayılan moddur.
  • Never ZIP64 biçim uzantılarını asla kullanmaz.
  • Always her zaman ZIP64 biçim uzantılarını kullanır.

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

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

Sunumları Office Open XML Biçiminde Sıkıştırma Seviyeleriyle Kaydet

Büyük sunumlarla çalışırken, dosya boyutu ve işleme süresi dengesini ayarlamak için sıkıştırma seviyesini ayarlayabilirsiniz. Gereksinimlerinize bağlı olarak, daha hızlı işleme ya da daha küçük çıktı dosyalarını tercih edebilirsiniz.

Aspose.Slides, Office Open XML biçiminde bir sunumu kaydederken kullanılan sıkıştırma seviyesini belirlemenizi sağlayan IPptxOptions.setCompressionLevel metodunu sunar.

Aşağıdaki sıkıştırma seviyeleri kullanılabilir:

  • None: Sıkıştırma uygulanmaz. Dosyalar olduğu gibi depolanır.
  • Level1: En düşük sıkıştırma oranı ile en hızlı sıkıştırma.
  • Level2: Level1‘e göre biraz daha iyi sıkıştırma oranı ile daha hızlı sıkıştırma.
  • Level3: Level2‘den daha iyi sıkıştırma sağlar ve işlem süresi üzerinde orta seviyede bir etki yapar.
  • Level4: Level3‘ten daha iyi sıkıştırma sağlar.
  • Level5: Level4‘ün üzerinde geliştirilmiş sıkıştırma sunar ancak ek işlem süresi gerektirir.
  • Level6: İşleme hızı ve dosya boyutu arasında iyi bir denge sunan standart sıkıştırma. Bu varsayılan sıkıştırma seviyesidir.
  • Level7: Level6‘dan daha iyi sıkıştırma sağlar ancak daha yavaş işlem.
  • Level8: Level7‘den daha iyi sıkıştırma sağlar.
  • Level9: Azami sıkıştırma. En uzun işlem süresi karşılığında en küçük dosya boyutunu üretir.

Aşağıdaki örnek, bir sunumu sıkıştırma olmadan PPTX dosyası olarak nasıl kaydedeceğinizi gösterir:

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

Bu örnek, bir sunumu azami sıkıştırma ile PPTX dosyası olarak nasıl kaydedeceğinizi gösterir:

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

Küçük Resmi Yenilemeden Sunumları Kaydet

PptxOptions.setRefreshThumbnail metodu, 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ç oluşturulmaz.

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

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

Kaydetme İlerleme Güncellemelerini Yüzde Olarak Al

IProgressCallback arayüzü, ISaveOptions arayüzü ve soyut SaveOptions sınıfı tarafından sunulan setProgressCallback metodu aracılığıyla kullanılır. setProgressCallback ile bir IProgressCallback uygulaması atayarak kaydetme ilerlemesi güncellemelerini yüzde olarak alabilirsiniz.

Aşağıdaki kod snippet’leri, IProgressCallback kullanımını gösterir:

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) {
        // Burada ilerleme yüzde değerini kullan.
        int progress = (int) progressValue;

        System.out.println(progress + "% of the file has been converted.");
    }
}

SSS

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

Hayır. Kaydetme her seferinde tam hedef dosyasını oluşturur; artımlı “hızlı kaydet” 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 kaydedin.

Kaydetme sırasında köprüler ve harici bağlı dosyalar ne olur?

Hyperlinks korunur. Harici bağlı dosyalar (ör. göreceli yollarla 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 document properties desteklenir ve kaydetme sırasında dosyaya yazılır.