C# Word به PDF - DOC به PDF

تبدیل Word به PDF این روزها یک روش رایج است و قبل از اشتراک گذاری اسناد ترجیح داده می شود. MS Word یک ویژگی داخلی برای ذخیره اسناد Word به عنوان PDF فراهم می کند، با این حال، ممکن است موردی وجود داشته باشد که بخواهید سند Word را به صورت برنامه نویسی مانند برنامه های وب خود به PDF تبدیل کنید یا ممکن است نیاز به تبدیل دسته ای Word به PDF بدون نصب MS Office داشته باشید. بنابراین در این مقاله با نحوه تبدیل Word به PDF با استفاده از سی شارپ در فریم ورک NET یا NET Core آشنا می شوید.

C# تبدیل Word به PDF - سناریوها

در این مقاله یاد خواهید گرفت که چگونه:

C#.NET API برای تبدیل Word به PDF

Aspose.Words for .NET یک API قدرتمند برای ایجاد و دستکاری فرمت های محبوب اسناد Word است. API همچنین یک راه آسان برای تبدیل اسناد Word به PDF با درجه بالایی از وفاداری را فراهم می کند. بنابراین، برای تبدیل Word به PDF در سی شارپ، ابتدا یک مرجع به Aspose.Words برای .NET DLL در پروژه اضافه می کنیم یا با استفاده از یکی از روش های زیر آن را نصب می کنیم.

با استفاده از NuGet Package Manager

  • پروژه را در ویژوال استودیو ایجاد/باز کنید.
  • به NuGet Package Manager بروید و Aspose.Words را جستجو کنید.
  • Aspose.Words را برای دات نت نصب کنید.
تبدیل Word به PDF C#.NET

با استفاده از Package Manager Console

PM> Install-Package Aspose.Words

تبدیل ساده Word به PDF در سی شارپ

برای تبدیل یک سند Word به PDF، باید روش Document.Save() را فراخوانی کنید و نام فایل خروجی را با پسوند “.pdf” مشخص کنید. نمونه کد زیر نحوه تبدیل سند Word به PDF در سی شارپ را نشان می دهد.

// سند را از دیسک بارگیری کنید.
Document doc = new Document("word.doc");
// ذخیره به صورت PDF
doc.Save("output.pdf");

سند ورد

C# تبدیل Word به PDF

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

Word به PDF بصورت برنامه نویسی در سی شارپ

تبدیل صفحات منتخب Word به PDF در سی شارپ

همچنین می توانید با تعیین محدوده صفحاتی که می خواهید در سند پی دی اف حاصل دریافت کنید، تبدیل Word به PDF را سفارشی کنید. می‌توانید N صفحه اول را تبدیل کنید یا محدوده‌ای از صفحات را تعریف کنید که نمایه صفحه شروع را مشخص می‌کند. نمونه کد زیر نحوه تبدیل 3 صفحه از صفحه دوم Word به PDF در سی شارپ را نشان می دهد.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// 3 صفحه را با شروع از فهرست 1 تبدیل کنید که 0 شاخص صفحه اول است 
options.PageIndex = 1;
options.PageCount = 3;
// Word را به صورت PDF ذخیره کنید
doc.Save("output.pdf", options);

C# تبدیل Word به PDF با یک استاندارد خاص

اسناد PDF ممکن است با استانداردهای PDF مختلف مانند PDF 1.7، PDF 1.5، PDF/A-1a، و غیره مطابقت داشته باشند. مطابق با این، Aspose.Words for .NET اجازه می دهد تا سطح انطباق PDF را در تبدیل Word به PDF مشخص کنید. می‌توانید سطح انطباق را با استفاده از فهرست PdfCompliance مشخص کنید. نمونه کد زیر نحوه تنظیم سطح انطباق در تبدیل Word به PDF در سی شارپ را نشان می دهد.

Document doc = new Document("word.docx");
// سازگاری PDFSaveOption را روی PDF17 تنظیم کنید
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// تبدیل Word به PDF
doc.Save("output.pdf", options);

