在windows下Python打印彩色字体的方法

yipeiwu_com6年前Python基础

本文讲述了Python在windows下打印彩色字体的方法。分享给大家供大家参考,具体如下:

################################################################# 
import ctypes 
STD_INPUT_HANDLE = -10 
STD_OUTPUT_HANDLE = -11 
STD_ERROR_HANDLE = -12 
FOREGROUND_BLACK = 0x0 
FOREGROUND_BLUE = 0x01 # text color contains blue. 
FOREGROUND_GREEN = 0x02 # text color contains green. 
FOREGROUND_RED = 0x04 # text color contains red. 
FOREGROUND_INTENSITY = 0x08 # text color is intensified. 
BACKGROUND_BLUE = 0x10 # background color contains blue. 
BACKGROUND_GREEN = 0x20 # background color contains green. 
BACKGROUND_RED = 0x40 # background color contains red. 
BACKGROUND_INTENSITY = 0x80 # background color is intensified. 
 class Color: 
 ''''''' See http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/windows_api_reference.asp 
 for information on Windows APIs.''' 
 std_out_handle = ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE) 
 def set_cmd_color(self, color, handle=std_out_handle): 
 """(color) -> bit 
 Example: set_cmd_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY) 
 """ 
 bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color) 
 return bool 
 def reset_color(self): 
 self.set_cmd_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE) 
 def print_red_text(self, print_text): 
 self.set_cmd_color(FOREGROUND_RED | FOREGROUND_INTENSITY) 
 print print_text 
 self.reset_color() 
 def print_green_text(self, print_text): 
 self.set_cmd_color(FOREGROUND_GREEN | FOREGROUND_INTENSITY) 
 print print_text 
 self.reset_color() 
 def print_blue_text(self, print_text): 
 self.set_cmd_color(FOREGROUND_BLUE | FOREGROUND_INTENSITY) 
 print print_text 
 self.reset_color() 
 def print_red_text_with_blue_bg(self, print_text): 
 self.set_cmd_color(FOREGROUND_RED | FOREGROUND_INTENSITY | BACKGROUND_BLUE | BACKGROUND_INTENSITY) 
 print print_text 
 self.reset_color() 
clr = Color() 
# clr.print_red_text('red') 
# clr.print_green_text('green') 
# clr.print_blue_text('blue') 
# clr.print_red_text_with_blue_bg('background') 
################################################################# 

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python的互斥锁与信号量详解

并发与锁 多个线程共享数据的时候,如果数据不进行保护,那么可能出现数据不一致现象,使用锁,信号量、条件锁 互斥锁 1. 互斥锁,是使用一把锁把代码保护起来,以牺牲性能换取代码的安全...

python启动应用程序和终止应用程序的方法

1. 目的 每天上班,工作需要,电脑上需要每天开机启动一些软件,下班时候,需要关掉一些软件。一个一个打开和关闭貌似是很繁琐的,于是乎,这个脚本产生了。 2. 环境 系统环境: - win...

Python利用Beautiful Soup模块创建对象详解

安装 通过 pip 安装 Beautiful Soup 模块:pip install beautifulsoup4 。 还可以使用 PyCharm IDE 来写代码,在 PyChar...

Python中pygal绘制雷达图代码分享

Python中pygal绘制雷达图代码分享

pygal的安装和简介,大家可以参阅《pip和pygal的安装实例教程》,下面看看通过pygal实现绘制雷达图代码示例。 雷达图(Radar): import pygal rada...

Fabric 应用案例

示例1:文件打包,上传与校验 我们时常做一些文件包分发的工作,实施步骤一般是先压缩打包,在批量上传至目标服务器,最后做一致性校验,本案例通过put()方法实现文件的上传,通过对比本地与远...