[Haskell-cafe] Haddock's Hackage page --- Bravo!
Albert Y. C. Lai
trebla at vex.net
Tue Aug 29 01:21:56 UTC 2017
On 2017-08-28 01:25 AM, Joachim Durchholz wrote:
> I see that XY positioning uses dimensionless numbers, while font sizes
> are given in pixels. If the browser interprets the XY values as
> something different than pixels, this would explain what migmit is seeing.
> I don't know whether the SVG or the browser is wrong.
In SVG, lack of unit is taken to mean the px unit. So <text
font-size="6px" x="5" y="7" ...> means the same thing as <text
font-size="6" x="5px" y="7px" ...>.
Next, the fun part is the beginning <svg width="8.5in" height="11in"
viewBox="0 0 170 220" ...> which means:
1px horizontal means 8.5in/170 = 0.05in
1px vertical means 11in/220 = 0.05in
Lastly, to be sure, a web browser is going to have its own twisted idea
of what 1in means, but empirically desktop web browsers use the
simpifying assumption 96dpi (configurable by poorly documented ways
IIRC) so they're going to use 96 physical pixels per "1in". (Indeed, I
have used 3 desktop monitors, including 1 CRT, during the last 20 years
and they all did/do approximately 96dpi, and today I just tested an SVG
of a 5in-by-5in square and it does measure almost 5 inches. To be sure,
Apple products that boast "retina display" and Microsoft Surface Pro are
another story, 220-400dpi.)
So I think this SVG code is pretty robust to scaling. And real web
browsers are actually pretty close to theory in this regard.
More information about the Haskell-Cafe
mailing list