חלץ תמונות ממצגות PowerPoint ב-Python

תמונות הן דרך תקשורת יעילה שהופכת את התוכן לתוסס. זו הסיבה שהתמונות מאומצות באופן נרחב בדפי אינטרנט, מסמכים, מצגות וכו’. מצגות MS PowerPoint בנויות בדרך כלל עם פחות טקסט ויותר אובייקטים ותמונות גרפיות. לכן, בעת עיבוד המצגות באופן פרוגרמטי, ייתכן שיהיה עליך לחלץ תמונות יחד עם הטקסט. כדי להשיג זאת, מאמר זה מכסה כיצד לחלץ תמונות ממצגות PPT או PPTX ב-Python.

ספריית פייתון לחילוץ תמונות ממצגות

כדי לחלץ תמונות ממצגות PowerPoint, נשתמש ב-Aspose.Slides for Python דרך .NET. זוהי ספריית Python רבת עוצמה שנועדה ליצור מצגות מאפס. יתר על כן, זה מאפשר לך להמיר ולתפעל את המצגות הקיימות בצורה חלקה. אתה יכול להתקין אותו מ-PyPI באמצעות פקודת ה-pip הבאה.

> pip install aspose.slides

חלץ תמונות מ-PowerPoint PPT ב-Python

להלן השלבים לחילוץ תמונות ממצגת PowerPoint ב- Python.

  • טען את המצגת באמצעות שיעור מצגת.
  • עברו בלולאה בין התמונות במצגת באמצעות אוסף Presentation.images.
  • שמור כל תמונה כקובץ.

דגימת הקוד הבאה מראה כיצד לחלץ תמונות מקובץ PPTX ב-Python.

import aspose.slides as slides
import aspose.pydrawing as drawing

imageIndex=1
# טען מצגת
with slides.Presentation("presentation.pptx") as pres:

    # לולאה בין תמונות
   for image in pres.images:
        file_name = "Image_{0}.{1}"
        image_type = image.content_type.split("/")[1]
        image_format = get_image_format(image_type)

        # שמור תמונה
        image.system_image.save(file_name.format( imageIndex, image_type), image_format)
        imageIndex = imageIndex + 1

חלץ תמונות מצורות ב-PPT

במקרים מסוימים, ייתכן שיהיה עליך לחלץ תמונות רק מהצורות במצגת. אז בואו נראה איך לחלץ תמונות מצורות ב-PPT ב-Python.

  • ראשית, טען את המצגת באמצעות מחלקה Presentation.
  • לאחר מכן, עברו דרך שקופיות המצגת באמצעות אוסף Presentation.slides.
  • עבור כל שקופית, גש לצורות שלה באמצעות אוסף ISlide.shapes.
  • עבור כל צורה באוסף, בצע את השלבים הבאים:
    • אם הצורה היא צורה אוטומטית וסוג המילוי שלה הוא תמונה, חלץ תמונה באמצעות המאפיין IShape.fillformat.picturefillformat.picture.image.
    • אם הצורה היא מסגרת תמונה, חלץ תמונה באמצעות המאפיין IShape.pictureformat.picture.image.
    • לבסוף, שמור את התמונה כקובץ.

דוגמת הקוד הבאה מראה כיצד לחלץ תמונות מצורות במצגת PPT באמצעות Python.

import aspose.slides as slides
import aspose.pydrawing as drawing

# טען מצגת
with slides.Presentation("pres.pptx") as pres:
    slideIndex = 0
    image_type = ""
    
    # לולאה דרך שקופיות
   for slide in pres.slides:
        slideIndex += 1
        image_format = drawing.imaging.ImageFormat.jpeg
        file_name = "BackImage_Slide_{0}{1}.{2}"
      
        # לולאה דרך צורות בשקופית
       for i in range(len(slide.shapes)):
            shape = slide.shapes[i]
            shape_image = None

            # check is shape היא צורה אוטומטית או מסגרת תמונה
            if type(shape) is slides.AutoShape and shape.fill_format.fill_type == slides.FillType.PICTURE:
                shape_image = shape.fill_format.picture_fill_format.picture.image
            elif type(shape) is slides.PictureFrame:
                shape_image = shape.picture_format.picture.image

            # שמור תמונה
            if shape_image is not None:
                image_type = shape_image.content_type.split("/")[1]
                image_format = get_image_format(image_type)

                shape_image.system_image.save(
                                file_name.format("shape_"+str(i)+"_", slideIndex, image_type), 
                                image_format)

