該模塊在Micropython的FrameBuf模塊中擴展了FrameBuffer類。它可以使用flamebuf模塊中提供的內置字體來繪製雙,三重,四倍和較大尺寸的文本,從而繪製框架的尺寸文本。
還包括繪製三角形和圓圈的方法。這些只能大綱或填充。
該模塊已在帶有128x128像素SH1107顯示屏的Raspberry Pi Pico上進行了測試。它應該與所有微python Framebuffer對像一起使用。
large_text(s, x, y, m [, c=1] [, r=0 [, t=None]])
使用x和y坐標作為文本的左上角,將文本s寫成框架。文本的顏色可以通過可選參數c來定義,但否則默認值為1。參數m設置了文本的大小倍數。帶有“ FrameBuffer.text()”方法的文本的正常大小為8x8像素。這將是1的倍數。要獲得更大的文本輸出,例如,使用16x16像素字符,例如使用2用於M參數。可選參數R控製文本的旋轉,0度為默認值,90、180和270度。另外,T參數使字符串中的單個字符獨立旋轉至0、90、180或270度。
circle(x0, y0, radius, c [, f:bool] )
在x0, y0上繪製一個圓圈,帶有指定的radius和邊框顏色c (整數)。通過添加f=True ,可選地填充圓圈。
triangle(x0, y0, x1, y1, x2, y2, c [, f:bool] )
在點x0,y0 , x1,y1和x2,y2和Border Color, c (Integer)上繪製帶頂點的三角形。通過添加f=True ,可選地填充圓圈。
示例使用:
# display is a framebuffer object
display.large_text('double', 0, 0, 2, 1) # double size text
display.large_text('size!', 0, 16, 2, 1)
display.large_text('HUGE', 0, 32, 4, 1) # quadruple size text
# draw a circle centred at point (x=64, y=64) with radius 56 and colour 1.
display.circle(64, 64, 56 , c=1)
display.circle(64, 64, 48 , c=1, f=True) # filled circle
# draw a filled triangle with corners at (x=0, y=0), (x=0, y=127) and (x=127, y=127)
# filled with colour 1.
display.triangle(0, 0, 0, 127, 127, 127, c=1, f=True)
此SH1107顯示驅動程序的示例代碼中包含其他示例
使用以下內容導入模塊並擴展Framebuffer類。
import framebuf2 as framebuf
然後,除了所有標準方法之外,FrameBuffer類還將提供這些其他方法。
使用Micropython版本1.19.1。還將與其他版本一起使用。