对身居国内的人士来说,为了应付各个机构和各种网站的要求,总要调整证件照,一会儿是像素大小,一会儿则是背景颜色。相应的,各种更换背景色的软件和服务层出不穷,也有人发现 Procreate1、PPT 甚至 Excel 都可以用来换背景。不过,这些方法毕竟是 Hack,且以购买了上述软件为前提。
暑假期间,有读者问我有无更换证件照背景的简便方法,恰好当时我只有一台手机(iPhone),遂考虑只用 Shortcuts 完成这一任务。目标是:免费、轻量且无需上传数据——证件照绝对属于隐私信息——给任何来路不明的第三方。
如何使用
本动作使用步骤简单,列入下:
- 直接运行动作后选择图片,或在相册中选定图片再运行动作;
- 选择需要的背景(自定义背景素材的方式请阅读后一节);
- 稍等几秒,Shortcuts 即可将原背景更换为选定的新背景。
鉴于移除背景需要用到机器学习功能,对机器性能有一定要求,较旧的机型有一定运行失败的可能,需要多尝试几次;而原图如果尺寸较大、来自单反相机直出,即便在最新的机型上也有崩溃可能,同样请多试几次,或压缩到普通证件照尺寸。
原理简析
实际上,iOS 15 以降,Shortcuts 已配备了去除背景的模块2,更换背景色的最大难关已被攻克,后续工作主要是动作细节的设计。本文实际上是另一次“内嵌图片+灵活处理”的例子,核心步骤如下:
- 将背景素材以 Base64 格式存储于词典中;
- 运行后,将选定的素材代码解析回图片;
- 将上述素材调整为照片的尺寸;
- 将照片叠放在背景素材上,完工。
![Alt text](https://cdn.utgd.net/assets/uploads/2022/00/minja-0704181142.jpeg)
此前的《用 Shortcuts 体面且有个性地展示二维码》《轻量级图片标注方案:Shortcuts 篇》等文章,都涉及了在 Shortcuts 中内嵌素材的技巧,并基于此灵活处理图片,可阅读前文了解更多的技术细节。关于 Shortcuts 中的词典模块,我在《给照片添加“徕卡风格水印”,兼谈 Shortcuts 中的字典》一文中有进一步结合实例的介绍,推荐阅读。
本文需要进一步说明的,主要是内嵌素材。就更换背景色而言,大体有两条思路(当然都是不借助外部资源的),一种是仅存储颜色编码,再临时生成网页并提取背景图片;另一种则是本文所采取的低技术路径,即直接把背景图片转为 Base64 编码,以文本形式嵌入 Shortcuts 动作。两相比较,前一种方式虽然看上去更酷,但只能生成纯色背景3,而在实际使用中,纯色背景的效果可能并不好,看上去会太刺眼——纵观比较靠谱的摄影馆,往往会使用渐变背景或有纹理的背景。
![Alt text](https://cdn.utgd.net/assets/uploads/2022/00/minja-0704181215.png)
你可以继续增加词典条目(Text 格式),其中的键(key)可任意命名,在运行 Shortcuts 动作时会显示于背景选择列表中;值(value)则是编码后的背景素材,如前文所述,推荐使用渐变色(例如顶部深蓝、底部浅蓝),当然,如接收照片的一方有要求,当然以其为先。为获取编码,可以使用这个辅助 Shortcuts 动作。
小结
如此在意 Shortcuts 动作的内部设计,有何实际意义吗?诚然,在性能日新月异的设备上,丑陋的动作和优美的动作可能性能差别不大,延迟区别感受不明显;但在技术上,结构更美观的动作显然更容易维护,无论是对别人还是对未来的自己。
或许,至少,一如 Jobs 所言,那些机箱内部用户看不见的东西,上帝会看见。
🛍 我撰写的付费栏目《独辟蹊径:Shortcuts 设计之道》正在 UNTAG 售卖,详解进阶 Shortcuts 动作设计与管理思路:付费内容链接
![Keyboard Maestro 进阶指引](https://cdn.utgd.net/images/products/2023/12/付费教程封面设计-独辟蹊径Shortcuts_设计之道02.png)