8000 Antony's text‐rendering patches. · matplotlib/matplotlib Wiki · GitHub
[go: up one dir, main page]

Skip to content
10000

Antony's text‐rendering patches.

Antony Lee edited this page May 24, 2025 · 4 revisions

Note: "ready for review" PRs may still need to have their baseline images updated.

  • #29807: Support {lua,xe}tex as alternative usetex engine.

    Status: draft, requires more work. Also waiting on prerequisite PRs: #29939, #30039.

  • #29939: Parse {lua,xe}tex-generated dvi in dviread.

    Status: ready for review.

    Prerequisite for #29807, but would also be sufficient in itself to enable {lua,xe}tex support in mplcairo.

  • #30039: Rasterize dvi files without dvipng.

    Status: ready for review, requires a minor API decision (regarding whether to keep support for using dvipng) and the corresponding implementation (which is very simple, at most adding a rcParam-based switch between the old and the new implementation).

    Prerequisite for #29807, but also worthwhile in itself.

    Breaks the usetex baseline images (which are few, so not really a problem). Would also need (not too onerous) adjustment if #30059 goes in first.

  • #30059: Drop the FT2Font intermediate buffer.

    Status: ready for review (baseline images need to be regenerated).

    Fixes subpixel text positioning (#29551) and should also fix some mathtext rendering issues (#15313 and the "wiggly baseline" issue, TBC).

    Likely breaks all baseline png images that contain text.

    Supersedes #30043 by letting Agg perform alpha compositing, and subsumes mt1

    • #30043: Fix alpha compositing in ft2font's draw_bitmap.

      Status: ready for review, but #30059 would be a more general fix (with different baseline image updates), so can likely be safely ignored.

    • mt1: Draw mathtext symbols from their baselines.

      Status: likely better handled by #30059.


  • [Merged] #30044: Replace FT2Image by plain numpy arrays.

    Essentially a (standalone) "maintenance" PR, can be reviewed and merged independently of the rest (may require some fairly easy rebases).

Clone this wiki locally
0