Skip to main content

FontAwesome icons in PyQt and PySide applications

Project description

QtAwesome

license pypi version conda version download count OpenCollective Backers Join the chat at https://gitter.im/spyder-ide/public
PyPI status Github build status Documentation Status

Copyright © 2015–2020 Spyder Project Contributors

Description

QtAwesome enables iconic fonts such as Font Awesome and Elusive Icons in PyQt and PySide applications.

It started as a Python port of the QtAwesome C++ library by Rick Blommers.

Installation

Using conda:

conda install qtawesome

or using pip (only if you don't have conda installed):

pip install qtawesome

Usage

Supported Fonts

QtAwesome identifies icons by their prefix and their icon name, separated by a period (.) character.

The following prefixes are currently available to use:

Examples

import qtawesome as qta
  • Use Font Awesome, Elusive Icons or Material Design Icons.
# Get FontAwesome 5.x icons by name in various styles:
fa5_icon = qta.icon('fa5.flag')
fa5_button = QtWidgets.QPushButton(fa5_icon, 'Font Awesome! (regular)')
fa5s_icon = qta.icon('fa5s.flag')
fa5s_button = QtWidgets.QPushButton(fa5s_icon, 'Font Awesome! (solid)')
fa5b_icon = qta.icon('fa5b.github')
fa5b_button = QtWidgets.QPushButton(fa5b_icon, 'Font Awesome! (brands)')

# or Elusive Icons:
asl_icon = qta.icon('ei.asl')
elusive_button = QtWidgets.QPushButton(asl_icon, 'Elusive Icons!')

# or Material Design Icons:
apn_icon = qta.icon('mdi.access-point-network')
mdi_button = QtWidgets.QPushButton(apn_icon, 'Material Design Icons!')
  • Apply some styling
# Styling icons
styling_icon = qta.icon('fa5s.music',
                        active='fa5s.balance-scale',
                        color='blue',
                        color_active='orange')
music_button = QtWidgets.QPushButton(styling_icon, 'Styling')
  • Stack multiple icons
# Stacking icons
camera_ban = qta.icon('fa5s.camera', 'fa5s.ban',
                      options=[{'scale_factor': 0.5,
                                'active': 'fa5s.balance-scale'},
                               {'color': 'red'}])
stack_button = QtWidgets.QPushButton(camera_ban, 'Stack')
stack_button.setIconSize(QtCore.QSize(32, 32))
  • Animations
# Spining icons
spin_button = QtWidgets.QPushButton(' Spinning icon')
spin_icon = qta.icon('fa5s.spinner', color='red',
                     animation=qta.Spin(spin_button))
spin_button.setIcon(spin_icon)
  • Display Icon as a widget
# Spining icon widget
spin_widget = qta.IconWidget()
spin_icon = qta.icon('mdi.loading', color='red',
                     animation=qta.Spin(spin_widget))
spin_widget.setIcon(spin_icon)

# Simple icon widget
simple_widget = qta.IconWidget('mdi.web', color='blue')
  • Screenshot

QtAwesome screenshot

Other features

  • QtAwesome comes bundled with Font Awesome, Elusive Icons and Material Design Icons but it can also be used with other iconic fonts. The load_font function allows to load other fonts dynamically.
  • QtAwesome relies on the QtPy project as a compatibility layer on the top ot PyQt or PySide.

Icon Browser

QtAwesome ships with a browser that displays all the available icons. You can use this to search for an icon that suits your requirements and then copy the name that should be used to create that icon!

Once installed, run qta-browser from a shell to start the browser.

QtAwesomeIconbrowser

License

MIT License. Copyright 2015 - The Spyder development team. See the LICENSE file for details.

The Font Awesome, Elusive Icons and Material Design Icons fonts are licensed under the SIL Open Font License.

Sponsors

Spyder and its subprojects are funded thanks to the generous support of

QuansightNumfocus

and the donations we have received from our users around the world through Open Collective:

Sponsors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

QtAwesome-0.7.0.tar.gz (844.6 kB view details)

Uploaded Source

Built Distribution

QtAwesome-0.7.0-py2.py3-none-any.whl (831.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file QtAwesome-0.7.0.tar.gz.

File metadata

  • Download URL: QtAwesome-0.7.0.tar.gz
  • Upload date:
  • Size: 844.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for QtAwesome-0.7.0.tar.gz
Algorithm Hash digest
SHA256 489e69c2d1ad32bf92d0b0062bfe7b0a9241bc64092650b4b25f418abeb136cd
MD5 ba15a15f9c03fc2da02a8bbb6dda00c7
BLAKE2b-256 58caac8d11e62ff0794f44d4d161f9d0e1915fad8cd8ed981b49ee46d012fdcd

See more details on using hashes here.

Provenance

File details

Details for the file QtAwesome-0.7.0-py2.py3-none-any.whl.

File metadata

  • Download URL: QtAwesome-0.7.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 831.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for QtAwesome-0.7.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 388eb54fdcd23407a6dedd1e685300268c8edee8c3fe9b2e946ed27d5a310b5c
MD5 11737e7c3cc316b82bde1690523539a8
BLAKE2b-256 d4c4ad13b68812b84c5d1f76c92ee66d90646378da47d09504fd4b2859dd6e34

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page