
Witamy ponownie na stronie głównej interfejsów API formatów plików! W niedawnej przeszłości napisałem kilka postów na blogu, aby omówić różne scenariusze programowej konwersji Worda (DOC/DOCX) do formatu PDF w aplikacjach .NET (przy użyciu C#) i Java. Ponieważ jest to popularna i szeroko stosowana funkcja, pomyślałem, że omówię ją również w C++. Dlatego w tym poście pokażę, jak przekonwertować Word DOC/DOCX na PDF w aplikacjach C++. Ten artykuł dotyczy następujących konwersji plików Word na PDF:
- Prosty Word DOC/DOCX do PDF w C++.
- DOCX do PDF z określonym standardem, tj. PDF 1.5, PDF/A-1a itp.
- Konwersja wybranych stron DOCX do formatu PDF.
- Zastosuj kompresję obrazu / tekstu w konwersji DOCX na PDF.
Biblioteka C++ Word to PDF Converter
Aspose.Words for C++ to zaawansowana biblioteka do tworzenia i manipulowania formatami dokumentów Word w aplikacjach C++ bez konieczności używania MS Word. Możesz zainstalować go za pomocą NuGet lub download kompletnego pakietu zawierającego pliki biblioteki oraz gotowe do uruchomienia przykłady kodu źródłowego.
Konwertuj Word DOC/DOCX na PDF w C++
Konwersja dokumentu programu Word do formatu PDF jest tak prosta, jak ciasto przy użyciu Aspose.Words for C++. Poniżej przedstawiono kroki konwersji pliku DOC/DOCX do formatu PDF.
- Utwórz obiekt klasy Document i zainicjuj go ścieżką dokumentu Worda.
- Wywołaj metodę Document->Save(), aby zapisać dokument jako PDF.
Poniższy przykładowy kod pokazuje, jak przekonwertować DOCX na PDF w C++.
// Załaduj dokument z dysku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Ustaw wyjściową ścieżkę PDF
System::String outputPath = u"DOCX-to-PDF.pdf";
// Konwertuj DOCX na PDF
doc->Save(outputPath);
std::cout << "Converted DOCX to PDF successfuly.";
Wprowadź dokument Word

Przekonwertowany dokument PDF

Konwertuj DOCX na PDF/A lub inne standardy PDF w C++
Format PDF obsługuje różne standardy PDF, w tym PDF/A, PDF/E itp. Może zajść potrzeba przekonwertowania pliku programu Word na określony standard, taki jak PDF/A-1a. W takim przypadku Aspose.Words for C++ pozwala ustawić żądany standard PDF dla konwertowanego pliku PDF. Poniżej przedstawiono kroki, aby ustawić standard PDF w konwersji Word na PDF:
- Utwórz obiekt klasy Document i zainicjuj go ścieżką pliku DOCX.
- Utwórz obiekt klasy PdfSaveOptions i ustaw zgodność PDF za pomocą metody PdfSaveOptions->setCompliance().
- Wywołaj metodę Document->Save(), aby zapisać dokument jako PDF.
Poniższy przykładowy kod pokazuje, jak przekonwertować program Word DOCX na format PDF ze standardem PDF/A-1a.
// Załaduj dokument z dysku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Ustaw wyjściową ścieżkę PDF
System::String outputPath = u"DOCX-to-PDFA.pdf";
// Ustaw opcje PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_Compliance(PdfCompliance::PdfA1a);
// Zapisz dokument w formacie PDF.
doc->Save(outputPath, options);
std::cout << "Converted DOCX to PDF/A successfuly.";
Konwertuj wybrane strony programu Word do formatu PDF w C++
Możesz także konwertować tylko wybrane strony zamiast konwertować cały Word do formatu PDF. Poniżej przedstawiono kroki konwersji tylko żądanych stron programu Word do formatu PDF:
- Załaduj dokument programu Word, używając klasy Document.
- Ustaw indeks strony startowej za pomocą metody PdfSaveOptions->setPageIndex().
- Ustaw liczbę stron, które chcesz przekonwertować, używając metody PdfSaveOptions->setPageCount().
- Zapisz dokument jako PDF za pomocą metody Document->Save().
Poniższy przykładowy kod pokazuje, jak przekonwertować wybrane strony DOCX na PDF w C++.
// Załaduj dokument z dysku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Ustaw wyjściową ścieżkę PDF
System::String outputPath = u"DOCX-to-PDF.pdf";
// Ustaw opcje PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_PageIndex(1);
options->set_PageCount(2);
// Zapisz dokument w formacie PDF.
doc->Save(outputPath, options);
Zastosuj kompresję obrazu / tekstu w DOCX do konwersji PDF
Możesz także skompresować wynikowy dokument PDF, aby zmniejszyć jego rozmiar. Aspose.Words for C++ pozwala zastosować kompresję tekstu i obrazu przy użyciu odpowiednio metod PdfSaveOptions->setTextCompression() i PdfSaveOptions->setImageCompression(). Poniższy przykładowy kod pokazuje, jak zastosować kompresję podczas konwertowania DOCX na PDF w języku C++.
// Załaduj dokument z dysku.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Ustaw wyjściową ścieżkę PDF
System::String outputPath = u"DOCX-to-PDF.pdf";
// Ustaw opcje PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
// Ustaw jakość JPEG
options->set_JpegQuality(100);
// Zapisz dokument w formacie PDF
doc->Save(outputPath, options);
Dowiedz się więcej o Aspose.Words for C++
Możesz dowiedzieć się więcej o Aspose.Words for C++, korzystając z dokumentacji. Jeśli znajdziesz coś niejasnego, daj nam znać za pośrednictwem naszego forum.