Skip to main content

Bindings for Pango for using with Manim.

Project description

ManimPango

PyPI Latest Release PyPI - Wheel PyPI - Downloads PyPI - License PyPI - Python Version Documentation Status

ManimPango is a C binding for Pango using Cython, which is internally used in Manim to render (non-LaTeX) text.

INSTALL

Installing ManimPango is super easy, just use pip. It is manimpango in PyPi.

pip install manimpango

For Linux Users, there are no Wheels. You must have a C compiler as well as Pango and its dependencies along with the Pango development headers. See BUILDING for more information.

BUILDING

Linux/MacOS

For building ManimPango, you need

  • a C compiler
  • Python's development headers
  • pkg-config
  • Pango along with its development headers and its dependencies.

If you are on MacOS, you can use brew to install those. Using MacPorts is also possible, but their version of Pango is old and will probably not be updated in the near future.

brew install pango pkg-config

If you are on Linux, you can use a system package manager to do so. For example, if you are on Debian based system, you can use apt

apt install libpango1.0-dev pkg-config python3-dev

Arch Linux: pacman -S pango pkgconf

Fedora: dnf install pango-devel pkg-config python3-devel

Or similar in your system's package manager.

Using tar archives

If you don't want to contribute to this repository, you can use the tar archives published in PyPi, or just use pip to install using

pip install manimpango --no-binary :all:

Note: pip by default uses wheels, so make sure to pass the --no-binary parameter.

Using git clones / Contributing

If you are using a clone of this repository, you will need Cython which can be easily installed using pip:

pip install Cython

After that you can use pip to install the clone with the following command:

pip install .

You will need to this way if you want to contribute to ManimPango.

Please remember to do this inside your poetry shell, if you want to use your Manimpango with Manim.

Contributing with Windows

If you are a normal user, don't read this, you have wheels which you can just install directly using pip.

If you want to contribute to ManimPango and you are on Windows, this section is for you.

As Windows does not include a C compiler by default, you will first need to install one. You have two choices:

  1. MinGW/Msys2

  2. Visual Studio

MinGW/Msys2

  1. Download MSYS2 from the download link provided on their page https://www.msys2.org/#installation and install it according to their instructions.
  2. Once you have MSYS2 installed, it offers you three different shells: the MinGW32 shell, the MinGW64 shell and MSYS shell. In order for the following steps to work, you have to open the MSYS2 MinGW64 shell (you can search for this). Small hint: it has a blue color logo.
  3. Run the following commands to install Python, Pango, Cython, Numpy, Scipy, Pillow, Pycairo and ffmpeg
pacman -S mingw-w64-x86_64-python
pacman -S mingw-w64-x86_64-python-pip
pacman -S mingw-w64-x86_64-pango
pacman -S mingw-w64-x86_64-cython
pacman -S mingw-w64-x86_64-python-numpy
pacman -S mingw-w64-x86_64-python-scipy
pacman -S mingw-w64-x86_64-python-pillow
pacman -S mingw-w64-x86_64-python-cairo
pacman -S mingw-w64-x86_64-ffmpeg
  1. Still in the same shell, install Manim using pip install manim.
  2. Finally, get your clone of ManimPango, cd into that directory and then run pip install -e .. Note You can't use it with your regular Python version. It will cause weird errors if you do so. For working with ManimPango, you must be inside the MSYS2 MINGW64 shell.
  3. You can then use manim inside that shell, to run Manim. Hint: If you want to try out Python interactively, you can open idle using the command python -m idlelib inside that shell.

Visual Studio

First, install Visual Studio as specified in https://wiki.python.org/moin/WindowsCompilers. Possibly Visual Studio Build Tools 2019 with Windows10 SDK.

Then run the script at packing/download_dlls.py. This will get a Pango build along with pkg-config and install it at C:\cibw\vendor. Add C:\cibw\vendor\bin and C:\cibw\vendor\pkg-config\bin to PATH.

Note: You can change the install location by editing line 24 of the file packing/download_dlls.py.

Then set an environment variable PKG_CONFIG_PATH=C:\cibw\vendor\lib\pkgconfig.

Then you can install Cython using

pip install Cython

Finally, you can install your local ManimPango clone just like any other python package by typing:

pip install .

Important: You have to to use https://docs.python.org/3/library/os.html#os.add_dll_directory before running ManimPango. Alternatively, you need to copy the dll at C:\cibw\vendor\bin to the folder where ManimPango is compiled. This is applicable for Python 3.8 and above.

import os
os.add_dll_directory('C:\cibw\vendor\bin')

Code of Conduct

Our full code of conduct, and how we enforce it, can be read on our website.

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

ManimPango-0.2.4.tar.gz (26.3 kB view details)

Uploaded Source

Built Distributions

ManimPango-0.2.4-cp39-cp39-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.9 Windows x86-64

ManimPango-0.2.4-cp39-cp39-win32.whl (3.2 MB view details)

Uploaded CPython 3.9 Windows x86

ManimPango-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

ManimPango-0.2.4-cp38-cp38-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.8 Windows x86-64

ManimPango-0.2.4-cp38-cp38-win32.whl (3.2 MB view details)

Uploaded CPython 3.8 Windows x86

ManimPango-0.2.4-cp38-cp38-macosx_10_9_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

ManimPango-0.2.4-cp37-cp37m-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.7m Windows x86-64

ManimPango-0.2.4-cp37-cp37m-win32.whl (3.2 MB view details)

