现代 API
Contents
[
Hide
]
介绍
目前,Aspose.Slides for Python via .NET 库的公共 API 依赖于 aspose.pydrawing
中的以下类:
aspose.pydrawing.Graphics
aspose.pydrawing.Image
aspose.pydrawing.Bitmap
aspose.pydrawing.printing.PrinterSettings
截至版本 24.4,由于 更改 在 Aspose.Slides for .NET 公共 API 中,这个公共 API 被声明为不推荐使用。
为了摆脱公共 API 中对 aspose.pydrawing
的依赖,我们添加了所谓的“现代 API”。使用 aspose.pydrawing.Image
和 aspose.pydrawing.Bitmap
的方法被声明为不推荐使用,并将被现代 API 中相应的方法替代。使用 aspose.pydrawing.Graphics
的方法被声明为不推荐使用,并且它们的支持将从公共 API 中移除。
在版本 24.8 时,将移除依赖于 aspose.pydrawing
的不推荐使用的公共 API。
现代 API
公共 API 添加了以下类和枚举:
aspose.slides.IImage
- 表示光栅或矢量图像。aspose.slides.ImageFormat
- 表示图像的文件格式。aspose.slides.Images
- 实例化和处理IImage
接口的方法。
使用新 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) |
输出类
方法签名 | 替代方法签名 |
---|---|
add(path, image: aspose.pydrawing.Image) | add(path, image) |
API 对 aspose.pydrawing.Graphics
的支持将被停止
使用 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)