是否可以在Python代碼中加載Latex包(如使用\usepackage
)?例如,我想生成a variant font of the Greek letter \tau。在Python中加載latex包(特別是對於符號/字母的變體)
Detexify建議在Latex中加載upgreek
包,然後使用\uptau
作爲符號。
如果這是不可能的,可以採取什麼樣的替代方法?
是否可以在Python代碼中加載Latex包(如使用\usepackage
)?例如,我想生成a variant font of the Greek letter \tau。在Python中加載latex包(特別是對於符號/字母的變體)
Detexify建議在Latex中加載upgreek
包,然後使用\uptau
作爲符號。
如果這是不可能的,可以採取什麼樣的替代方法?
你想對這些角色做什麼?
據我所知,python不會原生支持這一點,因爲它無法將這些字符打印到shell。它只有natively supports unicode。有一些希臘字符可用。
如果你想顯示它們,那麼matplotlib可能是一個很好的開始。
的確,我想在劇情的傳說/標籤中使用它。 (我需要編輯我的問題嗎?) – hbaromega
然後我會按照matplotlib鏈接;如果你想使用包,你可能不得不使用自己的LaTeX來構建它,而不是使用內置的。你可以在這裏找到更多細節(https://matplotlib.org/users/usetex.html#usetex-tutorial)。 –
謝謝,但鏈接並不知道如何加載TeX軟件包。我發現使用'pgf'很有用,可以在這裏找到演示(https://matplotlib.org/users/pgf.html)。對於我的例子,我已經用'\ upgreek'軟件包進行了測試,併成功地呈現了'\ uptau'符號。 :) – hbaromega
現代TeX引擎支持TrueType(ttf)和OpenType(otf)格式的字體。
使用Python bindings(example)至cairo
和pango
庫,你應該能夠使用這些字體。可以使用freetype-py。這將從字體加載字符作爲位圖。
如果沒有關於字體的更多信息,哪一個最適合您的目的很難說。 如果你想輸出PDF或SVG格式的文本小部分,cairo
將是要走的路。
據我所知,Python(也不是cairo)都不能處理MetaFont字體。
第三種方法是讓腳本輸出(La)TeX代碼,然後讓TeX引擎渲染它。如果您需要渲染大量文本,這將是我的選擇,因爲TeX可以處理格式化,斷行連字符和其他排版相關問題。
最後經過幾次搜索,我發現'pgf'在'matplotlib'上下文中很有用,這個鏈接有一些工作示例:https://matplotlib.org/users/pgf.html。 – hbaromega