程序员玩转图片九宫格
- 13 Aug, 2024

1. 介绍
图片转九宫格,相信大家并不陌生了,也有很多APP可以实现这个。在代码世界中也有很多方法可以实现,但是这都需要在电脑上实现。但自从发现了ISH这个神奇的软件,一切都有了实现的基础了。
技术的意义本就在于折腾,所以今天我尝试在iPhone上使用代码的方式来实现这个功能,有兴趣的或者有一定技术能力的可以跟着我的步骤一起尝试下,还是十分容易的
这难道不比使用其他软件来实现要酷的多 哈哈
2. 准备工作
- 下载并安装 iSH:
- 打开你的 iPhone,进入 App Store。
- 搜索 “iSH”,点击 “获取” 按钮安装应用。
- 启动 iSH 并更新软件包:
-
打开 iSH 应用程序,你会看到一个类似终端的界面。
-
首先,更新软件包列表。输入以下命令,并点击回车:
bash复制代码 apk update
-
接着,安装
ImageMagick
,这是一个用于处理图片的工具:bash复制代码 apk add imagemagick
-
3. 准备图片
- 将图片导入 iSH:
- 目前 iSH 无法直接访问 iPhone 的相册,所以你需要先将图片上传到 iSH 能访问的目录中。
- 你可以使用 iSH 的文件管理器功能
-
在照片中找到你喜欢的图片
-
点击分享,选择存储到文件,找到ISH
-
选择你想要存储的位置,我选择在usr目录下新建了一个image目录
-
选择存储即可
-
- 检查图片文件:
-
在 iSH 中,使用以下命令进入存放图片的目录:
bash复制代码 cd /usr/image
-
使用
ls
命令查看文件,确认图片文件存在:你应该能看到图片文件的名字,如Base.PNG
。bash复制代码 ls
-
4. 将图片裁剪为九宫格
- 执行裁剪命令:
-
在图片所在目录中,输入以下命令来将图片裁剪成九宫格:
bash复制代码 convert Base.PNG -crop 3x3@ +repage +adjoin output-%d.jpg
-
执行成功后,图片将被分割成九个部分,分别保存为
output-0.jpg
到output-8.jpg
。
-
5. 检查和导出结果
- 查看裁剪后的图片:
-
你可以使用
ls
命令查看生成的九张图片:bash复制代码 ls
-
你将看到名为
output-0.jpg
到output-8.jpg
的九个文件。
-
- 将图片导出到 iPhone:
- 因为 iSH 无法直接访问 iPhone 的相册,你可以使用
iSH
文件管理功能或第三方工具将生成的图片导出。 - 这样你就可以在 iPhone 的相册中查看裁剪好的九宫格图片了。
- 因为 iSH 无法直接访问 iPhone 的相册,你可以使用
成品效果
![]() | ![]() | ![]() |
---|---|---|
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
如果想要来个心型的九宫图
可以参考这段代码
- 制作心型蒙版 ,因为我的图片是4032x3024 所以我制作这么大的蒙版
convert -size 4032x3024 xc:none -fill white -draw 'path "M 2016,1512 C 2016,0 4032,0 4032,1512 A 2016,1512 0 1,1 0,1512 C 0,0 2016,0 2016,1512 Z"' heart_mask.png
-
将心形蒙版应用到HEIF图片
input.heic: 你的原始HEIF图片。
-resize 4032x3024: 确保图片与蒙版尺寸一致。
-gravity center: 将心形蒙版居中对齐。
-composite: 应用心形蒙版。
-compose CopyOpacity: 使用蒙版的透明度信息来裁剪图片。
heart_cropped.png: 输出的心形裁剪图片。
convert Base.HEIC -resize 4032x3024 -gravity center -composite -compose CopyOpacity heart_mask.png heart_cropped.png
- 将心形图片分割为九宫格
convert heart_cropped.png -crop 3x3@ +repage +adjoin outputs-%d.jpg
6. 总结和延展
在这个教程中,你学习了如何使用 iSH 和 ImageMagick
工具在 iPhone 上将图片裁剪成九宫格。通过这些简单的命令行操作,你可以进一步探索更多图片处理的可能性,比如调整图片大小、添加水印、生成 GIF 动图等。希望你在这个过程中不仅学会了技巧,还感受到了技术的乐趣!