Skip to content

dotnet OpenXML 图片特效的 BiLevel 黑白特效修改图片颜色

Updated: at 12:43,Created: at 07:32

在 Office 中,如 PPT 和 Word 可以不对原图修改的前提下,通过叠加特效的方式,提供对图片的视觉输出进行修改的方法,本文将介绍 ECMA 376 里面的 第 20.1.8.11 章的 Bi-Level (Black White Effect) 的用法和功能

如下图是一张图片,这张图片有颜色的,这张图片是我瞎找的,如果有版权问题还请告诉我

默认放入到 PPT 里面的效果如下

如果按照 ECMA-376 的 biLevel (Black White Effect) 功能,给图片加上了 Bi-Level 特效,如以下代码,可以看到图片变成黑白

<a:blip r:embed="rId2">
<a:biLevel thresh="20000" />
</a:blip>

在 ECMA 376 里面的 第 20.1.8.11 章的 Bi-Level 特效有介绍使用方法。在 a:biLevel 里面的属性只有 thresh 一个属性,这个属性的含义是如果图片的每个像素点,如果像素点的亮度大于或等于给定的 thresh 也就是 Threshold 阈值那么将显示白色,否则将显示黑色

上文说的亮度指的是像素点的 luminance 亮度值,这是一个百分比单位,也就是如下面代码,除非是纯白透明,否则都是黑色

<a:blip r:embed="rId2">
<a:biLevel thresh="100000" />
</a:blip>

反过来设置 thresh="0" 就显示白色

本文的属性是依靠 dotnet OpenXML 解压缩文档为文件夹工具 工具协助测试的,这个工具是开源免费的工具,欢迎小伙伴使用

更多请看 Office 使用 OpenXML SDK 解析文档博客目录


知识共享许可协议

原文链接: http://blog.lindexi.com/post/dotnet-OpenXML-%E5%9B%BE%E7%89%87%E7%89%B9%E6%95%88%E7%9A%84-BiLevel-%E9%BB%91%E7%99%BD%E7%89%B9%E6%95%88%E4%BF%AE%E6%94%B9%E5%9B%BE%E7%89%87%E9%A2%9C%E8%89%B2

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