<div style="display: flex; flex-wrap: wrap; white-space: pre-wrap; align-items: center; "><img height="20" width="20" style="border-radius:50%; margin-right: 4px;" decoding="async" src="https://avatars.githubusercontent.com/u/360803?s=20&v=4" /><strong>gravitystorm</strong> left a comment <a href="https://github.com/openstreetmap/openstreetmap-website/issues/6618#issuecomment-3665139743">(openstreetmap/openstreetmap-website#6618)</a></div>
<blockquote>
<p dir="auto">the only remaining issue would be incremental zooming.</p>
</blockquote>
<p dir="auto">Yes, I think this discussion has gone far off topic in places. I don't want to discuss sub-pixel rendering, device vs logical pixels, lack of retina support on OSMF hosted tiles, etc - these aren't the topic at hand.</p>
<p dir="auto">So let's get back to it. For raster tile layers, these must only be shown at integer zoom levels. This is to stop what I call the "whipsaw" effect on text and icon sizes that you get on continuous zooms. Here's an illustration of continuous zoom with a raster layer:</p>
<a href="https://github.com/user-attachments/assets/09127f1a-8c39-4915-916a-36a431fc4729">inconsistent.png (view on web)</a>
<p dir="auto">The text in the road shield, along with the icon used for the shield, get steadily larger as you (fractionally) zoom, then suddenly shrink, and then start growing again. This is what we want to avoid. The text should be a constant size as you zoom in and out.</p>
<p dir="auto">When raster images are shown with integer zooms, you avoid this whipsaw effect. When client-side rendering is used with continuous zooms, you also avoid the effect. So while we can support fractional zooms for client-side rendered layers, we must use integer zooms for raster layers.</p>
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/issues/6618#issuecomment-3665139743">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAK2OLNVALJVS52OZH5IKYL4CFEK5AVCNFSM6AAAAACPDOKZPGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMNRVGEZTSNZUGM">unsubscribe</a>.<br />You are receiving this because you are subscribed to this thread.<img src="https://github.com/notifications/beacon/AAK2OLLXBCRXUTVS64GHDKD4CFEK5A5CNFSM6AAAAACPDOKZPGWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTW2OWMB6.gif" height="1" width="1" alt="" /><span style="color: transparent; font-size: 0; display: none; visibility: hidden; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0; mso-hide: all">Message ID: <span><openstreetmap/openstreetmap-website/issues/6618/3665139743</span><span>@</span><span>github</span><span>.</span><span>com></span></span></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/issues/6618#issuecomment-3665139743",
"url": "https://github.com/openstreetmap/openstreetmap-website/issues/6618#issuecomment-3665139743",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>