Převést Word DOCX do PDF

Vítejte znovu na domovské stránce rozhraní API pro formát souborů! V nedávné minulosti jsem napsal několik blogových příspěvků, které pokrývají různé scénáře převodu Wordu (DOC/DOCX) do PDF programově v aplikacích .NET(pomocí C#) a Java. Vzhledem k tomu, že se jedná o populární a široce používanou funkci, napadlo mě pokrýt ji i pro C++. Proto vám v tomto příspěvku ukážu, jak převést Word DOC/DOCX do PDF v aplikacích C++. Tento článek se zabývá následujícími převody Word do PDF:

  • Jednoduchý Word DOC/DOCX do PDF v C++.
  • DOCX do PDF s konkrétním standardem, tj. PDF 1.5, PDF/A-1a atd.
  • Převod vybraných stránek DOCX do PDF.
  • Použijte kompresi obrázků/textu v převodu DOCX na PDF.

Knihovna C++ Word to PDF Converter

Aspose.Words for C++ je pokročilá knihovna pro vytváření a manipulaci s formáty dokumentů aplikace Word v aplikacích C++ bez potřeby MS Word. Můžete jej nainstalovat buď pomocí NuGet, nebo stáhnout kompletní balíček obsahující soubory knihovny a také příklady zdrojového kódu připravené ke spuštění.

Převeďte Word DOC/DOCX do PDF v C++

Převod dokumentu aplikace Word do formátu PDF je pomocí Aspose.Words for C++ jednoduchý. Níže jsou uvedeny kroky pro převod souboru DOC/DOCX do formátu PDF.

  • Vytvořte objekt třídy Document a inicializujte jej s cestou k dokumentu aplikace Word.
  • Voláním metody Document->Save() uložte dokument jako PDF.

Následující ukázka kódu ukazuje, jak převést DOCX do PDF v C++.

// Načtěte dokument z disku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Nastavte výstupní cestu PDF
System::String outputPath =  u"DOCX-to-PDF.pdf";
// Převést DOCX do PDF
doc->Save(outputPath);
std::cout << "Converted DOCX to PDF successfuly.";

Zadejte dokument aplikace Word

DOCX do PDF C++

Převedený dokument PDF

DOC do PDF v C++

Převeďte DOCX na PDF/A nebo jiné standardy PDF v C++

Formát PDF podporuje různé standardy PDF včetně PDF/A, PDF/E atd. Může nastat případ, kdy potřebujete převést soubor aplikace Word do určitého standardu, jako je PDF/A-1a. V takovém případě vám Aspose.Words for C++ umožňuje nastavit požadovaný standard PDF pro převedené PDF. Níže jsou uvedeny kroky k nastavení standardu PDF ve Wordu na převod PDF:

Následující ukázka kódu ukazuje, jak převést Word DOCX do PDF se standardem PDF/A-1a.

// Načtěte dokument z disku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Nastavte výstupní cestu PDF
System::String outputPath =  u"DOCX-to-PDFA.pdf";
// Nastavte možnosti PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_Compliance(PdfCompliance::PdfA1a);
// Uložte dokument ve formátu PDF.
doc->Save(outputPath, options);
std::cout << "Converted DOCX to PDF/A successfuly.";

Převeďte vybrané stránky Wordu do PDF v C++

Můžete také převést pouze vybrané stránky namísto převodu celého Wordu do PDF. Následují kroky k převodu pouze požadovaných stránek Wordu do PDF:

  • Načtěte dokument aplikace Word pomocí třídy Document.
  • Nastavte index úvodní stránky pomocí metody PdfSaveOptions->setPageIndex().
  • Pomocí metody PdfSaveOptions->setPageCount() nastavte počet stránek, které chcete převést.
  • Uložte dokument jako PDF pomocí metody Document->Save().

Následující ukázka kódu ukazuje, jak převést vybrané stránky DOCX do PDF v C++.

// Načtěte dokument z disku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Nastavte výstupní cestu PDF
System::String outputPath =  u"DOCX-to-PDF.pdf";
// Nastavte možnosti PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_PageIndex(1);
options->set_PageCount(2);
// Uložte dokument ve formátu PDF.
doc->Save(outputPath, options);

Použijte kompresi obrázků/textu v DOCX na převod PDF

Výsledný dokument PDF můžete také zkomprimovat a zmenšit tak jeho velikost. Aspose.Words for C++ vám umožňuje použít kompresi textu a obrázků pomocí metod PdfSaveOptions->setTextCompression() a PdfSaveOptions->setImageCompression(). Následující ukázka kódu ukazuje, jak použít kompresi při převodu DOCX do PDF v C++.

// Načtěte dokument z disku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Nastavte výstupní cestu PDF
System::String outputPath =  u"DOCX-to-PDF.pdf";
// Nastavte možnosti PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
// Nastavte kvalitu JPEG
options->set_JpegQuality(100);
// Uložte dokument ve formátu PDF
doc->Save(outputPath, options);

Další informace o Aspose.Words for C++

Více o Aspose.Words for C++ můžete prozkoumat pomocí dokumentace. V případě, že najdete něco matoucího, dejte nám vědět prostřednictvím našeho fóra.

Viz také