
No difference between font size units 'pixels' and 'points'
20 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Jakob Weis
am 20 Sep. 2024
Kommentiert: Jakob Weis
am 7 Feb. 2025
I noticed when changing the font size of a figure it makes no difference if one chooses pixels or points as units. Is this a known issue or intended?
figure(1)
set(gcf,'Position',[10 10 800 800])
peaks;
fontsize(16,'pixels')
figure(2)
set(gcf,'Position',[10 10 800 800])
peaks;
fontsize(16,'points')


left: figure 1, font size = 16 px; right: figure 2, font size = 16 pt; created using MATLAB Desktop
Interestingly, creating the same figures using the code above in the New Desktop for MATLAB produces 33% bigger font sizes given in points compared to pixels (consistent with the points/pixels size conversion).


left: figure 1, font size = 16 px; right: figure 2, font size = 16 pt; created using New Desktop for MATLAB
5 Kommentare
Bruno Luong
am 22 Sep. 2024
Perhaps the New Desktop redefines the pixel unit differently. I don't know New Desktop myself.
Akzeptierte Antwort
DGM
am 20 Sep. 2024
Bearbeitet: DGM
am 20 Sep. 2024
I'm not sure how it's doing the scaling internally, but my guess would start here:
% units per em
sz = 16;
% units per inch
pxpin = get(0,'ScreenPixelsPerInch'); % px/in
ptpin = 72; % pt/in
% inches per em
szinpx = sz/pxpin
szinpt = sz/ptpin
That would tell us that on this system, the rendered sizes should differ, but measuring the exact height of 1 em is a bit of a chore unless you know what text features are 1 em high. Instead, we can just measure the ratio of character heights.
% expected ratio of on-screen sizes
ptpin/pxpin
On my machine, the calculated ratio seems to be quite close to the size ratio I can measure from screenshots.
If your reported display resolution were 72, then the rendered sizes would be the same. It seems that would be expected on a Mac.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

