[PPTX解析] 图片调整:删除背景、矫正、颜色、艺术效果、透明度

内容纲要

PPTX解析:图片篇

图片是 PPT 的基本元素,第三方程序想要解析并呈现PPT中的图片,会面临如何实现PPT中图片效果的问题。想要解析并呈现这些效果,我们首先需要了解PPT是如何存储图片效果的。

注:本篇只讨论.pptx格式存储的PPT,保存格式为.ppt的PPT不在研究范围内。

图片效果存储解析

当前PPTX存储图片的效果分为两种形式:

一、仅通过xml节点存储效果信息

file

该方案中,PPT不会对原图进行修改,而是将效果的属性信息存入到图片的xml节点中,在程序显示PPT的时候进行效果运算,然后渲染出一张效果图。

在面对这种请情况时,解析PPTX就需要我们读取和解析对应的xml节点,并进行颜色算法运算得到效果图。

二、通过xml节点存储效果信息,并生成一张效果图

file

该方案中,PPT会直接对原图进行修改,生成一张应用了该效果的图片。与此同时,PPT还会保存一份原图的备份(.wdp),用于图片效果的重置和修改效果。同时,PPT也会在xml节点中存储效果信息,该信息用于记录效果信息、二次编辑效果和软件交互,但并不影响我们进行图片效果的解析。

file

如果图片应用的是使用该方案实现的效果,那么对于第三方应用就再好不过了,直接使用生成的效果图就会实现一模一样的效果了。

但是需要注意PPT中的图片效果是可以组合叠加的,所以我们要注意如果其中某一个效果是仅仅保存xml节点信息进行效果存储的,我们还是需要拿到图片并进行效果运算生成效果图。

各种图片效果的存储模式

类别 效果名称 需要解析xml节点并通过算法进行实现效果
删除背景 通过标记区域删除背景
校正 锐化/柔化
校正 亮度
校正 对比度
颜色 饱和度
颜色 色调
颜色 设置透明色
颜色 重新着色
透明度 透明度
艺术效果 全部*

根据上述存储模式可知,如果图片中应用了[设置透明色]或者[重新着色]我们就必须继续图片效果算法运算,将图片进行效果转换。

设置透明色

如何进行设置透明色的解析可查看:

[PPTX解析] 图片效果算法篇:设置透明色

重新着色

未完待续……

透明度

未完待续……

本文会经常更新,请阅读原文:https://imxcg.com/technology/dot-net/pptx-analysis/pptx-analysis-picture-effect,以避免陈旧错误知识的误导,同时有更好的阅读体验。

知识共享许可协议 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 仙尘阁 (包含链接: https://imxcg.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 (imxcg@foxmail.com)