python - PIL:我可以有多种尺寸的相同字体的文本吗?(Python)
问题描述
目前正在尝试为具有 PIL 但大小不同的图像使用相同的字体。
试图有两个不同的字体实例,但它没有工作。我怎样才能做到这一点?
解决方案
如果您使用ImageFont.truetype()
,您将需要多个实例以用于多种尺寸。
您可以使用它巧妙地包装它,functools.lru_cache()
以便在您的应用程序期间仅加载一次单一字体/大小:
from functools import lru_cache
get_font = lru_cache()(ImageFont.truetype)
draw.text((10, 10), "hello", font=get_font("Arial.ttf", 10))
draw.text((10, 50), "world", font=get_font("Arial.ttf", 50))
推荐阅读
- node.js - 在批量插入时,确保 checkid/promise 在下次调用之前解决
- python - Django 'TestForm' 对象没有属性 'fields'
- hyperledger-fabric - startFabric.sh 失败,找不到 docker compose 命令
- javascript - Safari 和 IE11 中的 Angular 5 应用服务器请求错误
- javascript - 将 getElement 从 Id 更改为 Tag (body)
- python - python-使用 urllib 检索网页内容,但得到的内容与我使用浏览器获得的内容不同
- android - 无法从 Windows 上的 React Native 项目生成 Android Apk
- android - RecyclerView 的滚动不起作用到底部
- sql - ORA-29279: SMTP 永久错误: 530 需要 5.7.0 身份验证
- java - Java - 同步无助于互斥