Uploaded CPython 3.7m Windows x86

ManimPango-0.2.4-cp37-cp37m-macosx_10_9_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.7m macOS 10.9+ x86-64

ManimPango-0.2.4-cp36-cp36m-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.6m Windows x86-64

ManimPango-0.2.4-cp36-cp36m-win32.whl (3.2 MB view details)

Uploaded CPython 3.6m Windows x86

ManimPango-0.2.4-cp36-cp36m-macosx_10_9_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.6m macOS 10.9+ x86-64

File details

Details for the file ManimPango-0.2.4.tar.gz.

File metadata

  • Download URL: ManimPango-0.2.4.tar.gz
  • Upload date:
  • Size: 26.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.8.7

File hashes

Hashes for ManimPango-0.2.4.tar.gz
Algorithm Hash digest
SHA256 309ac6ee56dbdb85599b1ad61b30ea78a800ab12a4db1264dddcad41681de38c
MD5 93bebebd9c111b250957ec63087d4e3e
BLAKE2b-256 c50e90c294be562453504c60524030d2a0e733f0ce2753da6b63c09bf403f537

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 a04a8b9d4e9b7a1d4b103016ae54d791557d935096a73347a4bfd7553542bce9
MD5 c78ceedfaeb926f8c85fc4f52a1a3764
BLAKE2b-256 92fdf218d28f69134cd22a5788bea233c529ac494f0e79cfe7de1d9004107c3d

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp39-cp39-win32.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp39-cp39-win32.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 8e8a9aab9997c8ffff7aa72ceb2a49f299aa7cbb0712e67ec3a7b6cbe1b79156
MD5 a49611dd5e7870f8b5a446cea15d09e2
BLAKE2b-256 71f568d10a1710b5221d2dd0269c47ed57f9da3bb473a59bfe0392b29586c01b

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.9, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.10

File hashes

Hashes for ManimPango-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6331bf527348de168203b772fb3f495986b4894bb9585a2a58801b4e3db65a8e
MD5 a0e80c264f01483dfb4b1ef6fb87e516
BLAKE2b-256 6ea923918009d34649fa48490a59904825d71adc46417866795c38f2fd748ffe

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 15bcad75f631106129deaee8d59cea476a76af376614e6b02e65c5da002f90d5
MD5 7674e039e22a775e4b68791e84f40202
BLAKE2b-256 2809578ddf8db86971e46a2d2affc286604dba0db010f2862dc7d529a3bfe271

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp38-cp38-win32.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp38-cp38-win32.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 0bf6d46cedd2ce3555f48b562f261f16b889d080b237e41e60a534a2317ba1bb
MD5 9a7c90615441040e59e5ef56e90fecec
BLAKE2b-256 4f48a8bc68e06f52c235360d3bef566651adc852efe0f3a27c082c340d5bde5c

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.10

File hashes

Hashes for ManimPango-0.2.4-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 080579aa1be0a3bfd2f964830de164873571cea4e9fc15a833ce607d99dce839
MD5 c0fb19a116eeab10904fbac52b8c1690
BLAKE2b-256 09bf4c5c14617037eb08a8e307fb66254088335d8547a7a86f65d5862e7ba935

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 39ed1d97ab8ec801e86d332dfbec4193841333ad0cac8f8ffefa93f81330739f
MD5 6c078161c81321a9642bfaa600d305ad
BLAKE2b-256 1e0241458b52bb89ade9f497899300147c0385a52edcd63061078d27b363ca6b

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp37-cp37m-win32.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 1df688c89b9b2971baffd7a8f843e9dd4496bbf86f7e2e8afcb17a7c61a421e0
MD5 e6f860f967cd5b2710e2b6ad2b7768ab
BLAKE2b-256 40f242c859351b3567e2a815b00084ec514e491d4d0e89523bac7135514030c0

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.10

File hashes

Hashes for ManimPango-0.2.4-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3cc665a00678fc56cab8456ec5b6756dd6c57bb2713ff9a2f906a13e62ea903d
MD5 f049f85f7640cdee5b132ae3b4e1d7d4
BLAKE2b-256 76098373dcf73a420d8090625512d02b732ce41cf728227c19e46c29bfdab98c

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 a5207fa32d7e6e13c5efd0885d9a746ec54cf1e30e09f370112c8737ef17b3ab
MD5 c661a37ae5ddf01b03492816587e4a2d
BLAKE2b-256 b2c543eee750bb5211d4b34e5c9d98d7386297ce1014f0dc265f007d470cf09f

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp36-cp36m-win32.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.9

File hashes

Hashes for ManimPango-0.2.4-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 e771d8aaa55a765a50a13bd011e819acb3404b47f038e6a3e26b6cf27f2f9bd9
MD5 f3e8b1e1c8620f3b7f3194e368d32e43
BLAKE2b-256 d9a9c91dd2a04ffb5b0cd3d27a7d545a997e259f9262eac5c87bd09e2251e44d

See more details on using hashes here.

File details

Details for the file ManimPango-0.2.4-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: ManimPango-0.2.4-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 3.8 MB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.7.10

File hashes

Hashes for ManimPango-0.2.4-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 129a7271b47480032b24e54d943a049217c60b59a98971c4c98463d10ed15d86
MD5 d22c02cf71a7f12d83b71882c77aeff7
BLAKE2b-256 d01035e46a7605fd50f27114bc0b883cc1f8536cb85b5e323f08687425eb530d

See more details on using hashes here.

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