Review Request 116027: High dpi support for Svg

Marco Martin notmart at gmail.com
Tue Feb 25 19:10:38 UTC 2014



> On Feb. 25, 2014, 11:10 a.m., David Edmundson wrote:
> > src/plasma/svg.cpp, line 132
> > <https://git.reviewboard.kde.org/r/116027/diff/1/?file=245901#file245901line132>
> >
> >     Do we want to have size and devicePixelRatio separate in the cache ID?
> >     
> >     It means if I request 20x20 at ratio 1.0, it will have a different ID to 40x40 at ratio 2.0 despite being (as I understand it) visually identical?
> 
> Marco Martin wrote:
>     the only problem is that when the svg is not scaled, instead of the actual size, "Native" gets in the id instead.
>     now i don't remember the reason anymore, but it breaks in that case

(/me digs down in git history)
at that point you don't know yet what is the size of the element (or the whole svg for what matters), because the renderer doesn't exist yet (and one of the points of the cache is to avoid to instantiate the svg renderer altogether if possible)


- Marco


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/116027/#review50794
-----------------------------------------------------------


On Feb. 24, 2014, 5:30 p.m., Marco Martin wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/116027/
> -----------------------------------------------------------
> 
> (Updated Feb. 24, 2014, 5:30 p.m.)
> 
> 
> Review request for Plasma.
> 
> 
> Repository: plasma-framework
> 
> 
> Description
> -------
> 
> This gives support in Svg for devicePixelRatio, just exposed in the api from Svg side.
> 
> 
> on the component side, it sets the devicepixelratio of the svg and framesvg with units.
> devicepixelratio is always set integer in the svg, so needs at least 192dpi to double up.
> (it needs to be integer to have lines contained inside a svg piece to keep being pixel aligned)
> 
> 
> Diffs
> -----
> 
>   src/declarativeimports/core/framesvgitem.h e348c4c 
>   src/declarativeimports/core/framesvgitem.cpp 1826d88 
>   src/declarativeimports/core/svgitem.h c8be7cc 
>   src/declarativeimports/core/svgitem.cpp e90751a 
>   src/declarativeimports/plasmacomponents/qml/ToolButton.qml 2319879 
>   src/plasma/framesvg.h 482956d 
>   src/plasma/framesvg.cpp 9e1a53e 
>   src/plasma/private/framesvg_p.h 1bbc744 
>   src/plasma/private/svg_p.h 332efda 
>   src/plasma/svg.h 01d98f8 
>   src/plasma/svg.cpp 9ec2aa5 
> 
> Diff: https://git.reviewboard.kde.org/r/116027/diff/
> 
> 
> Testing
> -------
> 
> unfortunately i can only test by hardcoding different values and check if the layout of the widgets stays correct, and is fine, it would be needed somebody with a retina screen to see it really in action
> 
> 
> Thanks,
> 
> Marco Martin
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20140225/b6817921/attachment.html>


More information about the Plasma-devel mailing list