I understand that using non-default zoom level affects my fingerprint by making me more unique. But my eyesight is not perfect, and fonts on some webpages are so tiny that I really need to zoom-in for comfortable reading. In earlier versions tor-browser used to reset custom zoom levels on browser restart, but it has always remembered user defined zoom levels for specific domains during the session, until restart. However, in recent versions TB keeps resetting zoom on every action on the page, if this action changes the url of the page. It happens, for example, when I read some forum and click “next page”. Or, if you go to https://support.torproject.org, set custom zoom level and then click on any of the Topics on the left so that the url will change to https://support.torproject.org/censorship/ (for example), TB will reset zoom to default, and this is very annoying.
I found out that it is possible to avoid such a behavior by setting privacy.resistFingerprinting = false in about:config, but this is definitely not what I want to do. Is there any “less radical” [more safe] setting responsible for zoom only that I can use to avoid this “issue” [feature]?
you can zoom, but any new tab, or window, or change of eTLD+1 (website) regardless of tab/window will reset to 100%. This is actually a large fingerprint and has to do with system scaling, zooming, devices per pixel, and so on = we call this subpixels, and it manifests everywhere. So if you zoom on a page for some reason, the next time you visit you won’t stand out
But my eyesight is not perfect, and fonts on some webpages
emphasis mine: this is the crux of the problem, it’s not universal, if it was then all you would do is adjust your system scaling so everything is uniform across your applications.
I haven’t tested this out much, I’m not super savvy on all this, I tend to use native resolution, just get a bigger monitor and I don’t have any issues between apps or whatever. but another way, this time to only affect the browser (all of it including toolbars etc), is to change the value of layout.css.devPixelsPerPx in about:config. I honestly believe this is not the best solution, and there may be weird side effects including subpixels (you’ll stand out more), but I’m not in your shoes. Try it: open about:config and change it for example to 1.1
But of course this sucks since it’s only some websites. Not recommending it in general, but if your threat model is OK with it, you could try an extension that auto zooms on remembered sites - i.e by default do nothing, add sites and zoom sizes per site to a list. Something like Zoom Page WE – Get this Extension for 🦊 Firefox (en-US) - you will have to test it - i.e is on a very few sites, tell it to zoom in x amount if your threat model thinks it’s OK