Fonts

Imagemagic convert 只渲染一些 utf-8 符號

  • December 9, 2021

Imagemagic 的convertutil(渲染簡單標籤功能)僅渲染部分 utf-8 符號。

這是範例:

convert -background white -fill black \
-density 600x600 -size 1346x756 -font DejaVu-Sans -gravity center \
'label:⌁ Electricity\n🔌 Chargers\n🔋 Powerbanks' \
out.pdf # or out.png

在此處輸入圖像描述

它僅渲染 ⌁ ,而不渲染其他 🔌、🔋 符號。

什麼是最方便、最合適的安裝方式以及如何安裝:我應該安裝更多字型還是使用更好的字型?

您可以嘗試使用Pango 標記語言來渲染缺少字形的字型:

convert -background white -fill black \                                                                                    
-density 72 -pointsize 72 -gravity center \
"pango:<span font='DejaVu-Sans'>⌁ Electricity\n🔌 Chargers\n🔋 Powerbanks</span>" \
out.png

Pango 渲染器嘗試使用指定的字型 ( DejaVu-Sans),但如果字形缺失,則回退到系統預設值。可能,您可以嵌套多個<span font='..'>..</span>結構以具有字型回退的層次結構。

我找到了字型’Symbola’,所以這行得通:

convert -background white -fill black \
-density 600x600 -size 1346x756 -font Symbola -gravity center \
'label:⌁ Electricity\n🔌 Chargers\n🔋 Powerbanks' \
out_with_Symbola.png

輸出:

在此處輸入圖像描述

感謝您的提示:

  • 這個imagemagick 論壇的文章
  • ArchLinux wiki 上的字型文章
  • 這個 unix.SE使用方便的程式碼段擷取了調試工作,用於生成具有所有字型的給定標籤以找出最佳字型

引用自:https://unix.stackexchange.com/questions/389035