关于 asc-screenshot-resize
此技能使用 asc CLI 和图像工具准备 App Store Connect 截图,涵盖查询尺寸要求、清理和调整图像、验证输出,并在验证后上传。
主要功能
- 01查询受支持的截图尺寸
- 02检查图像尺寸和元数据
- 03移除透明通道并调整图像尺寸
- 04上传前验证截图
- 05处理时保留原始文件
适用场景
- 01准备提交用的 iPhone 或 iPad 截图
- 02将图像调整为指定设备尺寸
- 03上传前检查截图文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ rorkai/ app-store-connect-cli-skills --skill asc-screenshot-resize安装后在 Claude Code 中输入/asc-screenshot-resize确认已加载。
详细介绍
asc 截图调整尺寸
使用此技能为 App Store Connect 准备截图。不要在此技能中依赖硬编码的尺寸表;当前尺寸矩阵由 CLI 提供。
信息来源
始终先通过 asc 查询当前接受的尺寸:
asc screenshots sizes --output table
asc screenshots sizes --all --output table
上传前进行本地验证:
asc screenshots validate --path "./screenshots/iphone" --device-type "IPHONE_65" --output table
asc screenshots validate --path "./screenshots/ipad" --device-type "IPAD_PRO_3GEN_129" --output table
常见设备类型参考:
IPHONE_65对应常见的 6.5 英寸 iPhone 截图集。IPAD_PRO_3GEN_129对应常见的 12.9/13 英寸 iPad 截图集。
如果目标是其他显示类型,例如 6.9 英寸 iPhone、Apple TV、Mac、Vision Pro、iMessage 或 Watch,请运行 asc screenshots sizes --all。
工作流
1. 清理文件名
macOS 截图中可能含有不可见的 Unicode 空格,导致工具报错“不是有效文件”。批量处理前请先清理:
python3 -c "
import os
for f in os.listdir('.'):
clean = f.replace('\u202f', ' ')
if f != clean:
os.rename(f, clean)
print(f'Renamed: {clean}')
"
2. 检查尺寸和元数据
sips -g pixelWidth -g pixelHeight screenshot.png
sips -g hasAlpha -g space screenshot.png
App Store Connect 会拒绝带有 Alpha 透明度的截图。通过转换为 JPEG 再转回的方式移除 Alpha:
sips -s format jpeg input.png --out /tmp/asc-screenshot-no-alpha.jpg
sips -s format png /tmp/asc-screenshot-no-alpha.jpg --out output.png
rm /tmp/asc-screenshot-no-alpha.jpg
批量移除 PNG 的 Alpha:
for f in *.png; do
if sips -g hasAlpha "$f" | grep -q "yes"; then
sips -s format jpeg "$f" --out /tmp/asc-screenshot-no-alpha.jpg
sips -s format png /tmp/asc-screenshot-no-alpha.jpg --out "$f"
rm /tmp/asc-screenshot-no-alpha.jpg
echo "Stripped alpha: $f"
fi
done
3. 先从 asc 选择目标尺寸,再调整大小
从 asc screenshots sizes --all 中选择宽度和高度。sips -z 的参数顺序是先高度、后宽度:
# Example: portrait IPHONE_65 1284 x 2778
sips -z 2778 1284 input.png --out output.png
批量调整为选定的目标尺寸:
mkdir -p resized
for f in *.png; do
sips -z 2778 1284 "$f" --out "resized/$f"
done
4. 使用 asc 验证输出
sips -g pixelWidth -g pixelHeight -g hasAlpha resized/*.png
asc screenshots validate --path "./resized" --device-type "IPHONE_65" --output table
5. 验证通过后再上传
asc screenshots upload --version-localization "LOC_ID" --path "./resized" --device-type "IPHONE_65" --dry-run --output table
asc screenshots upload --version-localization "LOC_ID" --path "./resized" --device-type "IPHONE_65"
注意事项
- 以
asc screenshots sizes --all为准;Apple 的尺寸要求会变化。 - 除非用户接受视觉效果上的取舍,否则不要将截图拉伸为不兼容的宽高比。
- 始终输出到单独的文件或目录,以保留原始文件。
- 截图必须为 PNG 或 JPEG 格式,且不得包含 Alpha 透明度。
- 必要时将 Display P3 或其他色彩空间转换为 sRGB:
sips -m "/System/Library/ColorSync/Profiles/sRGB IEC61966-2.1.icc" input.png --out output.png
- 上传前优先使用
asc screenshots validate,而非目视检查。
评论
支持 Markdown