ex_paint
1.0.0
Expaint是一個簡單的2D柵格器,基於EGD庫(至少目前)。可用的原始圖包括線,矩形,弧,多邊形和簡單的位圖字體支持。支持所得位圖的傾倒以幾種形式支持,包括基於SSD1322的OLED顯示器所使用的4位灰度格式。
該庫暫時傾向於EGD,但最終的意圖是使用諸如二進製文件之類的件桌子來實現優化的保留模式備份商店,以提供表現的合奏 /傾銷。
alias ExPaint . { Font , Color }
{ :ok , image } = ExPaint . create ( 128 , 64 )
font = Font . load ( "Helvetica20" )
ExPaint . clear ( image )
ExPaint . text ( image , { 10 , 30 } , font , "Hello World" , Color . black ( ) )
ExPaint . filled_rect ( image , { 10 , 10 } , { 20 , 20 } , % Color { r: 230 , g: 12 , b: 34 } )
ExPaint . filled_ellipse ( image , { 50 , 10 } , { 20 , 20 } , % Color { r: 12 , g: 12 , b: 230 } )
ExPaint . filled_triangle ( image , { 90 , 30 } , { 100 , 10 } , { 110 , 30 } , % Color { r: 230 , g: 230 , b: 34 } )
# Write to a png
{ :ok , png_data } = ExPaint . render ( image , ExPaint.PNGRasterizer )
File . write ( "foo.png" , png_data )
# If you're in iTerm, display inline
ExPaint . render ( image , ExPaint.InlineRasterizer )
# If you're pairing with https://github.com/mtrudel/ssd1322
{ :ok , four_bit_data } = ExPaint . render ( image , ExPaint.FourBitGreyscaleRasterizer )
SSD1322 . draw ( session , four_bit_data )將呈現以下圖像:

可以通過將ex_paint和egd添加到您的mix.exs中的依賴項列表中來安裝此軟件包:
def deps do
[
{ :ex_paint , "~> 0.2.0" } ,
{ :egd , github: "erlang/egd" }
]
end可以在https://hexdocs.pm/ex_paint上找到文檔。
為了易於安裝,此軟件包包括/priv/fonts/文件夾中此字體集合的內容。