beeware / beeware/toga

Add testing of a "true" variant font

Open
#4,480 4 comments 0 reactions 0 assignees View on GitHub
enhancement good first issue
Dominant language
Python
Stars
5.4k
Forks
827
Avg merge
9h 45m
Merged PRs (30d)
58

Description

### What is the problem or limitation you are having?

As noted in #2159, the Endor font doesn't contain a "true" bold or italic, resulting in rendering on iOS and macOS that looks

Image

This contrasts with GTK and Windows, which apply "fake" bold and italic:

Image

### Describe the solution you'd like

* Add to the `fonts` example app an example of a "true" variant font. [Recursive](https://v-fonts.com/fonts/recursive) has been suggested as a candidate.
* Add a tests to the testbed canvas test that performs an automated test of what the `fonts` example is rendering. Add one test for each font (i.e. render an image that renders text as normal, bold, italic and bold-italic for each font).

### Describe alternatives you've considered

Don't explicitly test variant fonts.

### Additional context

_No response_

Contributor guide

Open the contributing guide

Research direction

Start with the fonts example app and the testbed canvas test mentioned in the issue, then inspect how the existing fonts are rendered and tested. Add a true-variant font example and image-based coverage for normal, bold, italic, and bold-italic rendering for each font; done means the automated render tests verify the expected output.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
desktop, testing-qa
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
56/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.