一键导入
slack-gif-creator-zh
用于创建针对 Slack 优化的动画 GIF 的知识和工具。提供约束条件、验证工具和动画概念。当用户请求创建用于 Slack 的动画 GIF 时使用,例如"为 Slack 制作一个 X 做 Y 的 GIF"。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
用于创建针对 Slack 优化的动画 GIF 的知识和工具。提供约束条件、验证工具和动画概念。当用户请求创建用于 Slack 的动画 GIF 时使用,例如"为 Slack 制作一个 X 做 Y 的 GIF"。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
创建高质量 MCP (Model Context Protocol) 服务器的指南,使 LLM 能够通过精心设计的工具与外部服务交互。用于构建 MCP 服务器以集成外部 API 或服务,支持 Python (FastMCP) 或 Node/TypeScript (MCP SDK)。
使用 p5.js 创建算法艺术,具有种子随机性和交互式参数探索。当用户请求使用代码创建艺术、生成艺术、算法艺术、流场或粒子系统时使用此技能。创作原创算法艺术而非复制现有艺术家的作品以避免版权侵权。
将 Anthropic 官方品牌颜色和字体应用于任何可能受益于 Anthropic 外观和感觉的产物。当需要应用品牌颜色、样式指南、视觉格式或公司设计标准时使用。
使用设计哲学在 .png 和 .pdf 文档中创建精美的视觉艺术。当用户要求创建海报、艺术作品、设计或其他静态作品时应使用此技能。创作原创视觉设计,绝不复制现有艺术家的作品以避免侵犯版权。
引导用户通过结构化工作流程共同创作文档。当用户想要编写文档、提案、技术规范、决策文档或类似结构化内容时使用。此工作流程帮助用户高效传递上下文、通过迭代完善内容,并验证文档对读者是否有效。当用户提到编写文档、创建提案、起草规范或类似文档任务时触发。
当用户想要创建、读取、编辑或操作 Word 文档(.docx 文件)时使用此技能。触发条件包括:任何提及「Word 文档」、「word document」、「.docx」,或请求生成带有格式化内容(如目录、标题、页码或信头)的专业文档。当从 .docx 文件中提取或重组内容、在文档中插入或替换图片、在 Word 文件中执行查找替换、处理修订或批注,或将内容转换为精美的 Word 文档时也应使用。如果用户要求生成「报告」、「备忘录」、「信函」、「模板」或类似的 Word 或 .docx 文件交付物,请使用此技能。不要用于 PDF、电子表格、Google Docs 或与文档生成无关的通用编码任务。
| name | slack-gif-creator-zh |
| description | 用于创建针对 Slack 优化的动画 GIF 的知识和工具。提供约束条件、验证工具和动画概念。当用户请求创建用于 Slack 的动画 GIF 时使用,例如"为 Slack 制作一个 X 做 Y 的 GIF"。 |
| license | 完整条款见 LICENSE.txt |
一个提供实用工具和知识的工具包,用于创建针对 Slack 优化的动画 GIF。
尺寸:
参数:
from core.gif_builder import GIFBuilder
from PIL import Image, ImageDraw
# 1. 创建构建器
builder = GIFBuilder(width=128, height=128, fps=10)
# 2. 生成帧
for i in range(12):
frame = Image.new('RGB', (128, 128), (240, 248, 255))
draw = ImageDraw.Draw(frame)
# 使用 PIL 基本图形绘制动画
# (圆形、多边形、线条等)
builder.add_frame(frame)
# 3. 优化保存
builder.save('output.gif', num_colors=48, optimize_for_emoji=True)
如果用户上传了图像,请考虑他们是否想要:
使用 PIL 加载和处理图像:
from PIL import Image
uploaded = Image.open('file.png')
# 直接使用,或仅作为颜色/风格参考
从零开始绘制图形时,使用 PIL ImageDraw 基本图形:
from PIL import ImageDraw
draw = ImageDraw.Draw(frame)
# 圆形/椭圆
draw.ellipse([x1, y1, x2, y2], fill=(r, g, b), outline=(r, g, b), width=3)
# 星形、三角形、任意多边形
points = [(x1, y1), (x2, y2), (x3, y3), ...]
draw.polygon(points, fill=(r, g, b), outline=(r, g, b), width=3)
# 线条
draw.line([(x1, y1), (x2, y2)], fill=(r, g, b), width=5)
# 矩形
draw.rectangle([x1, y1, x2, y2], fill=(r, g, b), outline=(r, g, b), width=3)
不要使用: 表情符号字体(跨平台不可靠)或假设此技能中存在预打包的图形。
图形应该看起来精致且富有创意,而不是基础的。以下是方法:
使用更粗的线条 - 始终为轮廓和线条设置 width=2 或更高。细线(width=1)看起来粗糙且业余。
增加视觉深度:
create_gradient_background)让形状更有趣:
注意颜色:
对于复杂形状(心形、雪花等):
发挥创意并注重细节!一个好的 Slack GIF 应该看起来精致,而不是像占位符图形。
core.gif_builder)组装帧并针对 Slack 进行优化:
builder = GIFBuilder(width=128, height=128, fps=10)
builder.add_frame(frame) # 添加 PIL 图像
builder.add_frames(frames) # 添加帧列表
builder.save('out.gif', num_colors=48, optimize_for_emoji=True, remove_duplicates=True)
core.validators)检查 GIF 是否符合 Slack 要求:
from core.validators import validate_gif, is_slack_ready
# 详细验证
passes, info = validate_gif('my.gif', is_emoji=True, verbose=True)
# 快速检查
if is_slack_ready('my.gif'):
print("准备就绪!")
core.easing)平滑运动而不是线性运动:
from core.easing import interpolate
# 进度从 0.0 到 1.0
t = i / (num_frames - 1)
# 应用缓动
y = interpolate(start=0, end=400, t=t, easing='ease_out')
# 可用选项:linear、ease_in、ease_out、ease_in_out、
# bounce_out、elastic_out、back_out
core.frame_composer)常见需求的便利函数:
from core.frame_composer import (
create_blank_frame, # 纯色背景
create_gradient_background, # 垂直渐变
draw_circle, # 圆形辅助工具
draw_text, # 简单文本渲染
draw_star # 5 角星
)
用振荡偏移对象位置:
math.sin() 或 math.cos() 配合帧索引有节奏地缩放对象大小:
math.sin(t * frequency * 2 * math.pi) 实现平滑脉冲对象下落并弹跳:
interpolate() 配合 easing='bounce_out' 实现着陆easing='ease_in' 实现下落(加速)围绕中心旋转对象:
image.rotate(angle, resample=Image.BICUBIC)逐渐出现或消失:
Image.blend(image1, image2, alpha)将对象从屏幕外移动到位置:
interpolate() 配合 easing='ease_out' 实现平滑停止easing='back_out'缩放和定位以实现缩放效果:
创建向外辐射的粒子:
x += vx、y += vyvy += gravity_constant仅当要求缩小文件大小时,实施以下几种方法:
num_colors=48 而不是 128remove_duplicates=Trueoptimize_for_emoji=True 自动优化# 表情的最大优化
builder.save(
'emoji.gif',
num_colors=48,
optimize_for_emoji=True,
remove_duplicates=True
)
此技能提供:
它不提供:
关于用户上传的说明:此技能不包含预构建的图形,但如果用户上传图像,请使用 PIL 加载并处理它 - 根据他们的请求解释他们是想直接使用还是仅作为灵感来源。
发挥创意!结合概念(弹跳 + 旋转、脉冲 + 滑动等)并充分利用 PIL 的能力。
pip install pillow imageio numpy