You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Expected outcome
I expected that the spacing between A and T is consistent between both formats. Besides this minor visual issues, I use get_window_extent() to place a second text item in bold next to the first one. The space between the two texts varies significantly between output formats. get_window_extent() considers the kerning information, so the space looks correct in PNG but is usually too small in PDF files.
The issue is related to #18282. Here the same issue was fixed for strings with multi-byte chars. I don't see the changes from #18282 in version 3.3.4, but they will not effect the single-byte string case.
Unaware of #18282, I've implemented a fix for the single-byte case. I will open a PR, but you might have other ideas on how to implementation a fix.
Matplotlib version
Operating system: Ubuntu 16.04
Matplotlib version: 3.3.4
Matplotlib backend: TkAgg (but actually PDF?)
Python version: 3.7.5
Font: DejaVuSans Type 3
I've installed matplotlib in a virtualenv with pip.
The text was updated successfully, but these errors were encountered:
Bug report
Bug summary
Kerning is not applied in the PDF output of pure single-byte strings which leads to inconsistencies between PDF and other output formats.
Code for reproduction
Actual outcome

Expected outcome
I expected that the spacing between
A
andT
is consistent between both formats. Besides this minor visual issues, I useget_window_extent()
to place a second text item in bold next to the first one. The space between the two texts varies significantly between output formats.get_window_extent()
considers the kerning information, so the space looks correct in PNG but is usually too small in PDF files.The issue is related to #18282. Here the same issue was fixed for strings with multi-byte chars. I don't see the changes from #18282 in version 3.3.4, but they will not effect the single-byte string case.
Unaware of #18282, I've implemented a fix for the single-byte case. I will open a PR, but you might have other ideas on how to implementation a fix.
Matplotlib version
I've installed matplotlib in a virtualenv with pip.
The text was updated successfully, but these errors were encountered: