最近因为项目上需要用到这个字体图标,但是它里面的许多也不能完全满足项目需要,因此就考虑将这个图标导出,然后自己再添加一些其他图标使用
搜索了些解决方案,如:http://www.oschina.net/translate/how-to-convert-font-awesome-to-png-icons,但是上面的步骤过于简单,一个新手完全不会使用,比如Python自己就一点都没接触过,因此自己走了许多弯路。
本文一方面记录以便以后自己再次使用,最重要的是将我自己的每个步骤详细的展现给有需要的大家,希望对大家有帮助。
好 还请留个好评
本文涉及所有资源可以到我的百度云下载:
第一步 下载图标字体源文件:

包含以下文件:


第二步 安装python-2.7.9(我电脑是64位的,截图也是64位,实际上只能安装32位,64位图标处理库(第二部会安装以处理图片)找不到安装路径,安装过程是一样的)





第三步 安装图形处理库




安装完成后:菜单》全部程序》 Python 2.7发现已经安装成功

第四部 你下载文件里面有个 目录font-awesome-to-png 里面有将会使用的 脚本文件和字体文件(也是你第一步下载的文件)



来点其他参数


颜色变了,证明其他参数也是可靠的,大功告成。
源代码1 font-awesome-to-png.py:
#!/usr/bin/env python
#
# font-awesome-to-png.py
#
# Exports Font Awesome icons as PNG images.
#
# Copyright (c) 2012-2014 Michal Wojciechowski (http://odyniec.net/)
#
# Font Awesome - http://fortawesome.github.com/Font-Awesome
#
import sys, argparse, re
from os import path, access, R_OK
from PIL import Image, ImageFont, ImageDraw
# Support Unicode literals with both Python 2 and 3
if sys.version < '3':
import codecs
def u(x):
return codecs.unicode_escape_decode(x)[0]
def uchr(x):
return unichr(x)
else:
def u(x):
return x
def uchr(x):
return chr(x)
# Mapping of icon names to character codes
icons = {
"adjust": u("uf042"),
"adn": u("uf170"),
"align-center": u("uf037"),
"align-justify": u("uf039"),
"align-left": u("uf036"),
"align-right": u("uf038"),
"ambulance": u("uf0f9"),
"anchor": u("uf13d"),
"android": u("uf17b"),
"angle-double-down": u("uf103"),
"angle-double-left": u("uf100"),
"angle-double-right": u("uf101"),
"angle-double-up": u("uf102"),
"angle-down": u("uf107"),
"angle-left": u("uf104"),
"angle-right": u("uf105"),
"angle-up": u("uf106"),
"apple": u("uf179"),
"archive": u("uf187"),
"arrow-circle-down": u("uf0ab"),
"arrow-circle-left": u("uf0a8"),
"arrow-circle-o-down": u("uf01a"),
"arrow-circle-o-left": u("uf190"),
"arrow-circle-o-right": u("uf18e"),
"arrow-circle-o-up": u("uf01b"),
"arrow-circle-right": u("uf0a9"),
"arrow-circle-up": u("uf0aa"),
"arrow-down": u("uf063"),
"arrow-left": u("uf060"),
"arrow-right": u("uf061"),
"arrow-up": u("uf062"),
"arrows": u("uf047"),
"arrows-alt": u("uf0b2"),
"arrows-h": u("uf07e"),
"arrows-v": u("uf07d"),
"asterisk": u("uf069"),
"automobile": u("uf1b9"),
"backward": u("uf04a"),
"ban": u("uf05e"),
"bank": u("uf19c"),
"bar-chart-o": u("uf080"),
"barcode": u("uf02a"),
"bars": u("uf0c9"),
"beer": u("uf0fc"),
"behance": u("uf1b4"),
"behance-square": u("uf1b5"),
"bell": u("uf0f3"),
"bell-o": u("uf0a2"),
"bitbucket": u("uf171"),
"bitbucket-square": u("uf172"),
"bitcoin": u("uf15a"),
"bold": u("uf032"),
"bolt": u("uf0e7"),
"bomb": u("uf1e2"),
"book": u("uf02d"),
"bookmark": u("uf02e"),
"bookmark-o": u("uf097"),
"briefcase": u("uf0b1"),
"btc": u("uf15a"),
"bug": u("uf188"),
"building": u("uf1ad"),
"building-o": u("uf0f7"),
"bullhorn": u("uf0a1"),
"bullseye": u("uf140"),
"cab": u("uf1ba"),
"calendar": u("uf073"),
"calendar-o": u("uf133"),
"camera": u("uf030"),
"camera-retro": u("uf083"),
"car": u("uf1b9"),
"caret-down": u("uf0d7"),
"caret-left": u("uf0d9"),
"caret-right": u("uf0da"),
"caret-square-o-down": u("uf150"),
"caret-square-o-left": u("uf191"),
"caret-square-o-right": u("uf152"),
"caret-square-o-up": u("uf151"),
"caret-up": u("uf0d8"),
"certificate": u("uf0a3"),
"chain": u("uf0c1"),
"chain-broken": u("uf127"),
"check": u("uf00c"),
"check-circle": u("uf058"),
"check-circle-o": u("uf05d"),
"check-square": u("uf14a"),
"check-square-o": u("uf046"),
"chevron-circle-down": u("uf13a"),
"chevron-circle-left": u("uf137"),
"chevron-circle-right": u("uf138"),
"chevron-circle-up": u("uf139"),
"chevron-down": u("uf078"),
"chevron-left": u("uf053"),
"chevron-right": u("uf054"),
"chevron-up": u("uf077"),
"child": u("uf1ae"),
"circle": u("uf111"),
"circle-o": u("uf10c"),
"circle-o-notch": u("uf1ce"),
"circle-thin": u("uf1db"),
"clipboard": u("uf0ea"),
"clock-o": u("uf017"),
"cloud": u("uf0c2"),
"cloud-download": u("uf0ed"),
"cloud-upload": u("uf0ee"),
"cny": u("uf157"),
"code": u("uf121"),
"code-fork": u("uf126"),
"codepen": u("uf1cb"),
"coffee": u("uf0f4"),
"cog": u("uf013"),
"cogs": u("uf085"),
"columns": u("uf0db"),
"comment": u("uf075"),
"comment-o": u("uf0e5"),
"comments": u("uf086"),
"comments-o": u("uf0e6"),
"compass": u("uf14e"),
"compress": u("uf066"),
"copy": u("uf0c5"),
"credit-card": u("uf09d"),
"crop": u("uf125"),
"crosshairs": u("uf05b"),
"css3": u("uf13c"),
"cube": u("uf1b2"),
"cubes": u("uf1b3"),
"cut": u("uf0c4"),
"cutlery": u("uf0f5"),
"dashboard": u("uf0e4"),
"database": u("uf1c0"),
"dedent": u("uf03b"),
"delicious": u("uf1a5"),
"desktop": u("uf108"),
"deviantart": u("uf1bd"),
"digg": u("uf1a6"),
"dollar": u("uf155"),
"dot-circle-o": u("uf192"),
"download": u("uf019"),
"dribbble": u("uf17d"),
"dropbox": u("uf16b"),
"drupal": u("uf1a9"),
"edit": u("uf044"),
"eject": u("uf052"),
"ellipsis-h": u("uf141"),
"ellipsis-v": u("uf142"),
"empire": u("uf1d1"),
"envelope": u("uf0e0"),
"envelope-o": u("uf003"),
"envelope-square": u("uf199"),
"eraser": u("uf12d"),
"eur": u("uf153"),
"euro": u("uf153"),
"exchange": u("uf0ec"),
"exclamation": u("uf12a"),
"exclamation-circle": u("uf06a"),
"exclamation-triangle": u("uf071"),
"expand": u("uf065"),
"external-link": u("uf08e"),
"external-link-square": u("uf14c"),
"eye": u("uf06e"),
"eye-slash": u("uf070"),
"facebook": u("uf09a"),
"facebook-square": u("uf082"),
"fast-backward": u("uf049"),
"fast-forward": u("uf050"),
"fax": u("uf1ac"),
"female": u("uf182"),
"fighter-jet": u("uf0fb"),
"file": u("uf15b"),
"file-archive-o": u("uf1c6"),
"file-audio-o": u("uf1c7"),
"file-code-o": u("uf1c9"),
"file-excel-o": u("uf1c3"),
"file-image-o": u("uf1c5"),
"file-movie-o": u("uf1c8"),
"file-o": u("uf016"),
"file-pdf-o": u("uf1c1"),
"file-photo-o": u("uf1c5"),
"file-picture-o": u("uf1c5"),
"file-powerpoint-o": u("uf1c4"),
"file-sound-o": u("uf1c7"),
"file-text": u("uf15c"),
"file-text-o": u("uf0f6"),
"file-video-o": u("uf1c8"),
"file-word-o": u("uf1c2"),
"file-zip-o": u("uf1c6"),
"files-o": u("uf0c5"),
"film": u("uf008"),
"filter": u("uf0b0"),
"fire": u("uf06d"),
"fire-extinguisher": u("uf134"),
"flag": u("uf024"),
"flag-checkered": u("uf11e"),
"flag-o": u("uf11d"),
"flash": u("uf0e7"),
"flask": u("uf0c3"),
"flickr": u("uf16e"),
"floppy-o": u("uf0c7"),
"folder": u("uf07b"),
"folder-o": u("uf114"),
"folder-open": u("uf07c"),
"folder-open-o": u("uf115"),
"font": u("uf031"),
"forward": u("uf04e"),
"foursquare": u("uf180"),
"frown-o": u("uf119"),
"gamepad": u("uf11b"),
"gavel": u("uf0e3"),
"gbp": u("uf154"),
"ge": u("uf1d1"),
"gear": u("uf013"),
"gears": u("uf085"),
"gift": u("uf06b"),
"git": u("uf1d3"),
"git-square": u("uf1d2"),
"github": u("uf09b"),
"github-alt": u("uf113"),
"github-square": u("uf092"),
"gittip": u("uf184"),
"glass": u("uf000"),
"globe": u("uf0ac"),
"google": u("uf1a0"),
"google-plus": u("uf0d5"),
"google-plus-square": u("uf0d4"),
"graduation-cap": u("uf19d"),
"group": u("uf0c0"),
"h-square": u("uf0fd"),
"hacker-news": u("uf1d4"),
"hand-o-down": u("uf0a7"),
"hand-o-left": u("uf0a5"),
"hand-o-right": u("uf0a4"),
"hand-o-up": u("uf0a6"),
"hdd-o": u("uf0a0"),
"header": u("uf1dc"),
"headphones": u("uf025"),
"heart": u("uf004"),
"heart-o": u("uf08a"),
"history": u("uf1da"),
"home": u("uf015"),
"hospital-o": u("uf0f8"),
"html5": u("uf13b"),
"image": u("uf03e"),
"inbox": u("uf01c"),
"indent": u("uf03c"),
"info": u("uf129"),
"info-circle": u("uf05a"),
"inr": u("uf156"),
"instagram": u("uf16d"),
"institution": u("uf19c"),
"italic": u("uf033"),
"joomla": u("uf1aa"),
"jpy": u("uf157"),
"jsfiddle": u("uf1cc"),
"key": u("uf084"),
"keyboard-o": u("uf11c"),
"krw": u("uf159"),
"language": u("uf1ab"),
"laptop": u("uf109"),
"leaf": u("uf06c"),
"legal": u("uf0e3"),
"lemon-o": u("uf094"),
"level-down": u("uf149"),
"level-up": u("uf148"),
"life-bouy": u("uf1cd"),
"life-ring": u("uf1cd"),
"life-saver": u("uf1cd"),
"lightbulb-o": u("uf0eb"),
"link": u("uf0c1"),
"linkedin": u("uf0e1"),
"linkedin-square": u("uf08c"),
"linux": u("uf17c"),
"list": u("uf03a"),
"list-alt": u("uf022"),
"list-ol": u("uf0cb"),
"list-ul": u("uf0ca"),
"location-arrow": u("uf124"),
"lock": u("uf023"),
"long-arrow-down": u("uf175"),
"long-arrow-left": u("uf177"),
"long-arrow-right": u("uf178"),
"long-arrow-up": u("uf176"),
"magic": u("uf0d0"),
"magnet": u("uf076"),
"mail-forward": u("uf064"),
"mail-reply": u("uf112"),
"mail-reply-all": u("uf122"),
"male": u("uf183"),
"map-marker": u("uf041"),
"maxcdn": u("uf136"),
"medkit": u("uf0fa"),
"meh-o": u("uf11a"),
"microphone": u("uf130"),
"microphone-slash": u("uf131"),
"minus": u("uf068"),
"minus-circle": u("uf056"),
"minus-square": u("uf146"),
"minus-square-o": u("uf147"),
"mobile": u("uf10b"),
"mobile-phone": u("uf10b"),
"money": u("uf0d6"),
"moon-o": u("uf186"),
"mortar-board": u("uf19d"),
"music": u("uf001"),
"navicon": u("uf0c9"),
"openid": u("uf19b"),
"outdent": u("uf03b"),
"pagelines": u("uf18c"),
"paper-plane": u("uf1d8"),
"paper-plane-o": u("uf1d9"),
"paperclip": u("uf0c6"),
"paragraph": u("uf1dd"),
"paste": u("uf0ea"),
"pause": u("uf04c"),
"paw": u("uf1b0"),
"pencil": u("uf040"),
"pencil-square": u("uf14b"),
"pencil-square-o": u("uf044"),
"phone": u("uf095"),
"phone-square": u("uf098"),
"photo": u("uf03e"),
"picture-o": u("uf03e"),
"pied-piper": u("uf1a7"),
"pied-piper-alt": u("uf1a8"),
"pied-piper-square": u("uf1a7"),
"pinterest": u("uf0d2"),
"pinterest-square": u("uf0d3"),
"plane": u("uf072"),
"play": u("uf04b"),
"play-circle": u("uf144"),
"play-circle-o": u("uf01d"),
"plus": u("uf067"),
"plus-circle": u("uf055"),
"plus-square": u("uf0fe"),
"plus-square-o": u("uf196"),
"power-off": u("uf011"),
"print": u("uf02f"),
"puzzle-piece": u("uf12e"),
"qq": u("uf1d6"),
"qrcode": u("uf029"),
"question": u("uf128"),
"question-circle": u("uf059"),
"quote-left": u("uf10d"),
"quote-right": u("uf10e"),
"ra": u("uf1d0"),
"random": u("uf074"),
"rebel": u("uf1d0"),
"recycle": u("uf1b8"),
"reddit": u("uf1a1"),
"reddit-square": u("uf1a2"),
"refresh": u("uf021"),
"renren": u("uf18b"),
"reorder": u("uf0c9"),
"repeat": u("uf01e"),
"reply": u("uf112"),
"reply-all": u("uf122"),
"retweet": u("uf079"),
"rmb": u("uf157"),
"road": u("uf018"),
"rocket": u("uf135"),
"rotate-left": u("uf0e2"),
"rotate-right": u("uf01e"),
"rouble": u("uf158"),
"rss": u("uf09e"),
"rss-square": u("uf143"),
"rub": u("uf158"),
"ruble": u("uf158"),
"rupee": u("uf156"),
"save": u("uf0c7"),
"scissors": u("uf0c4"),
"search": u("uf002"),
"search-minus": u("uf010"),
"search-plus": u("uf00e"),
"send": u("uf1d8"),
"send-o": u("uf1d9"),
"share": u("uf064"),
"share-alt": u("uf1e0"),
"share-alt-square": u("uf1e1"),
"share-square": u("uf14d"),
"share-square-o": u("uf045"),
"shield": u("uf132"),
"shopping-cart": u("uf07a"),
"sign-in": u("uf090"),
"sign-out": u("uf08b"),
"signal": u("uf012"),
"sitemap": u("uf0e8"),
"skype": u("uf17e"),
"slack": u("uf198"),
"sliders": u("uf1de"),
"smile-o": u("uf118"),
"sort": u("uf0dc"),
"sort-alpha-asc": u("uf15d"),
"sort-alpha-desc": u("uf15e"),
"sort-amount-asc": u("uf160"),
"sort-amount-desc": u("uf161"),
"sort-asc": u("uf0de"),
"sort-desc": u("uf0dd"),
"sort-down": u("uf0dd"),
"sort-numeric-asc": u("uf162"),
"sort-numeric-desc": u("uf163"),
"sort-up": u("uf0de"),
"soundcloud": u("uf1be"),
"space-shuttle": u("uf197"),
"spinner": u("uf110"),
"spoon": u("uf1b1"),
"spotify": u("uf1bc"),
"square": u("uf0c8"),
"square-o": u("uf096"),
"stack-exchange": u("uf18d"),
"stack-overflow": u("uf16c"),
"star": u("uf005"),
"star-half": u("uf089"),
"star-half-empty": u("uf123"),
"star-half-full": u("uf123"),
"star-half-o": u("uf123"),
"star-o": u("uf006"),
"steam": u("uf1b6"),
"steam-square": u("uf1b7"),
"step-backward": u("uf048"),
"step-forward": u("uf051"),
"stethoscope": u("uf0f1"),
"stop": u("uf04d"),
"strikethrough": u("uf0cc"),
"stumbleupon": u("uf1a4"),
"stumbleupon-circle": u("uf1a3"),
"subscript": u("uf12c"),
"suitcase": u("uf0f2"),
"sun-o": u("uf185"),
"superscript": u("uf12b"),
"support": u("uf1cd"),
"table": u("uf0ce"),
"tablet": u("uf10a"),
"tachometer": u("uf0e4"),
"tag": u("uf02b"),
"tags": u("uf02c"),
"tasks": u("uf0ae"),
"taxi": u("uf1ba"),
"tencent-weibo": u("uf1d5"),
"terminal": u("uf120"),
"text-height": u("uf034"),
"text-width": u("uf035"),
"th": u("uf00a"),
"th-large": u("uf009"),
"th-list": u("uf00b"),
"thumb-tack": u("uf08d"),
"thumbs-down": u("uf165"),
"thumbs-o-down": u("uf088"),
"thumbs-o-up": u("uf087"),
"thumbs-up": u("uf164"),
"ticket": u("uf145"),
"times": u("uf00d"),
"times-circle": u("uf057"),
"times-circle-o": u("uf05c"),
"tint": u("uf043"),
"toggle-down": u("uf150"),
"toggle-left": u("uf191"),
"toggle-right": u("uf152"),
"toggle-up": u("uf151"),
"trash-o": u("uf014"),
"tree": u("uf1bb"),
"trello": u("uf181"),
"trophy": u("uf091"),
"truck": u("uf0d1"),
"try": u("uf195"),
"tumblr": u("uf173"),
"tumblr-square": u("uf174"),
"turkish-lira": u("uf195"),
"twitter": u("uf099"),
"twitter-square": u("uf081"),
"umbrella": u("uf0e9"),
"underline": u("uf0cd"),
"undo": u("uf0e2"),
"university": u("uf19c"),
"unlink": u("uf127"),
"unlock": u("uf09c"),
"unlock-alt": u("uf13e"),
"unsorted": u("uf0dc"),
"upload": u("uf093"),
"usd": u("uf155"),
"user": u("uf007"),
"user-md": u("uf0f0"),
"users": u("uf0c0"),
"video-camera": u("uf03d"),
"vimeo-square": u("uf194"),
"vine": u("uf1ca"),
"vk": u("uf189"),
"volume-down": u("uf027"),
"volume-off": u("uf026"),
"volume-up": u("uf028"),
"warning": u("uf071"),
"wechat": u("uf1d7"),
"weibo": u("uf18a"),
"weixin": u("uf1d7"),
"wheelchair": u("uf193"),
"windows": u("uf17a"),
"won": u("uf159"),
"wordpress": u("uf19a"),
"wrench": u("uf0ad"),
"xing": u("uf168"),
"xing-square": u("uf169"),
"yahoo": u("uf19e"),
"yen": u("uf157"),
"youtube": u("uf167"),
"youtube-play": u("uf16a"),
"youtube-square": u("uf166"),
}
class ListAction(argparse.Action):
def __call__(self, parser, namespace, values, option_string=None):
for icon in sorted(icons.keys()):
print(icon)
exit(0)
class ListUpdateAction(argparse.Action):
def __call__(self, parser, namespace, values, option_string=None):
print("icons = {")
for icon in sorted(icons.keys()):
print(u' "%s": u("\u%x"),' % (icon, ord(icons[icon])))
print("}")
exit(0)
def export_icon(icon, size, filename, font, color):
image = Image.new("RGBA", (size, size), color=(0,0,0,0))
draw = ImageDraw.Draw(image)
# Initialize font
font = ImageFont.truetype(font, size)
# Determine the dimensions of the icon
width,height = draw.textsize(icons[icon], font=font)
draw.text(((size - width) / 2, (size - height) / 2), icons[icon],
font=font, fill=color)
# Get bounding box
bbox = image.getbbox()
# Create an alpha mask
imagemask = Image.new("L", (size, size), 0)
drawmask = ImageDraw.Draw(imagemask)
# Draw the icon on the mask
drawmask.text(((size - width) / 2, (size - height) / 2), icons[icon],
font=font, fill=255)
# Create a solid color image and apply the mask
iconimage = Image.new("RGBA", (size,size), color)
iconimage.putalpha(imagemask)
if bbox:
iconimage = iconimage.crop(bbox)
borderw = int((size - (bbox[2] - bbox[0])) / 2)
borderh = int((size - (bbox[3] - bbox[1])) / 2)
# Create output image
outimage = Image.new("RGBA", (size, size), (0,0,0,0))
outimage.paste(iconimage, (borderw,borderh))
# Save file
outimage.save(filename)
class LoadCSSAction(argparse.Action):
def __call__(self, parser, namespace, values, option_string=None):
global icons
icons = LoadCSSAction._load_css(values)
@staticmethod
def _load_css(filename):
import tinycss
new_icons = {}
parser = tinycss.make_parser("page3")
try:
stylesheet = parser.parse_stylesheet_file(filename)
except IOError:
print >> sys.stderr, ("Error: CSS file (%s) can't be opened"
% (filename))
exit(1)
is_icon = re.compile(u(".fa-(.*):before,?"))
for rule in stylesheet.rules:
selector = rule.selector.as_css()
for match in is_icon.finditer(selector):
name = match.groups()[0]
for declaration in rule.declarations:
if declaration.name == u"content":
val = declaration.value.as_css()
if val.startswith('"') and val.endswith('"'):
val = val[1:-1]
new_icons[name] = uchr(int(val[1:], 16))
return new_icons
if __name__ == '__main__':
parser = argparse.ArgumentParser(
description="Exports Font Awesome icons as PNG images.")
parser.add_argument("icon", type=str, nargs="+",
help="The name(s) of the icon(s) to export (or "ALL" for all icons)")
parser.add_argument("--color", type=str, default="black",
help="Color (HTML color code or name, default: black)")
parser.add_argument("--filename", type=str,
help="The name of the output file (it must end with ".png"). If " +
"all files are exported, it is used as a prefix.")
parser.add_argument("--font", type=str, default="fontawesome-webfont.ttf",
help="Font file to use (default: fontawesome-webfont.ttf)")
parser.add_argument("--css", type=str, default="", action=LoadCSSAction,
help="Path to the CSS file defining icon names (instead of the " +
"predefined list)")
parser.add_argument("--list", nargs=0, action=ListAction,
help="List available icon names and exit")
parser.add_argument("--list-update", nargs=0, action=ListUpdateAction,
help=argparse.SUPPRESS)
parser.add_argument("--size", type=int, default=16,
help="Icon size in pixels (default: 16)")
args = parser.parse_args()
icon = args.icon
size = args.size
font = args.font
color = args.color
if args.font:
if not path.isfile(args.font) or not access(args.font, R_OK):
print >> sys.stderr, ("Error: Font file (%s) can't be opened"
% (args.font))
exit(1)
if args.icon == [ "ALL" ]:
# Export all icons
selected_icons = sorted(icons.keys())
else:
selected_icons = []
# Icon name was given
for icon in args.icon:
# Strip the "icon-" prefix, if present
if icon.startswith("icon-"):
icon = icon[5:]
if icon in icons:
selected_icons.append(icon)
else:
print >> sys.stderr, "Error: Unknown icon name (%s)" % (icon)
sys.exit(1)
for icon in selected_icons:
if len(selected_icons) > 1:
# Exporting multiple icons -- treat the filename option as name prefix
filename = (args.filename or "") + icon + ".png"
else:
# Exporting one icon
if args.filename:
filename = args.filename
else:
filename = icon + ".png"
print("Exporting icon "%s" as %s (%ix%i pixels)" %
(icon, filename, size, size))
export_icon(icon, size, filename, font, color)
帮助文档 README.md:
Font Awesome to PNG
===================
This program allows you to extract the awesome
[Font Awesome] (http://fortawesome.github.com/Font-Awesome/) icons as PNG images
of specified size.
### Usage
font-awesome-to-png.py [-h] [--color COLOR] [--filename FILENAME]
[--font FONT] [--css CSS] [--list] [--size SIZE]
icon [icon ...]
positional arguments:
icon The name(s) of the icon(s) to export (or "ALL" for
all icons)
optional arguments:
--color COLOR Color (HTML color code or name, default: black)
--filename FILENAME The name of the output file (it must end with
".png"). If all files are exported, it is used as a
prefix.
--font FONT Font file to use (default: fontawesome-webfont.ttf)
--css CSS Path to the CSS file defining icon names (instead of
the predefined list)
--list List available icon names and exit
--size SIZE Icon size in pixels (default: 16)
hidden optional arguments:
--list-update List available icon names and codes in format suitable
for updating the program source.
To use the program, you need the Font Awesome TTF file, which is available in
[Font Awesome Github repository] (https://github.com/FortAwesome/Font-Awesome).
The internal icon list is matched to Font Awesome 4.1.0. To use a later/different
version, use font-awesome.css from the Font Awesome GitHub repository.
### Examples
Export the "play" and "stop" icons as 24x24 pixels images:
font-awesome-to-png.py --size 24 play stop
Export the asterisk icon as 32x32 pixels image, in blue:
font-awesome-to-png.py --size 32 --color blue asterisk
Export all icons as 16x16 pixels images:
font-awesome-to-png.py ALL