یک ارائه PowerPoint می‌تواند بیش از آنچه اسلایدهای آن نمایش می‌دهند، ذخیره کند. مسترها و طرح‌های استفاده‌نشده، فونت‌های جاسازی‌شده کامل، و بخش‌های مخفی تصاویر برش‌خورده همگی فضا می‌گیرند.

بیایید یک ارائه نمونه را گام به گام تمیز کنیم، سپس همان کار را با Compress.CompressPresentation انجام دهیم که در Aspose.Slides for .NET 26.11 معرفی شده است.

معرفی ارائه نمونه

نسخهٔ سه اسلایدی طبیعت ما با حجم 10.81 MB آغاز می‌شود. این نسخه با استفاده از:

  • سه مستر، اگرچه فقط یکی استفاده می‌شود.
  • 32 طرح‌بندی، اگرچه فقط یکی استفاده می‌شود.
  • فونت کامل Noto Sans، شامل بسیاری از کاراکترهایی که در اسلایدها وجود ندارند.
  • سه تصویر PNG با ابعاد 1536 × 1024، که هر کدام به‌صورت برش داده شده‌اند تا بخش مرکزی 768 × 512 پیکسل را نشان دهند.

تصاویر کامل در داخل فایل PPTX اصلی باقی می‌مانند. نواحی قابل مشاهده آن‌ها با 96 DPI نمایش داده می‌شوند که در حال حاضر زیر حد 150 DPI ابزار کمکی است.

دانلود ارائهٔ اصلی برای ادامه. نمونه از تصاویر افقی تولید شدهٔ اصلی و یک قلم با مجوز باز استفاده می‌کند.

فشرده‌سازی ارائه به‌صورت گام‌به‌گام

از Aspose.Slides for .NET 26.11 یا بالاتر استفاده کنید و قبل از اجرای مثال‌ها مجوز خود را بارگذاری کنید. پروژهٔ قابل‌دانلود C# از بستهٔ .NET چندپلتفرمی استفاده می‌کند و مسیر مجوز را از ASPOSE_TOTAL_LICENSE می‌خواند.

downloadable C# project

هر عملیات منبع متفاوتی از داده‌های غیرضروری را مدیریت می‌کند:

  1. حذف طرح‌بندی‌های استفاده‌نشده. طرح‌بندی‌هایی که هیچ اسلاید ارائه‌ای به آن‌ها ارجاع نمی‌دهد حذف کنید. ابتدا این کار را انجام دهید تا مسترهای آن‌ها نیز استفاده‌نشده شوند.
  2. حذف مسترهای استفاده‌نشده. مسترهایی که دیگر نیازی به آن‌ها نیست حذف کنید.
  3. تقلیل فونت‌های جاسازی‌شده. داده‌های فونتی که برای کاراکترهای استفاده‌شده در ارائه لازم است نگه دارید. متن باقی‌مانده قابل ویرایش می‌ماند.
  4. فشرده‌سازی تصاویر. محدودیت 150 DPI را اعمال کنید و نواحی برش‌خورده تصویر را به‌صورت دائم حذف کنید. در اینجا، پیکسل‌های قابل مشاهده تصویر نیازی به کاهش نمونه‌برداری ندارند.
using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;

using var presentation = new Presentation("compression-demo-original.pptx");

// 1. Remove layouts that no slide uses.
Compress.RemoveUnusedLayoutSlides(presentation);
// 2. Remove masters that are now unused.
Compress.RemoveUnusedMasterSlides(presentation);
// 3. Keep the characters used from embedded fonts.
Compress.CompressEmbeddedFonts(presentation);
// 4. Compress pictures and remove cropped areas.
Compress.CompressImages(presentation, PicturesCompression.Dpi150);

presentation.Save("compressed-step-by-step.pptx", SaveFormat.Pptx);

CompressImages همچنین به‌تنهایی کار می‌کند وقتی می‌خواهید فقط فشرده‌سازی تصویر انجام دهید. مقدار دیگری از PicturesCompression را برای وضوح هدف متفاوت انتخاب کنید. هر دو مثال در اینجا هدف ۲۶.۱۱ را دارند؛ کمک‌کننده تصویر همراه با روش ترکیبی معرفی شد. برای انواع تصویر و محدودیت‌های آن، راهنمای فشرده‌سازی را ببینید.

همان کار را با یک فراخوانی انجام دهید

وقتی این پیش‌فرض‌ها با کار شما سازگار باشند، CompressPresentation جایگزین چهار فراخوانی جداگانه می‌شود. دوباره از ارائه اصلی شروع کنید:

using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;

using var presentation = new Presentation("compression-demo-original.pptx");
Compress.CompressPresentation(presentation);
presentation.Save("compression-demo-compressed.pptx", SaveFormat.Pptx);

شما هنوز ارائه را بارگذاری می‌کنید و نتیجه را به‌صورت صریح ذخیره می‌کنید. روش جدید عملیات پاک‌سازی را ترکیب می‌کند و هدف تصویر را در 150 DPI ثابت می‌کند.

مقایسه نتایج

اینها اندازه‌های فایل ذخیره‌شده از نمونه ارائه‌شده هستند. مراحل فردی به‌صورت تجمعی هستند؛ ردیف آخر دوباره از فایل اصلی شروع می‌شود. MB به معنای ۱٬۰۰۰٬۰۰۰ بایت است.

ارائه ذخیره شدهBytesMB
ارائه اصلی10,814,20010.81
پس از حذف طرح‌بندی‌های استفاده نشده10,766,02310.77
پس از حذف مسترهای استفاده نشده10,757,84910.76
پس از زیرمجموعه‌سازی قلم‌ها10,591,85110.59
پس از فشرده‌سازی تصاویر3,709,4603.71
با CompressPresentation3,709,4603.71

روش ترکیبی ارائه را به میزان 65.7% کاهش داد و به 3.71 MB رساند. هر دو جریان کاری ظاهر اسلاید یکسانی تولید کردند.

اسلاید جنگل اصلی و فشرده شده که به صورت کنار هم نمایش داده شده است

در این نمونه، پیکسل‌های PNG حفظ‌شده یکسان بودند و سه رندر اسلاید با ابعاد 1280 × 720 پیکسل به‌صورت دقیق مطابقت داشتند. فونت جاسازی‌شده کوچک‌تر شد در حالی که کاراکترهای استفاده‌شده در اسلایدها را حفظ کرد. این نتیجه برای این نمونه آماده است و تضمینی برای هر ارائه یا وضوح رندر نیست.

یک فایل خروجی جداگانه نگه دارید. نواحی تصویر برش داده شده به‌صورت دائمی حذف می‌شوند و طرح‌های حذف‌شده، مسترها و کاراکترهای قلم استفاده‌نشده ممکن است برای ویرایش‌های بعدی مفید باشند. تصاویر با وضوح بیش از 150 DPI می‌توانند جزئیات را در اثر کاهش نمونه‌برداری از دست بدهند. صرفه‌جویی‌ها به محتوای ارائه بستگی دارد.

دانلود کنید و امتحان کنید

دو ارائه را به‌صورت کنار هم باز کنید، یا مثال‌ها را روی یک نسخهٔ کپی از فایل خود اجرا کنید. راهنمای جامع توضیح می‌دهد کنترل‌های فردی و محتوای تصویر پشتیبانی‌شده را.