Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 988fed7a75892691e5cde2a30da154fbdcc61091 https://github.com/WebKit/WebKit/commit/988fed7a75892691e5cde2a30da154fbdcc61091 Author: Nikolas Zimmermann <nzimmerm...@igalia.com> Date: 2023-06-15 (Thu, 15 Jun 2023)
Changed paths: R LayoutTests/platform/glib/svg/zoom/page/zoom-zoom-coords-expected.txt R LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/zoom/page/zoom-zoom-coords-expected.txt R LayoutTests/platform/mac/svg/zoom/page/zoom-zoom-coords-expected.txt M LayoutTests/svg/zoom/page/zoom-zoom-coords-expected.txt M LayoutTests/svg/zoom/page/zoom-zoom-coords.xhtml M Source/WebCore/rendering/svg/SVGLayerTransformComputation.h Log Message: ----------- [LBSE] Computation of on-screen font scaling factor ignores page zoom https://bugs.webkit.org/show_bug.cgi?id=258120 Reviewed by Rob Buis. For standalone SVG documents the page zoom has to be taken into account when computing the on-screen font scaling factor. Currently we ignore the effective zoom factor and thus select a sub-optimal font. Non-scaling-stroke (webkit.org/b/139322) works properly in LBSE, if this fix is applied as well. Two tests fail in LBSE without this patch: svg/text/non-scaling-stroke-textRendering-default.svg and svg/text/non-scaling-stroke-textRendering-geometricPrecision.svg). Covered by new tests added by webkit.org/b/139322 -- easy to test with non-scaling-stroke. Without non-scaling-stroke, this is most noticeable in zoom-zoom-coords.html which now exposes slighly different metrics for <text> since the internal font-size scaling factor changed (now taking zoom into account, as the legacy SVG engine already does). zoom-zoom-coords.xhtml now delivers correct results across all platforms and is identical for legacy SVG engine and LBSE -- get rid of platform specific results, finally. * LayoutTests/platform/glib/svg/zoom/page/zoom-zoom-coords-expected.txt: Removed. * LayoutTests/platform/mac-ventura-wk2-lbse-text/svg/zoom/page/zoom-zoom-coords-expected.txt: Removed. * LayoutTests/platform/mac/svg/zoom/page/zoom-zoom-coords-expected.txt: Removed. * LayoutTests/svg/zoom/page/zoom-zoom-coords-expected.txt: Finally a single non-LBSE/LBSE result for all platforms. * LayoutTests/svg/zoom/page/zoom-zoom-coords.xhtml: * Source/WebCore/rendering/svg/SVGLayerTransformComputation.h: (WebCore::SVGLayerTransformComputation::calculateScreenFontSizeScalingFactor const): Multiply scaling factor by effectiveZoom() (which includes page zoom), but only for non-standalone SVG documents. For standalone SVG documents the page-zoom induced scaling is already part of the CTM. Canonical link: https://commits.webkit.org/265208@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes