Bekerja dengan Imej dalam Pembentangan — Aspose.Slides FOSS untuk Python

Aspose.Slides FOSS for Python membolehkan anda menyematkan imej dalam koleksi imej bersama persembahan dan memaparkannya pada slaid menggunakan bentuk PictureFrame. Imej juga boleh digunakan sebagai isi latar belakang bentuk melalui FillType.PICTURE.


Menambah Imej dari Fail

Muatkan bait imej dari cakera dan tambahkan ke koleksi imej persembahan dengan prs.images.add_image(). Kemudian letakkan imej pada slaid sebagai 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)

Empat argumen posisi kepada add_picture_frame() ialah: x, y, width, height dalam titik.


Menambah Imej dari Bait

Jika anda sudah mempunyai bait imej (contohnya, dimuat turun dari URL atau dibaca daripada pangkalan data), hantarkan secara langsung kepada 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)

Penempatan dan Saiz PictureFrame

PictureFrame yang dikembalikan oleh add_picture_frame() mewarisi semua sifat geometri Shape dan boleh dipindahkan semula selepas penciptaan:

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)

Menggunakan Imej sebagai Isian Bentuk

Sebarang bentuk (bukan hanya PictureFrame) boleh menggunakan imej sebagai isian latar belakang. Tetapkan fill_type = FillType.PICTURE dan tugaskan imej kepada 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 menskalakan imej untuk mengisi seluruh bentuk. Gunakan TILE untuk corak jubin berulang.


Menambah Pelbagai Imej Merentasi Slaid

Imej yang ditambah ke prs.images dikongsi di semua slaid. Objek Image yang sama boleh digunakan pada pelbagai slaid tanpa menduplikasi data:

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)

Lihat Juga

 Bahasa Melayu