C# تبدیل Word به PDF با فشرده سازی متن/تصویر

فرمت PDF از فشرده سازی متن و تصویر برای کاهش اندازه سند پشتیبانی می کند. از آنجایی که اندازه یک سند PDF می‌تواند حجیم باشد، فشرده‌سازی محتوای آن آپلود، اشتراک‌گذاری، چاپ و غیره را آسان می‌کند. فشرده‌سازی متن و تصویر را می‌توان در تبدیل Word به PDF با استفاده از Aspose.Words برای دات‌نت اعمال کرد.

گزینه های فشرده سازی متن

گزینه های فشرده سازی متن زیر در فهرست PdfTextCompression موجود است.

  • هیچ: ذخیره PDF بدون فشرده سازی متن.
  • Flate: ذخیره PDF با فشرده سازی مسطح (ZIP).

فشرده سازی تصویر

گزینه های فشرده سازی تصویر زیر در فهرست PdfImageCompression موجود است.

  • خودکار: API به طور خودکار مناسب ترین فشرده سازی را برای هر تصویر در سند انتخاب می کند.
  • Jpeg: فشرده سازی به تصاویر JPEG (از شفافیت پشتیبانی نمی کند).

نمونه کد زیر نحوه تبدیل Word به PDF با فشرده سازی متن و تصویر در سی شارپ را نشان می دهد.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// فشرده سازی متن و تصویر
options.TextCompression = PdfTextCompression.Flate;
options.ImageCompression = PdfImageCompression.Auto;
// Word را به صورت PDF ذخیره کنید
doc.Save("output.pdf", options);

C# تبدیل Word به PDF با امضای دیجیتال

همچنین می توانید در حین انجام تبدیل Word به PDF، یک امضای دیجیتالی را روی PDF خروجی اعمال کنید. کلاس CertificateHolder به شما امکان می دهد گواهی دیجیتال و رمز عبور را مشخص کنید. کلاس PdfDigitalSignatureDetails امکان ارائه جزئیات امضای دیجیتال مانند دارنده گواهی، دلیل، مکان و تاریخ/زمان را فراهم می کند. نمونه کد زیر نحوه تبدیل Word به PDF با امضای دیجیتال در سی شارپ را نشان می دهد.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// جزئیات امضای دیجیتال
CertificateHolder certHolder = CertificateHolder.Create("signature.pfx", "12345");
options.DigitalSignatureDetails = new PdfDigitalSignatureDetails(certHolder, "reason", "location", DateTime.Now);
// Word را به صورت PDF ذخیره کنید
doc.Save("output.pdf", options);

تبدیل Word به PDF با کیفیت مطلوب JPEG در سی شارپ

همچنین می‌توانید با استفاده از ویژگی PdfSaveOptions.JpegQuality کیفیت JPEG مورد نظری را که می‌خواهید در سند PDF تبدیل شده دریافت کنید، مشخص کنید. مقدار JpegQuality ممکن است از 0 تا 100 متفاوت باشد که در آن 0 به معنای بدترین کیفیت اما حداکثر فشرده سازی و 100 به معنای بهترین کیفیت اما حداقل فشرده سازی است.

نمونه کد زیر نحوه تنظیم کیفیت JPEG را هنگام تبدیل Word به PDF در سی شارپ نشان می دهد.

Document doc = new Document("word.docx");
// کیفیت Jpeg را تنظیم کنید
PdfSaveOptions options = new PdfSaveOptions();
options.JpegQuality = 100;
// تبدیل Word به PDF
doc.Save("output.pdf", options);

نتیجه

در این مقاله نحوه تبدیل اسناد Word به PDF در سی شارپ با گزینه های مختلف را یاد گرفتید. برای مشاهده مجموعه کاملی از ویژگی های ارائه شده توسط API، از documentation Aspose.Words برای دات نت دیدن کنید. برای هر گونه سؤال یا سؤال، از طریق [فروم 11 ما با ما تماس بگیرید.

مقالات مرتبط)