本文整理汇总了Python中caca.canvas.Canvas.render方法的典型用法代码示例。如果您正苦于以下问题:Python Canvas.render方法的具体用法?Python Canvas.render怎么用?Python Canvas.render使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类caca.canvas.Canvas
的用法示例。
在下文中一共展示了Canvas.render方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from caca.canvas import Canvas [as 别名]
# 或者: from caca.canvas.Canvas import render [as 别名]
def main():
""" Main function. """
try:
cv = Canvas(8, 2)
except CanvasError as err:
sys.stderr.write("%s\n" % err)
sys.exit(127)
cv.set_color_ansi(caca.COLOR_WHITE, caca.COLOR_BLACK)
cv.put_str(0, 0, "ABcde")
cv.set_color_ansi(caca.COLOR_LIGHTRED, caca.COLOR_BLACK)
cv.put_str(5, 0, "\\o/")
cv.set_color_ansi(caca.COLOR_WHITE, caca.COLOR_BLUE)
cv.put_str(0, 1, "&$âøÿØ?!")
fonts = caca.get_font_list()
if not fonts:
sys.stderr.write("libcaca was compiled without any fonts\n")
sys.exit(127)
try:
f = Font(fonts[0])
except FontError as err:
sys.stderr.write("%s\n" % err)
sys.exit(127)
w = cv.get_width() * f.get_width()
h = cv.get_height() * f.get_height()
buf = ctypes.c_buffer(4 * w * h)
cv.render(f, buf, w, h, 4 * w)
cv.set_size(80, 32)
try:
dp = Display(cv)
except DisplayError as err:
sys.stderr.write("%s\n" % err)
sys.exit(127)
try:
if sys.byteorder == 'big':
dit = Dither(32, w, h, 4 * w, 0xff0000, 0xff00, 0xff, 0xff000000)
else:
dit = Dither(32, w, h, 4 * w, 0xff00, 0xff0000, 0xff000000, 0xff)
dit.bitmap(cv, 0, 0, cv.get_width(), cv.get_height(), buf)
except DitherError as err:
sys.stderr.write("%s\n" % err)
sys.exit(127)
else:
dp.refresh()
dp.get_event(caca.EVENT_KEY_PRESS, Event(), -1)