设计实践

用 Canva 给一家咖啡小店做一套社交媒体品牌模板

用 Canva 给一家咖啡小店做一套社交媒体品牌模板:确定品牌色和字体,检查配色是否看得清,做出小红书封面、公众号头图、朋友圈海报三种尺寸的模板,以后每次发帖只改文字和照片。

BINBHO · 图文教程

用 Canva 给一家咖啡小店做一套社交媒体品牌模板:确定品牌色和字体,检查配色是否看得清,做出小红书封面、公众号头图、朋友圈海报三种尺寸的模板,以后每次发帖只改文字和照片。

先看清成品

成品是 Canva 里的一个品牌套件和三个模板。本文附带的配色检查脚本 contrast.py 已实际运行,2 个测试通过(黑白对比度 21.0、#777777 与白色为 4.48 等已知值),并输出了样例配色的对比度表。本文环境没有登录 Canva,界面操作没有实际执行,步骤按 Canva 帮助中心编写。

说明:中国大陆用户使用的是 Canva 可画(canva.cn),账号与国际版不通用,部分功能和素材可能不同。本文按国际版帮助中心编写,菜单名称以你看到的界面为准。

注意:只使用你有权使用的字体、照片和标志。Canva 模板和素材的商用范围以 Canva 许可协议为准;不要把他人的商标、明星照片用于商业宣传。

做完之后你会得到什么?

成果 说明
品牌套件 品牌色、字体、标志
配色检查表 哪些颜色组合能放文字
三个模板 竖版封面、横版头图、方形海报
使用规范 一页说明,交给店员也能用

需要准备哪些环境?

项目 要求 说明
Canva 账号 免费即可 免费版只有 1 个品牌套件、3 种颜色;Pro 有 5 个品牌套件(价格页)
标志 PNG(透明背景)或 SVG
Python 可选,3.8+ 运行配色检查脚本

第一步:怎样确定品牌色?

1. 选 3~4 个颜色

角色 示例 用途
主色 #1F3A5F 深蓝 标题、按钮
强调色 #F4B400 暖黄 价格、标签
背景色 #FFFFFF 白 大面积背景
文字色 #222222 近黑 正文

2. 检查文字是否看得清

"""品牌配色可读性检查:计算文字色和背景色的对比度(WCAG 2.x 公式),列出可以搭配的组合。
用法:python contrast.py "#1F3A5F" "#F4B400" "#FFFFFF" "#222222"
"""
import itertools
import sys


def luminance(hex_color: str) -> float:
    h = hex_color.lstrip("#")
    if len(h) != 6:
        raise ValueError(f"颜色格式应为 #RRGGBB:{hex_color}")
    def ch(v):
        c = int(v, 16) / 255
        return c / 12.92 if c <= 0.03928 else ((c + 0.055) / 1.055) ** 2.4
    r, g, b = (ch(h[i:i + 2]) for i in (0, 2, 4))
    return 0.2126 * r + 0.7152 * g + 0.0722 * b


def ratio(a: str, b: str) -> float:
    la, lb = sorted((luminance(a), luminance(b)), reverse=True)
    return round((la + 0.05) / (lb + 0.05), 2)


def grade(r: float) -> str:
    if r >= 7: return "AAA(任何文字都清楚)"
    if r >= 4.5: return "AA(正文可用)"
    if r >= 3: return "仅大字(标题、粗体大字)"
    return "不建议放文字"


def main(colors):
    print(f"{'文字色':<9}{'背景色':<9}{'对比度':<8}评级")
    for fg, bg in itertools.permutations(colors, 2):
        if fg < bg:  # 对比度与顺序无关,只列一次
            r = ratio(fg, bg)
            print(f"{fg:<9}{bg:<9}{r:<8}{grade(r)}")


if __name__ == "__main__":
    main([c.upper() for c in sys.argv[1:]] or ["#1F3A5F", "#F4B400", "#FFFFFF", "#222222"])
python contrast.py "#1F3A5F" "#F4B400" "#FFFFFF" "#222222"

本文实际输出:

文字色      背景色      对比度     评级
#1F3A5F  #F4B400  6.22    AA(正文可用)
#1F3A5F  #FFFFFF  11.48   AAA(任何文字都清楚)
#1F3A5F  #222222  1.39    不建议放文字
#F4B400  #FFFFFF  1.85    不建议放文字
#222222  #F4B400  8.62    AAA(任何文字都清楚)
#222222  #FFFFFF  15.91   AAA(任何文字都清楚)

结论:黄色不能放在白底上当文字,但黄底配深色字很好。WCAG 标准要求正文对比度至少 4.5。

测试:

from contrast import grade, ratio


def test_known_values():
    assert ratio("#000000", "#FFFFFF") == 21.0
    assert ratio("#FFFFFF", "#FFFFFF") == 1.0
    assert ratio("#777777", "#FFFFFF") == 4.48   # 常见的“差一点达到 AA”的灰色


def test_grade():
    assert grade(21).startswith("AAA") and grade(4.5).startswith("AA") and grade(3.2).startswith("仅大字") and grade(2).startswith("不建议")

第二步:怎样在 Canva 建品牌套件?

  1. 左侧 品牌(Brand)→ 创建品牌套件。
  2. 添加标志、颜色(免费版最多 3 种,把背景白色省掉)、字体(标题和正文各一种)。
  3. 以后在编辑器的颜色和字体面板里,品牌颜色会排在最前面。

第三步:怎样做三个模板?

模板 尺寸 建法
小红书封面 1242×1660 px(3:4) 创建设计 → 自定义尺寸
公众号头图 900×383 px 自定义尺寸
朋友圈海报 1080×1080 px 搜索“Instagram 帖子”方形尺寸

注意:各平台推荐尺寸会调整,以平台最新说明为准。

每个模板都按同一套规则:

元素 规则
标题 品牌标题字体,主色或近黑
价格/标签 黄底深色字
标志 固定在右下角,留边距
照片 放进相框(Frame),换图时自动裁切

做完后,在文件名前加“模板-”,例如“模板-小红书封面”。每次使用时先 复制,再改复制件。

第四步:怎样检查成品?

检查项 做法
手机上的可读性 下载 PNG 发到手机上看
文字是否被平台遮挡 小红书封面底部、头图两侧别放关键信息
颜色一致 三个模板并排放,看是否像同一家店

出问题时该怎么调?

1. 免费版颜色不够

只放主色、强调色、文字色,白色直接用默认白色。

2. 换照片后构图乱了

照片要放进相框而不是直接拖到画布上;双击相框可以调整裁切位置。

3. 字体显示不一样

上传的自定义字体需要 Pro;免费版从 Canva 自带字体里选。

常见问题怎么处理?

现象 原因 解决方法
想一键改尺寸 “调整大小”是 Pro 功能(价格页) 免费版分别建三个模板
下载后发糊 平台压缩 下载 PNG,尺寸用平台推荐值
黄字看不清 对比度不足 按检查表改为黄底深字
店员改坏了模板 直接编辑了原件 每次先复制
素材能否商用 许可范围 查看 Canva 许可协议

项目资源

用途 地址
品牌套件配色 https://www.canva.com/help/color-palettes/
WCAG 对比度说明(W3C) https://www.w3.org/WAI/WCAG22/Understanding/contrast-minimum.html
Canva 许可协议 https://www.canva.com/policies/content-license-agreement/
Canva 价格和计划对比 https://www.canva.com/pricing/
Canva 可画(中国大陆) https://www.canva.cn/

建议先用脚本定下配色,再做一个小红书封面模板,发两三次看效果。

满意后再扩展到另外两种尺寸,并写一页使用规范交给团队。