モダンAPI

はじめに

現在、Aspose.Slides for Python via .NETライブラリは、aspose.pydrawingの以下のクラスに依存しています:

  • aspose.pydrawing.Graphics
  • aspose.pydrawing.Image
  • aspose.pydrawing.Bitmap
  • aspose.pydrawing.printing.PrinterSettings

バージョン24.4以降、この公開APIは、Aspose.Slides for .NETの公開APIにおける変更により非推奨とされています。

公開APIのaspose.pydrawingへの依存を取り除くために、いわゆる「モダンAPI」を追加しました。aspose.pydrawing.Imageおよびaspose.pydrawing.Bitmapを使用するメソッドは非推奨とされ、モダンAPIの対応するメソッドに置き換えられます。aspose.pydrawing.Graphicsを使用するメソッドは非推奨となり、公開APIからそのサポートが削除されます。

aspose.pydrawingへの依存を持つ非推奨の公開APIは、リリース24.8で削除される予定です。

モダンAPI

以下のクラスと列挙型が公開APIに追加されました:

新しいAPIを使用する典型的なシナリオは次のようになります:

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

with slides.Presentation() as pres:
    image = slides.Images.from_file("image.png")
    pp_image = pres.images.add_image(image)
    pres.slides[0].shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 10.0, 10.0, 100.0, 100.0, pp_image)
    with pres.slides[0].get_image(drawing.Size(1920, 1080)) as slide_image:
        slide_image.save("slide1.jpeg", slides.ImageFormat.JPEG)

古いコードをモダンAPIに置き換える

移行を容易にするために、新しいIImageインターフェースはImageおよびBitmapクラスの個別のシグネチャを繰り返すようになっています。一般には、aspose.pydrawingを使用した古いメソッドの呼び出しを新しいものに置き換える必要があります。

スライドのサムネイルを取得する

非推奨APIを使用したコード:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres:
    pres.slides[0].get_thumbnail().save("slide1.png")

モダンAPI:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres:
    with pres.slides[0].get_image() as image:
        image.save("slide1.png")

形状のサムネイルを取得する

非推奨APIを使用したコード:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres:
    pres.slides[0].shapes[0].get_thumbnail().save("shape.png")

モダンAPI:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres:
    with pres.slides[0].shapes[0].get_image() as image:
        image.save("shape.png")

プレゼンテーションのサムネイルを取得する

非推奨APIを使用したコード:

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

with slides.Presentation("pres.pptx") as pres:
    thumbnails = pres.get_thumbnails(slides.export.RenderingOptions(), drawing.Size(1980, 1028))

    for idx, thumbnail in enumerate(thumbnails):
        thumbnail.save(f"slide_{idx}.png", drawing.imaging.ImageFormat.png)

モダンAPI:

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

with slides.Presentation("pres.pptx") as pres:
    thumbnails = pres.get_images(slides.export.RenderingOptions(), drawing.Size(1980, 1028))

    for idx, thumbnail in enumerate(thumbnails):
        thumbnail.save(f"slide_{idx}.png", slides.ImageFormat.PNG)

プレゼンテーションに画像を追加する

非推奨APIを使用したコード:

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

with slides.Presentation() as pres:
    image = drawing.Image.from_file("image.png")
    pp_image = pres.images.add_image(image)
    pres.slides[0].shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 10.0, 10.0, 100.0, 100.0, pp_image)

モダンAPI:

import aspose.slides as slides

with slides.Presentation() as pres:
    image = slides.Images.from_file("image.png")
    pp_image = pres.images.add_image(image)
    pres.slides[0].shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 10.0, 10.0, 100.0, 100.0, pp_image)

削除されるメソッド/プロパティとモダンAPIでの置き換え

プレゼンテーションクラス

メソッドシグネチャ 置き換えメソッドシグネチャ
get_thumbnails(options) get_images(options)
get_thumbnails(options, slides) get_images(options, slides)
get_thumbnails(options, scale_x, scale_y) get_images(options, scale_x, scale_y)
get_thumbnails(options, slides, scale_x, scale_y) get_images(options, slides, scale_x, scale_y)
get_thumbnails(options, image_size) get_images(options, image_size)
get_thumbnails(options, slides, image_size) get_images(options, slides, image_size)
save(fname, format, response, show_inline) 完全に削除されます
save(fname, format, options, response, show_inline) 完全に削除されます
print() 完全に削除されます
print(printer_settings) 完全に削除されます
print(printer_name) 完全に削除されます
print(printer_settings, pres_name) 完全に削除されます

スライドクラス

メソッドシグネチャ 置き換えメソッドシグネチャ
get_thumbnail() get_image()
get_thumbnail(scale_x, scale_y) get_image(scale_x, scale_y)
get_thumbnail(image_size) get_image(image_size)
get_thumbnail(options) get_image(options: ITiffOotions)
get_thumbnail(options) get_image(options: IRenderingOptions)
get_thumbnail(options, scale_x, scale_y) get_image(options, scale_x, scale_y)
get_thumbnail(options, image_size) get_image(options, image_size)
render_to_graphics(options, graphics) 完全に削除されます
render_to_graphics(options, graphics, scale_x, scale_y) 完全に削除されます
render_to_graphics(options, graphics, rendering_size) 完全に削除されます

形状クラス

メソッドシグネチャ 置き換えメソッドシグネチャ
get_thumbnail() get_image()
get_thumbnail(bounds, scale_x, scale_y) get_image(bounds, scale_x, scale_y)

ImageCollectionクラス

メソッドシグネチャ 置き換えメソッドシグネチャ
add_image(image: aspose.pydrawing.Image) add_image(image)

PPImageクラス

メソッド/プロパティシグネチャ 置き換えメソッド/プロパティシグネチャ
replace_image(new_image: aspose.pydrawing.Image) replace_image(new_image)
system_image image

ImageWrapperFactoryクラス

メソッドシグネチャ 置き換えメソッドシグネチャ
create_image_wrapper(image: aspose.pydrawing.Image) create_image_wrapper(image)

PatternFormatクラス

メソッドシグネチャ 置き換えメソッドシグネチャ
get_tile_image(background, foreground) get_tile(background, foreground)
get_tile_image(style_color) get_tile(style_color)

IPatternFormatEffectiveDataクラス

メソッドシグネチャ 置き換えメソッドシグネチャ
get_tile_image(background, foreground) get_tile_i_image(background, foreground)

Outputクラス

メソッドシグネチャ 置き換えメソッドシグネチャ
add(path, image: aspose.pydrawing.Image) add(path, image)

aspose.pydrawing.Graphicsに対するAPIサポートは終了します

aspose.pydrawing.Graphicsを使用するメソッドは非推奨とされ、公開APIからそのサポートが削除されます。

それを使用するAPIの部分は削除されます:

  • aspose.pydrawing.Slide.render_to_graphics(options, graphics)
  • aspose.pydrawing.Slide.render_to_graphics(options, graphics, scale_x, scale_y)
  • aspose.pydrawing.Slide.render_to_graphics(options, graphics, rendering_size)