summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Pass synthetic slant to harfbuzzsynthetic-slantMatthias Clasen2022-01-021-2/+10
| | | | | | | | | | | | When our font matrix includes a slant, pass that information to HarfBuzz, so it can adjust its mark positioning, metrics like caret slope, etc. This commit corrects the code that pulls the font matrix out of fontconfig to properly take the flipped y axis between fontconfig and pango into account. Requires new api in HarfBuzz > 3.2
* Add pango_matrix_get_slant_ratioMatthias Clasen2022-01-023-0/+62
| | | | | Add API to extract the slant ratio from a PangoMatrix. Tests included.
* Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2022-01-021-2/+2
|\ | | | | | | | | test-ellipsize: Tweak See merge request GNOME/pango!569
| * test-ellipsize: TweakMatthias Clasen2022-01-011-2/+2
|/ | | | | Best to compare precise sizes and take rounding out of the equation.
* Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2022-01-022-3/+14
|\ | | | | | | | | fontmap: Improve docs slightly See merge request GNOME/pango!568
| * font: Documentation additions and clarificationsMatthias Clasen2022-01-011-3/+9
| | | | | | | | | | Face names are not actually guaranteed to be unique, so don't say that.
| * fontmap: Improve docs slightlyMatthias Clasen2022-01-011-0/+5
|/ | | | Mention GListModel.
* Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2022-01-011-1/+1
|\ | | | | | | | | Cosmetics See merge request GNOME/pango!567
| * CosmeticsMatthias Clasen2022-01-011-1/+1
|/
* Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2021-12-255-11/+40
|\ | | | | | | | | | | | | tracing: Fix the defines Closes #648 See merge request GNOME/pango!565
| * Add fonts to installed testsMatthias Clasen2021-12-251-0/+14
| | | | | | | | Fixes: #648
| * itemize: Try harder to avoid NULL fontsMatthias Clasen2021-12-251-3/+5
| | | | | | | | | | Always fall back to the base font if the fontset has no coverage.
| * tracing: Fix the definesMatthias Clasen2021-12-252-8/+20
| | | | | | | | | | | | | | | | We want to define pango_trace_mark to nothing. This reveals that we've never compiled these calls out before, and there are some warnings to be fixed in that case.
| * Install pango-fontset-simple.hMatthias Clasen2021-12-251-0/+1
|/
* Merge branch 'fontset-cosmetics' into 'main'Matthias Clasen2021-12-2514-309/+330
|\ | | | | | | | | Split off PangoFontsetSimple See merge request GNOME/pango!564
| * fontsetsimple: Make privately accessiblefontset-cosmeticsMatthias Clasen2021-12-242-14/+45
| | | | | | | | This will be used in the future
| * Drop pango-fontset-private.hMatthias Clasen2021-12-249-43/+8
| | | | | | | | This was just an empty header.
| * fontsetsimple: Simplify coverage handlingMatthias Clasen2021-12-231-55/+17
| | | | | | | | | | | | This functionality is basically unused. Lets not keep an array of coverages around for it.
| * Split off PangoFontsetSimpleMatthias Clasen2021-12-236-291/+354
|/ | | | Put PangoFontsetSimple into its own files.
* Merge branch 'smaller-space' into 'main'Matthias Clasen2021-12-233-8/+8
|\ | | | | | | | | Make missing space smaller See merge request GNOME/pango!563
| * Make missing space smallersmaller-spaceMatthias Clasen2021-12-223-8/+8
|/ | | | | | | The Microsoft paper I was citing actually recommends 1/4 em for ASCII space. Make it so... Update affected tests.
* 1.50.31.50.3Matthias Clasen2021-12-212-4/+4
|
* Merge branch 'better-space-size' into 'main'Matthias Clasen2021-12-227-47/+47
|\ | | | | | | | | | | | | Add a private api to get the font size Closes #647 See merge request GNOME/pango!561
| * Use a better size for missing spaceMatthias Clasen2021-12-213-46/+11
| | | | | | | | | | | | | | | | | | | | Follow the Microsoft Typography recommendations from https://docs.microsoft.com/en-us/typography/develop/character-design-standards/whitespace and use half of an em for missing space. Update affected tests. Fixes: #647
| * fc: Implement get_absolute_sizeMatthias Clasen2021-12-211-0/+14
| | | | | | | | No surprises here.
| * Add a private api to get the font sizeMatthias Clasen2021-12-212-1/+21
| | | | | | | | | | | | | | | | Add a private vfunc to get the (absolute) size of a font. This default implementation just pulls it out of the font description, but we can do implement this cheaper without copying the font description.
| * NEWS: UpdatesMatthias Clasen2021-12-191-0/+1
|/
* Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2021-12-201-9/+10
|\ | | | | | | | | Cosmetics See merge request GNOME/pango!560
| * CosmeticsMatthias Clasen2021-12-191-9/+10
|/ | | | | Rename some variables, so we actually know what these matrices are.
* Merge branch 'fix-small-caps-line-height' into 'main'Matthias Clasen2021-12-195-14/+103
|\ | | | | | | | | | | | | Fix line height with emulated small caps Closes #622 See merge request GNOME/pango!543
| * Fix line height with emulated small capsfix-small-caps-line-heightMatthias Clasen2021-12-194-14/+40
| | | | | | | | | | | | | | | | When we change font scale for emulating small caps, keep the original font around in the analysis, and use it for calculating the run height. Fixes: #622
| * Add some private apiMatthias Clasen2021-12-192-0/+63
|/ | | | | | Add some api to let us store another font in a PangoAnalysis. This will be used in the following commits.
* NEWS: UpdatesMatthias Clasen2021-12-191-0/+7
|
* Merge branch 'misc-cleanups' into 'main'Matthias Clasen2021-12-1939-45/+345
|\ | | | | | | | | | | | | serializer: Fix a typo Closes #646 See merge request GNOME/pango!559
| * Add a test for the previous commitsmisc-cleanupsMatthias Clasen2021-12-182-0/+296
| | | | | | | | | | This test verifies the fixes for the situation described in #646.
| * Improve line width accountingMatthias Clasen2021-12-181-1/+1
| | | | | | | | | | | | | | We want to avoid trading chars for hyphens in the margin beyond the set width. Fixes: #646
| * layout: Fix a cornercase of line width accountingMatthias Clasen2021-12-181-8/+12
| | | | | | | | | | We don't collapse space at the very end, so we should count such spaces towards the line width.
| * serializer: Fix a typoMatthias Clasen2021-12-1836-36/+36
|/ | | | | | Oops, we were not serializing the height at all. Update all affected tests.
* Merge branch 'misc-cleanups' into 'main'Matthias Clasen2021-12-195-3/+33
|\ | | | | | | | | pango-view: Support transforms with --serialized See merge request GNOME/pango!558
| * Add some docsMatthias Clasen2021-12-181-0/+25
| | | | | | | | Add doc comments for some private API.
| * fc: CleanupMatthias Clasen2021-12-183-3/+3
| | | | | | | | | | | | Stop using fcfont->matrix. This is just a redundant copy of the matrix that is already available in the font key. Just use that.
| * pango-view: Support transforms with --serializedMatthias Clasen2021-12-181-0/+5
|/ | | | | We can just use the matrix from the deserialized layout.
* Merge branch 'more-space-tweaks' into 'main'Matthias Clasen2021-12-184-20/+50
|\ | | | | | | | | shape: More tweaks to space handling See merge request GNOME/pango!557
| * cairo: Work harder to measure spacemore-space-tweaksMatthias Clasen2021-12-173-21/+33
| | | | | | | | | | | | | | | | | | | | | | When coming up with a width for a missing space, we were just measuring the hex digits. But in subsetted fonts, such as the ones we use for ci, hex digits might well be missing. Take that into account and still provide some nonzero width for space. Update affected tests.
| * shape: More tweaks to space handlingMatthias Clasen2021-12-173-22/+40
|/ | | | | | | | | | | | | | It is a difficult dance between HarfBuzz and pango which glyphs we let hb synthesize, and which ones we need to fake ourselves. HarfBuzz knows how to create other spaces from 0x20, so if the font is lacking spaces, we want to tell HarfBuzz that we don't have that glyph *except* for 0x20 where we need to fake one, and provide HarfBuzz with a suitable width. Update affected tests.
* Merge branch 'fix-vertical-regression' into 'main'Matthias Clasen2021-12-1717-57/+331
|\ | | | | | | | | Revert "Fix advance widths with transforms" See merge request GNOME/pango!556
| * Revert "Fix advance widths with transforms"fix-vertical-regressionMatthias Clasen2021-12-1717-57/+331
| | | | | | | | | | | | | | | | | | This reverts commit ccb651dd2a876a4f4a4cb9351f05332173e709ba. This broke vertical text rendering, see https://gitlab.com/inkscape/inkscape/-/issues/2950. Update affected tests and add a vertical test.
* | Merge branch 'viewer-serialize-output' into 'main'Matthias Clasen2021-12-171-2/+17
|\ \ | |/ | | | | | | pango-view: Add --serialize-to option See merge request GNOME/pango!555
| * pango-view: Add --serialize-to optionviewer-serialize-outputMatthias Clasen2021-12-171-2/+17
|/ | | | Add an option to produce a serialized output.
* Merge branch 'doc-no-pangoot' into 'main'Matthias Clasen2021-12-171-23/+23
|\ | | | | | | | | docs: Don't build pangoot bits if not enabled See merge request GNOME/pango!554