Skip to content

Provide a 'cursive' font present in Windows' default font set. #18623

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Oct 1, 2020

Conversation

anntzer
Copy link
Contributor

@anntzer anntzer commented Oct 1, 2020

See changelog. Admittedly the CSS example page is inconsistent with
https://www.w3.org/TR/css-fonts-3/#generic-font-families which lists
Comic Sans as fantasy, not cursive, but none of the other cursive
fonts listed here is readily available. fontconfig also defaults to
listing Comic Sans as cursive (https://gitlab.freedesktop.org/fontconfig/fontconfig/-/blob/master/conf.d/60-latin.conf#L68).

The main intent is to make text_labels_and_annotations/fonts_demo.py
runnable with no warnings (#18615) if MS core fonts are installed (freely
available and packaged on Linux e.g. as
https://packages.debian.org/sid/ttf-mscorefonts-installer); in any case
if someone really wants a cursive or fantasy font they'll likely have to
pass the actual font family name anyways as there's too much variation
in what "cursive" or "fantasy" means...

(The original list of fonts comes from 41f1c49 but is not explained.)

PR Summary

PR Checklist

  • Has pytest style unit tests (and pytest passes).
  • Is Flake 8 compliant (run flake8 on changed files to check).
  • New features are documented, with examples if plot related.
  • Documentation is sphinx and numpydoc compliant (the docs should build without error).
  • Conforms to Matplotlib style conventions (install flake8-docstrings and pydocstyle<4 and run flake8 --docstring-convention=all).
  • New features have an entry in doc/users/next_whats_new/ (follow instructions in README.rst there).
  • API changes documented in doc/api/next_api_changes/ (follow instructions in README.rst there).

See changelog.  Admittedly the CSS example page is inconsistent with
https://www.w3.org/TR/css-fonts-3/#generic-font-families which lists
Comic Sans as *fantasy*, not *cursive*, but none of the other cursive
fonts listed here is readily available.  fontconfig also defaults to
listing Comic Sans as cursive.

The main intent is to make `text_labels_and_annotations/fonts_demo.py`
runnable with no warnings if MS core fonts are installed (freely
available and packaged on Linux e.g. as
https://packages.debian.org/sid/ttf-mscorefonts-installer); in any case
if someone really wants a cursive or fantasy font they'll likely have to
pass the actual font family name anyways as there's too much variation
in what "cursive" or "fantasy" means...

(The original list of fonts comes from 41f1c49 but is not explained.)
@tacaswell tacaswell added this to the v3.4.0 milestone Oct 1, 2020
@dopplershift dopplershift merged commit 4b48762 into matplotlib:master Oct 1, 2020
@anntzer anntzer deleted the comic branch October 1, 2020 15:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants