Ласкаво просимо знову на домашню сторінку API форматів файлів! Нещодавно я написав кілька публікацій у блозі, щоб висвітлити різні сценарії програмного перетворення Word (DOC/DOCX) у PDF у програмах .NET(з використанням C#) і Java. Оскільки це популярна і широко використовувана функція, я думав охопити її також і для C++. Тому в цій публікації я покажу вам, як конвертувати Word DOC/DOCX у PDF у програмах C++. У цій статті розглядаються такі перетворення Word у PDF:
- Простий Word DOC/DOCX у PDF на C++.
- DOCX у PDF із певним стандартом, наприклад PDF 1.5, PDF/A-1a тощо.
- Перетворення вибраних сторінок DOCX у PDF.
- Застосуйте стиснення зображення/тексту в форматі DOCX для перетворення PDF.
Бібліотека конвертера C++ Word у PDF
Aspose.Words for C++ — це розширена бібліотека для створення та керування форматами документів Word у програмах C++ без використання MS Word. Ви можете встановити його через NuGet або завантажити повний пакет, що містить файли бібліотеки, а також готові до запуску приклади вихідного коду.
Перетворіть Word DOC/DOCX у PDF на C++
Перетворити документ Word у PDF так само просто, як пиріг, за допомогою Aspose.Words for C++. Нижче наведено кроки для перетворення файлу DOC/DOCX у PDF.
- Створіть об’єкт класу Document та ініціалізуйте його шляхом до документа Word.
- Викличте метод Document->Save(), щоб зберегти документ як PDF.
У наведеному нижче прикладі коду показано, як конвертувати DOCX у PDF на C++.
// Завантажте документ з диска.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Встановіть вихідний шлях PDF
System::String outputPath = u"DOCX-to-PDF.pdf";
// Перетворення DOCX на PDF
doc->Save(outputPath);
std::cout << "Converted DOCX to PDF successfuly.";
Введіть документ Word
Конвертований PDF-документ
Перетворіть DOCX у PDF/A або інші стандарти PDF на C++
Формат PDF підтримує різні стандарти PDF, включаючи PDF/A, PDF/E тощо. Може виникнути ситуація, коли вам знадобиться конвертувати файл Word у певний стандарт, наприклад PDF/A-1a. У такому випадку Aspose.Words for C++ дозволяє встановити бажаний стандарт PDF для перетвореного PDF. Нижче наведено кроки для встановлення стандарту PDF у програмі Word для перетворення PDF:
- Створіть об’єкт класу Document та ініціалізуйте його шляхом до файлу DOCX.
- Створіть об’єкт класу PdfSaveOptions і встановіть відповідність PDF за допомогою методу PdfSaveOptions->setCompliance().
- Викличте метод Document->Save(), щоб зберегти документ як PDF.
У наведеному нижче прикладі коду показано, як конвертувати Word DOCX у PDF за стандартом PDF/A-1a.
// Завантажте документ з диска.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Встановіть вихідний шлях PDF
System::String outputPath = u"DOCX-to-PDFA.pdf";
// Налаштувати параметри PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_Compliance(PdfCompliance::PdfA1a);
// Збережіть документ у форматі PDF.
doc->Save(outputPath, options);
std::cout << "Converted DOCX to PDF/A successfuly.";
Перетворіть вибрані сторінки Word у PDF на C++
Ви також можете конвертувати лише вибрані сторінки замість конвертації всього Word у PDF. Нижче наведено кроки для перетворення лише потрібних сторінок Word у PDF.
- Завантажте документ Word за допомогою класу Document.
- Встановіть індекс початкової сторінки за допомогою методу PdfSaveOptions->setPageIndex().
- Встановіть кількість сторінок, які потрібно конвертувати, використовуючи метод PdfSaveOptions->setPageCount().
- Збережіть документ як PDF за допомогою методу Document->Save().
У наведеному нижче прикладі коду показано, як конвертувати вибрані сторінки DOCX у PDF на C++.
// Завантажте документ з диска.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Встановіть вихідний шлях PDF
System::String outputPath = u"DOCX-to-PDF.pdf";
// Налаштувати параметри PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_PageIndex(1);
options->set_PageCount(2);
// Збережіть документ у форматі PDF.
doc->Save(outputPath, options);
Застосуйте стиснення зображення/тексту в DOCX до перетворення PDF
Ви також можете стиснути отриманий PDF-документ, щоб зменшити його розмір. Aspose.Words for C++ дозволяє застосовувати стиснення тексту та зображення за допомогою методів PdfSaveOptions->setTextCompression() і PdfSaveOptions->setImageCompression() відповідно. У наведеному нижче прикладі коду показано, як застосувати стиснення під час перетворення DOCX у PDF на C++.
// Завантажте документ з диска.
System::SharedPtr<Document> doc = System::MakeObject<Document>( u"Word.docx");
// Встановіть вихідний шлях PDF
System::String outputPath = u"DOCX-to-PDF.pdf";
// Налаштувати параметри PDF
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
// Встановити якість JPEG
options->set_JpegQuality(100);
// Збережіть документ у форматі PDF
doc->Save(outputPath, options);
Дізнайтеся більше про Aspose.Words for C++
Ви можете дізнатися більше про Aspose.Words for C++ за допомогою документації. Якщо ви знайдете щось незрозуміле, повідомте нам про це через наш форум.