Převod PPT a PPTX do PDF na Androidu [Zahrnuty pokročilé funkce]

Přehled

Převod prezentací PowerPoint (PPT, PPTX, ODP atd.) do formátu PDF na Androidu nabízí několik výhod, včetně kompatibility napříč různými zařízeními a zachování rozvržení a formátování vaší prezentace. Tento průvodce ukazuje, jak převést prezentace do PDF dokumentů, používat různé možnosti pro řízení kvality obrázků, zahrnout skryté snímky, chránit PDF soubory heslem, detekovat náhrady písem, vybrat konkrétní snímky pro převod a použít standardy shody na výstupní dokumenty.

Převody PowerPoint do PDF

Pomocí Aspose.Slides můžete převést prezentace v následujících formátech do PDF:

  • PPT
  • PPTX
  • ODP

Chcete‑li převést prezentaci do PDF, předáte název souboru jako argument třídě Presentation a poté uložíte prezentaci jako PDF pomocí metody save. Třída Presentation poskytuje metodu save, která se obvykle používá k převodu prezentace do PDF.

Aspose.Slides vám umožňuje převádět:

  • Celé prezentace do PDF
  • Vybrané snímky z prezentace do PDF

Aspose.Slides exportuje prezentace do PDF a zajišťuje, že výsledné PDF úzce odpovídají originálním prezentacím. Prvky a atributy jsou při převodu vykreslovány přesně, včetně:

  • Obrázky
  • Textové pole a tvary
  • Formátování textu
  • Formátování odstavců
  • Hyperlinky
  • Záhlaví a zápatí
  • Odrážky
  • Tabulky

Převod PowerPoint do PDF

Standardní proces převodu PowerPoint do PDF používá výchozí volby. V tomto případě se Aspose.Slides snaží převést zadanou prezentaci do PDF pomocí optimálního nastavení při maximální úrovni kvality.

Následující příklad načte prezentaci a uloží všechny viditelné snímky do PDF pomocí výchozího nastavení exportu.

import com.aspose.slides.*;

Presentation presentation = new Presentation("PowerPoint.ppt");
try {
    presentation.save("PPT-to-PDF.pdf", SaveFormat.Pdf);
} finally {
    presentation.dispose();
}

Převod PowerPoint do PDF s volbami

Aspose.Slides poskytuje vlastní volby — vlastnosti ve třídě PdfOptions — které vám umožňují přizpůsobit výsledné PDF, uzamknout PDF heslem nebo určit, jak má být převod probíhat.

Převod PowerPoint do PDF s vlastními možnostmi

Pomocí vlastních možností převodu můžete definovat preferované nastavení kvality rastrových obrázků, určit, jak mají být zpracovány metat soubory, nastavit úroveň komprese textu, konfigurovat DPI pro obrázky a další.

import com.aspose.slides.*;

PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setJpegQuality((byte)90);
pdfOptions.setSufficientResolution(300);
pdfOptions.setSaveMetafilesAsPng(true);
pdfOptions.setTextCompression(PdfTextCompression.Flate);
pdfOptions.setCompliance(PdfCompliance.Pdf15);

Presentation presentation = new Presentation("PowerPoint.pptx");

