تبدیل Word DOCX به PDF

دوباره به صفحه اصلی 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 اعمال کنید.

کتابخانه تبدیل Word به PDF C++

Aspose.Words for C++ یک کتابخانه پیشرفته برای ایجاد و دستکاری فرمت های سند Word در برنامه های C++ بدون نیاز به MS Word است. می‌توانید آن را از طریق NuGet یا دانلود بسته کامل حاوی فایل‌های کتابخانه و همچنین نمونه‌های کد منبع آماده را نصب کنید.

تبدیل Word DOC/DOCX به PDF در C++

با استفاده از Aspose.Words برای C++، تبدیل یک سند Word به PDF به سادگی پایی است. در زیر مراحل تبدیل فایل DOC/DOCX به PDF آمده است.

  • یک شی از کلاس Document ایجاد کنید و آن را با مسیر سند Word مقداردهی کنید.
  • برای ذخیره سند به صورت 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";
// تبدیل DOCX به PDF
doc->Save(outputPath);
std::cout << "Converted DOCX to PDF successfuly.";

ورودی سند Word

DOCX به PDF C++

سند PDF تبدیل شده

DOC به PDF در C++

DOCX را به PDF/A یا سایر استانداردهای PDF در C++ تبدیل کنید

فرمت PDF از استانداردهای PDF مختلف از جمله PDF/A، PDF/E و غیره پشتیبانی می کند. ممکن است در مواردی که نیاز به تبدیل فایل Word به استاندارد خاصی مانند PDF/A-1a داشته باشید، وجود داشته باشد. در چنین حالتی، Aspose.Words برای C++ به شما امکان می دهد استاندارد PDF مورد نظر را برای PDF تبدیل شده تنظیم کنید. مراحل زیر برای تنظیم استاندارد PDF در تبدیل Word به PDF آمده است:

  • یک شی از کلاس Document ایجاد کنید و آن را با مسیر فایل DOCX مقداردهی کنید.
  • یک شی از کلاس PdfSaveOptions ایجاد کنید و انطباق PDF را با استفاده از روش PdfSaveOptions->setCompliance() تنظیم کنید.
  • برای ذخیره سند به صورت PDF، روش Document->Save() را فراخوانی کنید.

نمونه کد زیر نحوه تبدیل 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() تنظیم کنید.
  • با استفاده از روش 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";
// گزینه های PDF را تنظیم کنید
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>();
options->set_PageIndex(1);
options->set_PageCount(2);
// سند را در قالب PDF ذخیره کنید.
doc->Save(outputPath, options);

فشرده سازی تصویر/متن را در تبدیل DOCX به PDF اعمال کنید

همچنین می‌توانید سند پی‌دی‌اف حاصل را به منظور کاهش اندازه آن فشرده کنید. Aspose.Words برای 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 برای C++ بیشتر بدانید

می‌توانید با استفاده از مستندات درباره Aspose.Words برای C++ بیشتر کاوش کنید. در صورتی که ممکن است چیزی گیج کننده پیدا کنید، از طریق [فروم 17 ما به ما اطلاع دهید.

همچنین ببینید