چرا از Open XML SDK استفاده نکنیم
مرور کلی
این مقاله توضیح میدهد که چه زمانی توسعهدهندگان ممکن است Open XML SDK یا Aspose.Slides را برای کار با اسناد ارائه انتخاب کنند. در آن Open XML SDK به عنوان کتابخانهای برای دستکاری بستههای OOXML و عناصر XML زیرین آن توضیح داده میشود، در حالی که Aspose.Slides به عنوان یک کتابخانه پردازش ارائه با مدل شیء سطح بالا و پشتیبانی از بسیاری از وظایف مربوط به PowerPoint معرفی میشود.
مقاله هر دو گزینه را بر اساس قالبهای پشتیبانیشده، مدل برنامهنویسی، قابلیتهای رندرینگ و چاپ، پشتیبانی پلتفرم و موارد استفاده رایج مقایسه میکند. همچنین روشن میکند که Open XML SDK ممکن است برای عملیات پایهای PPTX یا دسترسی مستقیم به عناصر OOXML مناسب باشد، در حالی که Aspose.Slides برای وظایف پیچیدهتر مانند کار با چندین قالب PowerPoint، کپی یا کلون کردن اشکال، جایگزین کردن متن، اعمال انیمیشنها و تبدیل ارائهها به PDF، TIFF یا XPS مناسبتر است.
Open XML SDK چیست؟
بر اساس MSDN Library، Open XML SDK بهصورت زیر تعریف میشود:
Open XML SDK 2.0 کار دستکاری بستههای Open XML و عناصر طرحواره Open XML زیرین یک بسته را ساده میکند. Open XML SDK 2.0 بسیاری از کارهای رایجی که توسعهدهندگان بر روی بستههای Open XML انجام میدهند را محصور میکند، بهطوریکه بتوانید عملیات پیچیده را با تنها چند خط کد انجام دهید.
سندهای OOXML در اصل فایلهای XML فشرده هستند و Open XML SDK مجموعهای از کلاسهاست که به شما اجازه میدهد محتوای سندهای OOXML را بهصورت تایپقوی (strongly‑typed) کار کنید. یعنی بهجای استخراج XML از یک فایل فشرده، بارگذاری آن در یک درخت DOM و کار مستقیم با عناصر و ویژگیهای XML، Open XML SDK کلاسهایی برای انجام این کار فراهم میکند.
Aspose.Slides چیست؟
Aspose.Slides یک کتابخانهٔ کلاس است که به برنامهٔ شما امکان انجام وظایف زیر را میدهد:
- برنامهنویسی با مدل شیء Presentation.
- تبدیلهای با کیفیت بالا بین تمام قالبهای رایج PowerPoint، شامل تبدیل به PDF, XPS و TIFF.
- توانایی تولید تصویر بندانگشتی اسلایدها در قالبهای شناختهشده مانند PNG, JPEG و BMP بههمراه صادرات اسلاید به SVG.
- توانایی ساخت ارائهها از صفر یا ترکیب آنها از یک یا چند سند.
- پشتیبانی از افزودن انیمیشنها، فریمهای OLE، جدولها، ایجاد و مدیریت نمودارها.
- فراهم کردن کنترل گسترده برای مدیریت قالببندی متن در سطوح TextFrames, Paragraphs و Portions.
برای جزئیات بیشتر دربارهٔ ویژگیهای پشتیبانیشده، لطفاً به Aspose.Slides Features مراجعه کنید.
مقایسه Open XML SDK با Aspose.Slides
| ویژگی یا دستهبندی ویژگی | Open XML SDK | Aspose.Slides |
|---|---|---|
| قالبهای ارائه پشتیبانیشده | PPTX | PPT, POT, PPS, PPTX, POTX, PPSX, ODP |
| تبدیل از PPT به PPTX | خیر | بله |
برنامهنویسی سطح بالا با مدل شیء سند ارائه (DOM): - جستجو و جایگزینی متن. - ترکیب اسلایدها در ارائهها. |
خیر | بله |
| برنامهنویسی دقیق با مدل شیء سند، دسترسی به عناصر فردی و قالببندیهایی مانند TextHolders, TextFrames, Paragraphs و Portions. | بله | بله |
| دسترسی سطح پایین مستقیم و کامل به عناصر و ویژگیهای XML زیرین مانند شناسههای رابطه، شناسههای فهرست یک سند OOXML. | بله | خیر |
رندرینگ: - رندر ارائهها به PDF, PDF Notes, XPS, تصاویر TIFF. - رندر تصویر بندانگشتی اسلایدها به PNG, JPEG, BMP, SVG و TIFF. - مشخص کردن وضوح تصویر، کیفیت، فشردهسازی و گزینههای دیگر. |
خیر | بله |
| پلتفرمهای پشتیبانیشده | Windows, .NET | Windows, Linux,UNIX, MAC, Java, PHP, Mono |
نتیجهگیری
Open XML SDK و Aspose.Slides بهصورت سرسری رقابت نمیکنند، زیرا نیازها و مخاطبان متفاوتی را هدف قرار میدهند. Open XML SDK یک کتابخانهٔ کلاس است که راهی قویتایپ برای کار با اسناد OOXML فراهم میکند. Aspose.Slides یک کتابخانهٔ پردازش ارائه بسیار مفید است که پشتیبانی عالی برای تقریباً تمام قالبهای فایل Microsoft PowerPoint ارائه میدهد.
اگر تنها نیاز شما انجام یک عملیات برنامهنویسی نسبتاً پایهای روی سند PPTX است، Open XML SDK میتواند گزینهٔ مناسبی باشد. با Open XML SDK میتوانید به راحتی وظایف سادهای مانند ایجاد یک سند PPTX ساده یا حذف نظرات، سرصفحه/پاورقی، استخراج تصاویر و غیره را انجام دهید. برخی وظایف میتوانند با Open XML SDK انجام شوند، اما با Aspose.Slides قابل انجام نیستند. برای مثال، اگر نیاز به دسترسی مستقیم به عناصر و ویژگیهای XML یک سند OOXML دارید، باید از Open XML SDK استفاده کنید. اما اگر نیاز به انجام عملیات پیچیده روی اسناد دارید، مانند برخی از وظایف زیر، استفاده از Aspose.Slides بهترین گزینهٔ شماست:
- پشتیبانی از قالبهای قدیمی PowerPoint علاوه بر PPTX.
- کپی یا کلون کردن اشکال در اسلایدها بهطوریکه اشیاء، سبکها و قالببندیهای دیگر بهصورت مناسب ترکیب شوند.
- جایگزینی متن قالببندیشده یا بدون قالببندی.
- اعمال انیمیشنها و استفاده از اتصالکنندهها با اشکال استفادهشده.
- تبدیل سند به PDF, TIFF یا XPS بهگونهای که دقیقاً همانطور که Microsoft PowerPoint تبدیل میکرد، ظاهر شود.
- توسعه برنامهٔ .NET یا Java در هر دو محیط دسکتاپ و وب.