تحويل عروض PowerPoint إلى TIFF في PHP

مقدمة

TIFF (Tagged Image File Format) هو تنسيق صورة نقطية غير مضغوطة يُستخدم على نطاق واسع، ويُعرف بجودته الاستثنائية والحفاظ الدقيق على الرسومات. غالبًا ما يختار المصممون والمصورون والناشرون المكتبيون TIFF للحفاظ على الطبقات ودقة الألوان والإعدادات الأصلية في صورهم.

باستخدام Aspose.Slides، يمكنك بسهولة تحويل شرائح PowerPoint (PPT، PPTX) وشرائح OpenDocument (ODP) مباشرةً إلى صور TIFF عالية الجودة، مما يضمن بقاء عروضك التقديمية بأقصى مستوى من الدقة البصرية.

تحويل عرض تقديمي إلى TIFF

باستخدام طريقة save المقدمة من فئة Presentation، يمكنك بسرعة تحويل عرض تقديمي كامل إلى TIFF. تتطابق صور TIFF الناتجة مع حجم الشريحة الافتراضي.

هذا المثال يوضح كيفية تحويل عرض تقديمي PowerPoint إلى TIFF:

// إنشاء كائن من فئة Presentation التي تمثل ملف عرض تقديمي (PPT، PPTX، ODP، إلخ).
$presentation = new Presentation("presentation.pptx");
try {
    // حفظ العرض التقديمي كملف TIFF.
    $presentation->save("output.tiff", SaveFormat::Tiff);
} finally {
    $presentation->dispose();
}

تحويل عرض تقديمي إلى TIFF بالأبيض والأسود

طريقة setBwConversionMode في فئة TiffOptions تتيح لك تحديد الخوارزمية المستخدمة عند تحويل شريحة أو صورة ملونة إلى TIFF بالأبيض والأسود. لاحظ أن هذا الإعداد يُطبق فقط عندما تكون طريقة setCompressionType مضبوطة على CCITT4 أو CCITT3.

لنفترض أن لدينا ملف “sample.pptx” يحتوي على الشريحة التالية:

A presentation slide

هذا المثال يوضح كيفية تحويل الشريحة الملونة إلى TIFF بالأبيض والأسود:

$tiffOptions = new TiffOptions();
$tiffOptions->setCompressionType(TiffCompressionTypes::CCITT4);
$tiffOptions->setBwConversionMode(BlackWhiteConversionMode::Dithering);

$presentation = new Presentation("sample.pptx");
try {
    $presentation->save("output.tiff", SaveFormat::Tiff, $tiffOptions);
} finally {
    $presentation->dispose();
}

النتيجة:

Black-and-White TIFF

تحويل عرض تقديمي إلى TIFF بحجم مخصص

إذا كنت تحتاج إلى صورة TIFF بأبعاد محددة، يمكنك ضبط القيم المطلوبة باستخدام الطرق المتاحة في فئة TiffOptions. على سبيل المثال، طريقة setImageSize تتيح لك تحديد حجم الصورة الناتجة.

هذا المثال يوضح كيفية تحويل عرض تقديمي PowerPoint إلى صور TIFF بحجم مخصص:

// إنشاء كائن من فئة Presentation التي تمثل ملف عرض تقديمي (PPT، PPTX، ODP، إلخ).
$presentation = new Presentation("presentation.pptx");
try {
    $tiffOptions = new TiffOptions();

    // ضبط نوع الضغط.
    $tiffOptions->setCompressionType(TiffCompressionTypes::Default);
    /*
    أنواع الضغط:
        Default - يحدد مخطط الضغط الافتراضي (LZW).
        None - يعني عدم وجود ضغط.
        CCITT3
        CCITT4
        LZW
        RLE
    */

    // العمق يعتمد على نوع الضغط ولا يمكن ضبطه يدويًا.

    // ضبط DPI الصورة.
    $tiffOptions->setDpiX(200);
    $tiffOptions->setDpiY(200);

    // ضبط حجم الصورة.
    $tiffOptions->setImageSize(new Java("java.awt.Dimension", 1728, 1078));

    $notesOptions = new NotesCommentsLayoutingOptions();
    $notesOptions->setNotesPosition(NotesPositions::BottomFull);
    $tiffOptions->setSlidesLayoutOptions($notesOptions);

    // حفظ العرض التقديمي كملف TIFF بالحجم المحدد.
    $presentation->save("tiff-ImageSize.tiff", SaveFormat::Tiff, $tiffOptions);
} finally {
    $presentation->dispose();
}

تحويل عرض تقديمي إلى TIFF بصيغة بكسل مخصصة

باستخدام طريقة setPixelFormat من فئة TiffOptions، يمكنك تحديد صيغة البكسل المفضلة للصورة TIFF الناتجة.

هذا المثال يوضح كيفية تحويل عرض تقديمي PowerPoint إلى صورة TIFF بصيغة بكسل مخصصة:

// إنشاء كائن من فئة Presentation التي تمثل ملف عرض تقديمي (PPT، PPTX، ODP، إلخ).
$presentation = new Presentation("presentation.pptx");
try {
    $tiffOptions = new TiffOptions();

    $tiffOptions->setPixelFormat(ImagePixelFormat::Format8bppIndexed);
    /*
    ImagePixelFormat يحتوي على القيم التالية (كما هو مذكور في الوثائق):
        Format1bppIndexed - بت واحد لكل بكسل، مفهرس.
        Format4bppIndexed - 4 بتات لكل بكسل، مفهرس.
        Format8bppIndexed - 8 بتات لكل بكسل، مفهرس.
        Format24bppRgb    - 24 بت لكل بكسل، RGB.
        Format32bppArgb   - 32 بت لكل بكسل، ARGB.
    */

    // حفظ العرض التقديمي كملف TIFF بالحجم المحدد للصورة.
    $presentation->save("Tiff-PixelFormat.tiff", SaveFormat::Tiff, $tiffOptions);
} finally {
    $presentation->dispose();
}

الأسئلة المتكررة

هل يمكنني تحويل شريحة فردية بدلاً من تحويل العرض التقديمي بالكامل إلى TIFF؟

نعم. تتيح لك Aspose.Slides تحويل شرائح فردية من عروض PowerPoint وOpenDocument إلى صور TIFF بشكل منفصل.

هل هناك حد لعدد الشرائح عند تحويل عرض تقديمي إلى TIFF؟

لا، لا تفرض Aspose.Slides أي قيود على عدد الشرائح. يمكنك تحويل عروض بأي حجم إلى تنسيق TIFF.

هل يتم حفظ الرسوم المتحركة وتأثيرات الانتقال في PowerPoint عند تحويل الشرائح إلى TIFF؟

لا، TIFF هو تنسيق صورة ثابت. لذا لا يتم حفظ الرسوم المتحركة أو تأثيرات الانتقال؛ يتم تصدير لقطات ثابتة فقط من الشرائح.