try {
    presentation.save("PowerPoint-to-PDF.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Zachovat vložené OLE soubory jako přílohy PDF

Pokud prezentace obsahuje vložený sešit Excel, můžete chtít, aby příjemci PDF mohli přistupovat k datům sešitu i k prohlížení snímků. Zavolejte setIncludeOleData s hodnotou true, aby se vložené OLE soubory zachovaly jako přílohy ve výsledném PDF.

Výchozí hodnota je false: náhledový obrázek nebo ikona OLE objektu je vykreslena na stránce PDF, ale vložený soubor není zahrnut jako příloha. Nastavením možnosti na true se navíc zahrnou data souboru. Náhled zůstává vizuální reprezentací; příloha umožňuje příjemcům otevřít nebo uložit vložený soubor samostatně. OLE objekt se nestane interaktivním listem Excelu na stránce PDF.

V následujícím příkladu se načte prezentace, která již obsahuje vložený sešit Excel, a exportuje se do PDF se sešitem připojeným.

import com.aspose.slides.*;

PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setIncludeOleData(true);

Presentation presentation = new Presentation("presentation.pptx");
try {
    presentation.save("presentation.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Pro ověření výsledku:

  1. Otevřete exportované PDF v prohlížeči, který podporuje souborové přílohy, např. Adobe Acrobat Reader.
  2. Otevřete panel Attachments (Přílohy) prohlížeče a najděte vložený sešit.
  3. Uložte přílohu a otevřete ji v Excelu pro kontrolu dat, nebo ji otevřete přímo, pokud to prohlížeč umožňuje. Náhled na stránce PDF je oddělen od přílohy.

Převod PowerPoint do PDF se skrytými snímky

Pokud prezentace obsahuje skryté snímky, můžete použít metodu setShowHiddenSlides ze třídy PdfOptions k zahrnutí skrytých snímků jako stránek ve výsledném PDF.

Následující příklad exportuje prezentaci do PDF včetně všech skrytých snímků.

import com.aspose.slides.*;

Presentation presentation = new Presentation("PowerPoint.pptx");
try {
    PdfOptions pdfOptions = new PdfOptions();
    pdfOptions.setShowHiddenSlides(true);

    presentation.save("PowerPoint-to-PDF.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Převod PowerPoint do heslem chráněného PDF

Následující příklad exportuje prezentaci do PDF, který vyžaduje heslo password pro otevření. Přístupová oprávnění povolují tisk, včetně tisku ve vysoké kvalitě.

import com.aspose.slides.*;

Presentation presentation = new Presentation("PowerPoint.pptx");
try {
    PdfOptions pdfOptions = new PdfOptions();
    pdfOptions.setPassword("password");
    pdfOptions.setAccessPermissions(PdfAccessPermissions.PrintDocument | PdfAccessPermissions.HighQualityPrint);

    presentation.save("PPTX-to-PDF.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Detekce náhrad písem

Aspose.Slides poskytuje metodu setWarningCallback ve třídě PdfOptions, která umožňuje detekovat náhrady písem během převodu prezentace do PDF.

Následující příklad exportuje prezentaci do PDF a vypisuje varování o náhradách písem do konzole. Varování se vypíše pouze když je během exportu nahrazeno nedostupné písmo.

import com.aspose.slides.*;

class FontSubstitutionHandler implements IWarningCallback {
    public int warning(IWarningInfo warning) {
        if (warning.getWarningType() == WarningType.DataLoss && warning.getDescription().startsWith("Font will be substituted")) {
            System.out.println("Font substitution warning: " + warning.getDescription());
        }
        return ReturnAction.Continue;
    }
}

PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setWarningCallback(new FontSubstitutionHandler());

Presentation presentation = new Presentation("sample.pptx");
try {
    presentation.save("output.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Zpracování písem bez vyhrazeného tučného řezů

Prezentace může použít tučné formátování textu i když má písmo žádný vyhrazený tučný řez. Text se může stále zobrazit tučně pomocí syntetického tučení, což uměle zahušťuje běžné glyfy. Když takový text vypadá příliš těžce nebo jinak neodpovídá zamýšlenému vzhledu v PDF, zkuste zavolat PdfOptions.setRasterizeUnsupportedFontStyles s hodnotou true. Tato volba během exportu PDF vykreslí postižený text jako bitmapu a může zlepšit jeho vzhled u některých písem. Výchozí hodnota je false.

Ukázková prezentace obsahuje dva textové bloky: jeden s běžným textem a druhý s tučným formátováním aplikovaným na stejné písmo, které nemá vyhrazený tučný řez. Následující příklad načte prezentaci, povolí rasterizaci nepodporovaných stylů písma a exportuje ji do PDF:

import com.aspose.slides.PdfOptions;
import com.aspose.slides.Presentation;
import com.aspose.slides.SaveFormat;

PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setRasterizeUnsupportedFontStyles(true);

Presentation presentation = new Presentation("unsupported-bold.pptx");
try {
    presentation.save("rasterized.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Následující náhledy ukazují výstup s vypnutou a zapnutou volbou. V tomto příkladu má tučný text těžší tahy při vypnuté volbě. Po zapnutí jsou tahy lehčí; běžný text zůstává nezměněn. Porovnejte výsledky před výběrem nastavení pro vaši prezentaci.

Volba vypnutá (false, výchozí) Volba zapnutá (true)
PDF s rasterizací nepodporovaného stylu písma vypnutá PDF s rasterizací nepodporovaného stylu písma zapnutá

V tomto příkladu povolení volby převádí pouze tučný text na bitmapu: nelze jej vybrat, kopírovat ani vyhledávat jako text bez OCR a jeho okraje vypadají měkčeji při 800 % přiblížení. Běžný text zůstává vyhledatelný. Při vypnuté volbě zůstávají oba řetězce jako text.

Tato volba rasterizuje text formátovaný jako tučný, pokud nemá písmo vyhrazený tučný řez. Font substitution místo toho vybere jiné písmo, když originál není dostupný.

Převod vybraných snímků z PowerPoint do PDF

Následující příklad exportuje snímky 1 a 3 z prezentace do PDF. Čísla snímků v tomto poli jsou počítána od jedné a vstupní prezentace musí obsahovat alespoň tři snímky.

import com.aspose.slides.*;

Presentation presentation = new Presentation("PowerPoint.pptx");
try {
    int[] slides = { 1, 3 };
    presentation.save("PPTX-to-PDF.pdf", slides, SaveFormat.Pdf);
} finally {
    presentation.dispose();
}

Převod PowerPoint do PDF s vlastní velikostí snímku

Následující příklad zkopíruje první snímek z prezentace do nové prezentace s velikostí snímku 612 × 792 bodů (8,5 × 11 palců). Obsah snímku přizpůsobí velikosti a exportuje jediný snímek do PDF.

import com.aspose.slides.*;

float slideWidth = 612;
float slideHeight = 792;

Presentation presentation = new Presentation("SelectedSlides.pptx");
Presentation resizedPresentation = new Presentation();

try {
    resizedPresentation.getSlideSize().setSize(slideWidth, slideHeight, SlideSizeScaleType.EnsureFit);

    ISlide slide = presentation.getSlides().get_Item(0);
    resizedPresentation.getSlides().insertClone(0, slide);

    // Odstranit prázdný snímek, se kterým byla nová prezentace vytvořena.
    resizedPresentation.getSlides().removeAt(1);

    resizedPresentation.save("PDF_with_custom_slide_size.pdf", SaveFormat.Pdf);
} finally {
    resizedPresentation.dispose();
    presentation.dispose();
}

Převod PowerPoint do PDF v zobrazení poznámek ke snímku

Následující příklad exportuje prezentaci do PDF a umístí poznámky přednášejícího každého snímku pod snímek. Použijte prezentaci obsahující poznámky přednášejícího, abyste viděli výsledek.

import com.aspose.slides.*;

Presentation presentation = new Presentation("SelectedSlides.pptx");
try {
    NotesCommentsLayoutingOptions notesOptions = new NotesCommentsLayoutingOptions();
    notesOptions.setNotesPosition(NotesPositions.BottomFull);

    PdfOptions pdfOptions = new PdfOptions();
    pdfOptions.setSlidesLayoutOptions(notesOptions);

    presentation.save("PDF_with_notes.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Standardy přístupnosti a souladu pro PDF

Aspose.Slides vám umožňuje použít postup převodu, který splňuje Web Content Accessibility Guidelines (WCAG). Můžete exportovat dokument PowerPoint do PDF pomocí některého z těchto standardů souladu: PDF/A1a, PDF/A1b a PDF/UA.

Tento kód demonstruje proces převodu PowerPoint do PDF, který vytváří několik PDF podle různých standardů souladu:

import com.aspose.slides.*;

Presentation presentation = new Presentation("pres.pptx");
try {
    PdfOptions pdfOptions = new PdfOptions();

    pdfOptions.setCompliance(PdfCompliance.PdfA1a);
    presentation.save("pres-a1a-compliance.pdf", SaveFormat.Pdf, pdfOptions);

    pdfOptions.setCompliance(PdfCompliance.PdfA1b);
    presentation.save("pres-a1b-compliance.pdf", SaveFormat.Pdf, pdfOptions);

    pdfOptions.setCompliance(PdfCompliance.PdfUa);
    presentation.save("pres-ua-compliance.pdf", SaveFormat.Pdf, pdfOptions);
} finally {
    presentation.dispose();
}

Poznámka: Při exportu do PDF/UA Aspose.Slides zachází s komplexní grafikou, jako jsou SmartArt, grafy a vzorce, jako s jedním objektem. Jednotlivé elementy cesty nejsou zachovány jako samostatný obsah a mohou být označeny jako artefakty; alternativní text je poskytován pouze pro celý objekt.

Často kladené otázky

Mohu hromadně převést více souborů PowerPoint do PDF?
Ano, Aspose.Slides podporuje hromadný převod více souborů PPT nebo PPTX do PDF. Můžete iterovat přes své soubory a aplikovat proces převodu programově.

Je možné chránit převedené PDF heslem?
Ano. Použijte třídu PdfOptions k nastavení hesla a definování přístupových oprávnění během procesu převodu.

Jak zahrnout skryté snímky do PDF?
Zavolejte setShowHiddenSlides s hodnotou true ve třídě PdfOptions a zahrňte skryté snímky do výsledného PDF.

Dokáže Aspose.Slides zachovat vysokou kvalitu obrázků v PDF?
Ano, můžete řídit kvalitu obrázků pomocí metod jako setJpegQuality a setSufficientResolution ve třídě PdfOptions, abyste zajistili vysoce kvalitní obrázky ve vašem PDF.

Podporuje Aspose.Slides standardy souladu PDF/A?
Ano, Aspose.Slides vám umožňuje exportovat PDF, která splňují různé standardy, včetně PDF/A1a, PDF/A1b a PDF/UA, čímž zajistíte, že vaše dokumenty splňují požadavky na přístupnost a archivaci.

Další zdroje