ممکن است هنگام جاسازی اسناد PDF در یک برنامه وب، اغلب نیاز به ایجاد تصاویر کوچک داشته باشید. همچنین، هنگام ایجاد یک نمایشگر PDF، تصاویر کوچک صفحات مورد نیاز است. برای چنین سناریوهایی، این مقاله نحوه تولید ریز عکسهای یک فایل PDF را به صورت برنامه نویسی در C#.NET پوشش می دهد. ما به صراحت نحوه ایجاد یک تصویر کوچک از یک صفحه خاص یا تمام صفحات یک فایل PDF را توضیح خواهیم داد.
- NET API برای تولید ریز عکسها از PDF
- یک تصویر کوچک از یک فایل PDF ایجاد کنید
- ایجاد تصاویر کوچک از تمام صفحات در PDF
C# .NET API برای تولید تصاویر کوچک PDF
Aspose.PDF for .NET یک کتابخانه کلاس C# است که به شما امکان می دهد اسناد PDF را در برنامه های NET ایجاد و دستکاری کنید. با استفاده از API، می توانید عملیات اتوماسیون اولیه و پیشرفته PDF را به راحتی انجام دهید. ما از این API برای تولید تصاویر کوچک یک فایل PDF استفاده خواهیم کرد. API را می توان به صورت DLL دانلود کرد یا از طریق NuGet نصب کرد.
PM> Install-Package Aspose.Pdf
یک تصویر کوچک از یک فایل PDF در C#.NET ایجاد کنید
معمولاً باید یک تصویر کوچک برای یک سند PDF ایجاد کنید. صفحه برای تصویر کوچک می تواند صفحه جلد یا هر صفحه دیگری به انتخاب شما باشد. مراحل زیر برای ایجاد یک تصویر کوچک از صفحه مورد نظر یک PDF در سی شارپ است.
- فایل PDF را با استفاده از کلاس Document بارگیری کنید.
- مرجع صفحه مورد نظر را از مجموعه Document.Pages دریافت کنید.
- یک FileStream جدید برای فایل تصویر ایجاد کنید.
- یک نمونه از کلاس Resolution برای تنظیم وضوح تصویر کوچک ایجاد کنید.
- JpegDevice را نمونه برداری کنید و ارتفاع، عرض، وضوح و کیفیت تصویر را تنظیم کنید.
- تصویر کوچک را با استفاده از روش JpegDevice.Process(Page, FileStream) ایجاد کنید.
- جریان فایل را ببندید.
نمونه کد زیر نحوه تولید یک تصویر کوچک از یک فایل PDF در سی شارپ را نشان می دهد.
// سند را باز کنید
Document pdfDocument = new Document("file.pdf");
int pageIndex = 0;
// صفحه فهرست مورد نظر را از مجموعه دریافت کنید
var page = pdfDocument.Pages[pageIndex];
// ایجاد جریان برای فایل تصویری
using (FileStream imageStream = new FileStream("Thumbanils_" + page.Number + ".jpg", FileMode.Create))
{
// شی Resolution را ایجاد کنید
Resolution resolution = new Resolution(300);
// یک نمونه از JpegDevice ایجاد کنید و ارتفاع، عرض، وضوح و کیفیت تصویر را تنظیم کنید
JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);
// یک صفحه خاص را تبدیل کنید و تصویر را در جریان ذخیره کنید
jpegDevice.Process(page, imageStream);
// بستن جریان
imageStream.Close();
}
ایجاد تصاویر بندانگشتی از تمام صفحات در PDF در سی شارپ
مراحل زیر برای ایجاد تصاویر کوچک برای تمام صفحات PDF در سی شارپ است.
- فایل PDF را با استفاده از کلاس Document بارگیری کنید.
- با استفاده از مجموعه Document.Pages تمام صفحات را در PDF حلقه بزنید.
- در هر تکرار، عملیات زیر را انجام دهید:
- یک FileStream جدید برای فایل تصویر ایجاد کنید.
- یک نمونه از کلاس Resolution برای تنظیم وضوح تصویر کوچک ایجاد کنید.
- JpegDevice را نمونه برداری کنید و ارتفاع، عرض، وضوح و کیفیت تصویر را تنظیم کنید.
- تصویر کوچک را با استفاده از روش JpegDevice.Process(Page, FileStream) ایجاد کنید.
- جریان فایل را ببندید.
نمونه کد زیر نحوه تولید ریز عکسها برای تمام صفحات در PDF را نشان می دهد.
// سند را باز کنید
Document pdfDocument = new Document("file.pdf");
// از طریق صفحات حلقه بزنید
for (int pageCount = 1; pageCount <= pdfDocument.Pages.Count; pageCount++)
{
// برای هر تصویر جریان ایجاد کنید
using (FileStream imageStream = new FileStream("Thumbanils_" + pageCount + ".jpg", FileMode.Create))
{
// شی Resolution را ایجاد کنید
Resolution resolution = new Resolution(300);
// یک نمونه از JpegDevice ایجاد کنید و ارتفاع، عرض، وضوح و کیفیت تصویر را تنظیم کنید
JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);
// یک صفحه خاص را تبدیل کنید و تصویر را در جریان ذخیره کنید
jpegDevice.Process(pdfDocument.Pages[pageCount], imageStream);
// بستن جریان
imageStream.Close();
}
}
مجوز رایگان دریافت کنید
برای استفاده از Aspose.PDF برای دات نت بدون محدودیت ارزیابی، می توانید یک مجوز موقت رایگان دریافت کنید.
نتیجه
در این مقاله نحوه تولید ریز عکسها برای فایل های PDF در سی شارپ را یاد گرفتید. شما نحوه ایجاد یک تصویر کوچک از یک صفحه خاص یا تمام صفحات یک فایل PDF را دیده اید. علاوه بر این، میتوانید با استفاده از مستندات درباره C# PDF API بیشتر کاوش کنید. در صورت داشتن هرگونه سوال یا سوال، می توانید از طریق [تالار گفتمان19 ما با ما تماس بگیرید.