You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Wand输出文本时Unicode字符被忽略的问题咨询

解决Wand渲染Unicode特殊字符不显示的问题

问题核心是默认字体不支持特殊Unicode字符。Wand依赖ImageMagick运行,默认会调用系统自带的基础字体,这类字体通常只包含常见字母、数字,像≛、▴这类少见符号不在其字符集内,自然会被忽略渲染。

解决方案:指定支持完整Unicode的字体

在代码里明确指定一款覆盖全Unicode字符集的字体即可,比如macOS自带的「PingFang SC」,或者通过Homebrew安装的Noto系列字体。

修改后的代码示例

#!/usr/bin/python3

import os
import wand
from wand.image import Image
from wand.drawing import Drawing
from wand.color import Color

with Drawing() as draw:
    draw.fill_color = Color('black')
    draw.font_size = 20
    # 指定macOS自带的PingFang SC字体,支持绝大多数Unicode特殊字符
    draw.font = "PingFang SC"
    draw.text(20, 100, 'A')
    draw.text(60, 100, '≛')
    draw.text(100, 100, '▴')
    draw.text(140, 100, 'Z')
    with Image(width=200, height=200, background=Color('yellow')) as img:
        draw(img)
        img.save(filename='example.png')

其他可选字体方案

  • 如果偏好Noto字体,先通过Homebrew安装:brew install noto-fonts,再在代码里指定字体路径:
    draw.font = "/usr/local/opt/noto-fonts/Library/Fonts/NotoSansCJKsc-Regular.otf"
    
  • 若系统已安装「Arial Unicode MS」,也可直接指定该字体名称。

运行修改后的代码,特殊字符就能正常显示在生成的图片中了。

内容的提问来源于stack exchange,提问作者raindog308

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 08:52:39