חלץ תמונות מרקע שקופיות ב-PPT

תרחיש אחר יכול להיות חילוץ התמונות המשמשות כרקע שקופיות. להלן השלבים לחילוץ תמונות רק מרקע שקופיות במצגת PPT.

  • ראשית, טען את המצגת באמצעות מחלקה Presentation.
  • לאחר מכן, עברו דרך שקופיות המצגת באמצעות אוסף Presentation.slides.
  • עבור כל שקופית, בצע את השלבים הבאים:
    • בדוק אם לשקופית יש תמונת רקע באמצעות המאפיין ISlide.background.fillformat.filltype.
    • אם יש תמונה ברקע, חלץ תמונה באמצעות מאפיין ISlide.background.fillformat.picturefillformat.picture.image.
    • בדוק אם לשקופית הפריסה יש תמונת רקע באמצעות המאפיין ISlide.layoutslide.background.fillformat.filltype.
    • אם הרקע מלא בתמונה, חלץ אותה באמצעות המאפיין ISlide.layoutslide.background.fillformat.picturefillformat.picture.image.
    • לבסוף, שמור את התמונה שחולצה כקובץ.

דוגמת הקוד הבאה מראה כיצד לחלץ תמונות מרקע שקופיות ב-PPT ב-Python.

import aspose.slides as slides
import aspose.pydrawing as drawing

# טען מצגת
with slides.Presentation("pres.pptx") as pres:
    slideIndex = 0
    image_type = ""
    
    # לולאה בין השקופיות במצגת
   for slide in pres.slides:
        slideIndex += 1
        image_format = drawing.imaging.ImageFormat.jpeg
        back_image = None
        file_name = "BackImage_Slide_{0}{1}.{2}"
        is_layout = False

        # בדוק אם הרקע של השקופית והפריסה מלאים בתמונה
        if slide.background.fill_format.fill_type == slides.FillType.PICTURE:
            back_image = slide.background.fill_format.picture_fill_format.picture.image
        elif slide.layout_slide.background.fill_format.fill_type == slides.FillType.PICTURE:
            back_image = slide.layout_slide.background.fill_format.picture_fill_format.picture.image
            is_layout = True

        # שמור תמונה
        if back_image is not None:
            image_type = back_image.content_type.split("/")[1]
            image_format = get_image_format(image_type)

            back_image.system_image.save(
                file_name.format("LayoutSlide_" if is_layout else "", slideIndex, image_type), 
                image_format)

שתי דוגמאות הקוד לעיל משתמשות בשיטה getimageformat, המחזירה את פורמט התמונה המתאים לסוג שסופק. היישום של שיטה זו מסופק להלן.

import aspose.slides as slides
import aspose.pydrawing as drawing

def get_image_format(image_type):
    return {
        "jpeg": drawing.imaging.ImageFormat.jpeg,
        "emf": drawing.imaging.ImageFormat.emf,
        "bmp": drawing.imaging.ImageFormat.bmp,
        "png": drawing.imaging.ImageFormat.png,
        "wmf": drawing.imaging.ImageFormat.wmf,
        "gif": drawing.imaging.ImageFormat.gif,
    }.get(image_type, drawing.imaging.ImageFormat.jpeg)

קבל רישיון חינם

אתה יכול לקבל [רישיון זמני] בחינם6 לשימוש ב-Aspose.Slides עבור Python דרך .NET ללא מגבלות הערכה.

סיכום

במאמר זה, למדת כיצד לחלץ תמונות ממצגות PowerPoint ב- Python. כיסינו גם את החילוץ של תמונות מצורות ורקע שקופיות בנפרד. חוץ מזה, אתה יכול לחקור יותר על Aspose.Slides עבור Python על ידי ביקור בתיעוד. כמו כן, אתה יכול לשאול את השאלות שלך דרך הפורום שלנו.

ראה גם

מידע: Aspose מספקת PowerPoint לממירי תמונות - PPT to JPG ו-[PPT to PNG][] - המאפשרים לך ליצור תמונות על סמך שקופיות במצגת.