graphicsmagick - Unicode drawText "Right to Left"GraphicsMagick 中节点的语言问题

标签 graphicsmagick

我正在使用GraphicsMagick for node并尝试在“乌尔都语/阿拉伯语”的图像上绘制文本,该文本“??”,文本正在输出图像上绘制,但它是“从左到右”绘制的,而它必须是“从右到左”作为阿拉伯语/乌尔都语是“从右到左”的语言。

gm("/file.png")
             .fill('#FF0066')
             .drawText(100, -150, "السلام عليكم", 'Center')
             .font("/alvi_Nastaleeq.ttf")
             .fontSize('38px')
             .encoding('Unicode')

输出图像:

enter image description here

如果我尝试使用反向乌尔都语“????????”字符串,即使文本未正确绘制。

enter image description here

我做错了什么?我该如何修复它?

谢谢

最佳答案

我正在寻找同样的东西,我发现
您需要启用text_shaping选项
您需要使用 --enable-libfribidi 配置 FFmpeg
在这里阅读有关 text_shaping 的内容
https://ffmpeg.org/ffmpeg-filters.html#Syntax
我没有测试过,但我会测试, 当我得到结果时,我将在此处发布代码
我希望我已经指出你了 这是我用来制作这样的视频的工作代码 enter image description here

ffmpeg -y -loop 1 -framerate 25 -i bachground-img.jpg -vf "drawtext=text_shaping=1:fontfile=C\/:/Windows/Fonts/tradbdo.ttf:\
textfile=text-new.txt:fontcolor=white:fontsize=75:x=(w-tw)/2:y=h-25*t:" -t 45 -pix_fmt yuv420p output.mp4

关于graphicsmagick - Unicode drawText "Right to Left"GraphicsMagick 中节点的语言问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31753132/

相关文章:

c++ - 如何获取 graphicsmagick 的头文件

node.js - Graphicsmagick 中的合成图像

go - cgo 和 pkg 配置

objective-c - 用于 iPhone 开发的 GraphicsMagick

security - 与GraphicsMagick等效的policy.xml文件,用于处理像素洪水DOS攻击

image - 在 ImageMagick/GraphicsMagick 中从文件中间读取图像

https - 让 GraphicsMagick 从 https url 打开文件?

node.js - 如何使用 GraphicsMagick 和 Node.js 编辑 HDRI 图像的曝光?

node.js - nodejs gm 模块脚本用于将大的多页 tiff 文件拆分为多个单图像

batch-file - Mogrify 子文件夹并保留原始目录结构