کار با تصاویر در ارائه‌ها — Aspose.Slides FOSS برای Python

Aspose.Slides FOSS for Python lets you embed images in a presentation’s shared image collection and display them on slides using PictureFrame شکل‌ها. تصاویر همچنین می‌توانند به عنوان پرکننده‌های پس‌زمینهٔ شکل استفاده شوند از طریق FillType.PICTURE.


افزودن تصویر از فایل

بارگذاری بایت‌های تصویر از دیسک و افزودن آن‌ها به مجموعهٔ تصاویر ارائه با prs.images.add_image(). سپس تصویر را روی اسلاید به عنوان یک PictureFrame:

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    # Add the image to the shared collection
    with open("logo.png", "rb") as f:
        img = prs.images.add_image(f.read())

    # Place it on the slide as a PictureFrame
    slide = prs.slides[0]
    slide.shapes.add_picture_frame(ShapeType.RECTANGLE, 50, 50, 300, 200, img)

    prs.save("with-image.pptx", SaveFormat.PPTX)

چهار آرگومان موقعیتی برای add_picture_frame() هستند: x, y, width, height به صورت نکات.


افزودن تصویر از بایت‌ها

اگر قبلاً بایت‌های تصویر را دارید (مثلاً از یک URL دانلود کرده‌اید یا از یک پایگاه داده خوانده‌اید)، آن‌ها را مستقیماً به add_image():

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat

# Simulate having bytes in memory
with open("photo.jpg", "rb") as f:
    image_bytes = f.read()

with slides.Presentation() as prs:
    img = prs.images.add_image(image_bytes)
    prs.slides[0].shapes.add_picture_frame(ShapeType.RECTANGLE, 100, 80, 400, 250, img)
    prs.save("from-bytes.pptx", SaveFormat.PPTX)

موقعیت‌یابی و تعیین اندازهٔ PictureFrame

این PictureFrame بازگردانده شده توسط add_picture_frame() همه را به ارث می‌گیرد Shape ویژگی‌های هندسی و می‌توان پس از ایجاد آن را جابجا کرد:

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    with open("photo.jpg", "rb") as f:
        img = prs.images.add_image(f.read())

    pf = prs.slides[0].shapes.add_picture_frame(ShapeType.RECTANGLE, 0, 0, 100, 100, img)

    # Reposition and resize after creation
    pf.x = 50
    pf.y = 100
    pf.width = 350
    pf.height = 250

    prs.save("positioned.pptx", SaveFormat.PPTX)

استفاده از تصویر به عنوان پرکنندهٔ شکل

هر شکل (نه فقط PictureFrame) می‌تواند از یک تصویر به‌عنوان پرکن پس‌زمینه استفاده کند. تنظیم fill_type = FillType.PICTURE و تصویر را به picture_fill_format.picture.image:

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType, FillType, PictureFillMode
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    with open("background.png", "rb") as f:
        img = prs.images.add_image(f.read())

    slide = prs.slides[0]
    shape = slide.shapes.add_auto_shape(ShapeType.ROUND_CORNER_RECTANGLE, 50, 50, 400, 250)
    shape.fill_format.fill_type = FillType.PICTURE
    shape.fill_format.picture_fill_format.picture_fill_mode = PictureFillMode.STRETCH
    shape.fill_format.picture_fill_format.picture.image = img

    prs.save("picture-fill.pptx", SaveFormat.PPTX)

PictureFillMode.STRETCH تصویر را برای پر کردن کل شکل مقیاس می‌کند. استفاده کنید TILE برای الگوی کاشی تکراری.


افزودن چندین تصویر در اسلایدهای مختلف

تصاویر اضافه شده به prs.images در تمام اسلایدها به‌اشتراک گذاشته می‌شوند. همان Image شیء می‌تواند در چندین اسلاید بدون تکرار داده‌ها استفاده شود:

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    with open("logo.png", "rb") as f:
        logo = prs.images.add_image(f.read())

    # Add the same image to both slides
    prs.slides[0].shapes.add_picture_frame(ShapeType.RECTANGLE, 600, 10, 100, 40, logo)

    prs.save("shared-image.pptx", SaveFormat.PPTX)

همچنین ببینید

 فارسی