حفظ العرض التقديمي في .NET
حفظ العرض التقديمي
فتح عرض تقديمي وصف كيف تستخدم فئة Presentation لفتح عرض تقديمي. يشرح هذا المقال كيفية إنشاء وحفظ العروض التقديمية. تحتوي فئة Presentation على محتوى العرض التقديمي. سواء كنت تنشئ عرضًا تقديميًا من الصفر أو تعدل أحد العروض الموجودة، عند الانتهاء، تريد حفظ العرض التقديمي. باستخدام Aspose.Slides لـ .NET، يمكن حفظه كـ ملف أو تدفق. يشرح هذا المقال كيفية حفظ عرض تقديمي بطرق مختلفة:
حفظ العروض التقديمية إلى ملفات
احفظ العرض التقديمي كملف عن طريق استدعاء طريقة Save في فئة Presentation. ببساطة مرر اسم الملف ونوع الحفظ إلى طريقة Save. تظهر الأمثلة التالية كيفية حفظ عرض تقديمي باستخدام Aspose.Slides لـ .NET باستخدام C#.
// أنشئ كائن Presentation يمثل ملف PPT
Presentation presentation= new Presentation();
//...قم ببعض العمل هنا...
// احفظ عرضك التقديمي كملف
presentation.Save("Saved_out.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
حفظ العروض التقديمية إلى تدفقات
من الممكن حفظ العرض التقديمي إلى تدفق عن طريق تمرير تدفق الإخراج إلى طريقة حفظ فئة Presentation. هناك العديد من أنواع التدفقات التي يمكن حفظ العرض التقديمي إليها. في المثال أدناه، أنشأنا ملف عرض تقديمي جديد، وأضفنا نصًا في شكل وحفظنا العرض التقديمي في التدفق.
// أنشئ كائن Presentation يمثل ملف PPT
using (Presentation presentation = new Presentation())
{
IAutoShape shape = presentation.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 200, 200, 200, 200);
// أضف نصًا إلى الشكل
shape.TextFrame.Text = "توضح هذه التجربة كيفية إنشاء ملف PowerPoint وحفظه في تدفق.";
FileStream toStream = new FileStream("Save_As_Stream_out.pptx", FileMode.Create);
presentation.Save(toStream, Aspose.Slides.Export.SaveFormat.Pptx);
toStream.Close();
}
حفظ العروض التقديمية مع نوع العرض المحدد مسبقًا
توفر Aspose.Slides لـ .NET إمكانية تعيين نوع العرض للعروض التقديمية المولدة عندما يتم فتحها في PowerPoint من خلال فئة ViewProperties. يتم استخدام خاصية LastView لتعيين نوع العرض باستخدام المُعداد ViewType.
using (Presentation pres = new Presentation())
{
pres.ViewProperties.LastView = ViewType.SlideMasterView;
pres.Save("pres-will-open-SlideMasterView.pptx", SaveFormat.Pptx);
}
حفظ العروض التقديمية في تنسيق Office Open XML الصارم
يسمح لك Aspose.Slides بحفظ العرض التقديمي في تنسيق Office Open XML الصارم. لهذا الغرض، توفر فئة Aspose.Slides.Export.PptxOptions حيث يمكنك تعيين خاصية Conformance أثناء حفظ ملف العرض التقديمي. إذا قمت بتعيين قيمتها إلى Conformance.Iso29500_2008_Strict، فسيتم حفظ ملف العرض التقديمي الناتج في تنسيق Office Open XML الصارم.
ينشئ نموذج الشيفرة التالي عرضًا تقديميًا ويحفظه في تنسيق Office Open XML الصارم. عند استدعاء طريقة الحفظ للعرض التقديمي، يتم تمرير كائن Aspose.Slides.Export.PptxOptions معه مع تعيين خاصية Conformance على Conformance.Iso29500_2008_Strict.
// أنشئ كائن Presentation يمثل ملف عرض تقديمي
using (Presentation presentation = new Presentation())
{
// احصل على الشريحة الأولى
ISlide slide = presentation.Slides[0];
// أضف شكلًا تلقائيًا من نوع خط
slide.Shapes.AddAutoShape(ShapeType.Line, 50, 150, 300, 0);
// احفظ العرض التقديمي في تنسيق Office Open XML الصارم
presentation.Save(dataDir + "NewPresentation_out.pptx", Aspose.Slides.Export.SaveFormat.Pptx,
new PptxOptions() { Conformance = Conformance.Iso29500_2008_Strict });
}
حفظ العروض التقديمية في تنسيق Office Open XML في وضع Zip64
ملف Office Open XML هو أرشيف ZIP له حد يصل إلى 4 جيجا بايت (2^32 بايت) على الحجم غير المضغوط لملف، والحجم المضغوط لملف، والحجم الإجمالي للأرشيف، بالإضافة إلى حد يبلغ 65,535 (2^16-1) ملف في الأرشيف. تزيد امتدادات تنسيق ZIP64 الحدود إلى 2^64.
تسمح لك خاصية IPptxOptions.Zip64Mode باختيار متى يجب استخدام امتدادات تنسيق ZIP64 للملف Office Open XML المحفوظ.
توفر هذه الخاصية الأوضاع التالية:
- Zip64Mode.IfNecessary تعني أن امتدادات تنسيق ZIP64 ستستخدم فقط إذا كان العرض التقديمي يتجاوز الحدود المذكورة أعلاه. هذا هو الوضع الافتراضي.
- Zip64Mode.Never تعني أنه لن يتم استخدام امتدادات تنسيق ZIP64.
- Zip64Mode.Always تعني أنه سيتم دائمًا استخدام امتدادات تنسيق ZIP64.
توضح الشيفرة التالية كيف تحفظ العرض التقديمي في تنسيق PPTX مع امتدادات تنسيق ZIP64:
using (Presentation pres = new Presentation("Sample.pptx"))
{
pres.Save("Sample-zip64.pptx", SaveFormat.Pptx, new PptxOptions()
{
Zip64Mode = Zip64Mode.Always
});
}
ملاحظة
ستؤدي الحفظ في وضع Zip64Mode.Never إلى رفع استثناء PptxException إذا لم يكن من الممكن حفظ العرض التقديمي في تنسيق ZIP32.تحديثات حفظ التقدم بنسب مئوية
تمت إضافة واجهة IProgressCallback جديدة إلى واجهة ISaveOptions والفئة المجردة SaveOptions. تمثل واجهة IProgressCallback كائنًا للنداء الخلفي لتحديثات التقدم في النسبة المئوية.
تظهر مقتطفات الشيفرة التالية كيفية استخدام واجهة IProgressCallback:
using (Presentation presentation = new Presentation("ConvertToPDF.pptx"))
{
ISaveOptions saveOptions = new PdfOptions();
saveOptions.ProgressCallback = new ExportProgressHandler();
presentation.Save("ConvertToPDF.pdf", SaveFormat.Pdf, saveOptions);
}
class ExportProgressHandler : IProgressCallback
{
public void Reporting(double progressValue)
{
// استخدم قيمة النسبة المئوية هنا
int progress = Convert.ToInt32(progressValue);
Console.WriteLine(progress + "% الملف تم تحويله");
}
}
معلومات
باستخدام واجهتها البرمجية الخاصة، طورت Aspose تطبيق مقسم PowerPoint مجاني يسمح للمستخدمين بتقسيم عروضهم التقديمية إلى ملفات متعددة. أساسًا، يقوم التطبيق بحفظ الشرائح المحددة من عرض تقديمي معين كملفات PowerPoint جديدة (PPTX أو PPT).فتح وحفظ العرض التقديمي
الخطوات: فتح وحفظ العرض التقديمي في C#
- أنشئ مثيلًا من فئة Presentation بأي تنسيق مثل PPT، PPTX، ODP إلخ.
- احفظ العرض التقديمي في أي تنسيق مدعوم بواسطة SaveFormat
// قم بتحميل أي ملف مدعوم في العرض التقديمي مثل ppt، pptx، odp إلخ.
Presentation presentation = new Presentation("Sample.odp");
presentation.Save("OutputPresenation.pptx", SaveFormat.Pptx);