← Back to team overview

kicad-developers team mailing list archive

Re: Module icons

 

Hi Jeff,

Moving off-topic from the module icons, can you have a quick check on
retina with the following patch to use nearest-neighbour up-scaling
rather than bilinear?

I have no way to check on a real Retina/hiDPI display so I can't tell
if this is better or not. It keeps existing sharp edges. It looks
slightly less smooth on existing blurry areas (because it's basically
making all pixels 2x2, so it's not actually using the hiDPI). I see it
produces a lot fewer artifacts around curved lines, e.g. the redraw
arrow, which you expect from the bilinear algorithm.

Images attached for reference.

Cheers,

John

On Tue, Mar 19, 2019 at 8:22 PM John Beard <john.j.beard@xxxxxxxxx> wrote:
>
> Hi Jeff,
>
> Presumably for Retina, and other hiDPI displays, we should either be rendering a 2x resolution icon set or we should load them as SVG in the first place rather than doing a bilinear upscale (which will look pretty bad for icons that start out aligned nicely).
>
> IIRC the current upscale method was a stop gap for v5.
>
> Cheers,
>
> John
>
> On 19 March 2019 20:14:12 GMT, Jeff Young <jeff@xxxxxxxxx> wrote:
>>
>> The blurry ones actually look better on a Retina display, but I’m OK with the others if they look better everywhere else.
>>
>> Cheers,
>> Jeff.
>>
>>
>>> On 19 Mar 2019, at 19:54, Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:
>>>
>>> Whew!  I was starting worry about my vision there for minute :)
>>>
>>> On 3/19/2019 3:52 PM, John Beard wrote:
>>>>
>>>> D'oh, yes! Sorry, new ones on the right, I changed it and didn't
>>>> change the text.
>>>>
>>>> Cheers,
>>>>
>>>> John
>>>>
>>>> On Tue, Mar 19, 2019 at 7:50 PM Wayne Stambaugh <stambaughw@xxxxxxxxx> wrote:
>>>>>
>>>>>
>>>>> Hey John,
>>>>>
>>>>> Are you sure the new icons aren't on the right?  The ones on the left
>>>>> look blurry to me.  Either may eyes are totally gone or the icons on the
>>>>> right are the aligned ones.
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Wayne
>>>>>
>>>>> On 3/19/2019 3:43 PM, John Beard wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I plan to pixel align the module icons in Pcbnew, as they are
>>>>>> currently blurry (and not even consistently blurry) - they're probably
>>>>>> the worst offenders left for blurriness. Getting these aligned at 26px
>>>>>> will be a good step towards hiDPI-aware scalable icons, as they will
>>>>>> also be aligned at 2x resolution.
>>>>>>
>>>>>> However, due to a quirk of the number 26, it's impossible to have the
>>>>>> current fat-ish pins, keep the pins and module centred in the icon,
>>>>>> and have 3 pins to a side, and keep them all pixel aligned (which is
>>>>>> why even the most-sharp current icon has blurry middle pins). So the
>>>>>> pins are now a bit skinnier. Hence a quick check that these icons are
>>>>>> acceptable.
>>>>>>
>>>>>> Comparison image attached (new icons on left). I haven't changed any
>>>>>> metaphors or the pin colours.
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> John
>>>>>> ________________________________
>>>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>> More help   : https://help.launchpad.net/ListHelp
>>>>>>
>>>>> ________________________________
>>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>> ________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>
>>
From 4d52af6c0cb858d7908e3781dc8b27186ca85ee7 Mon Sep 17 00:00:00 2001
From: John Beard <john.j.beard@xxxxxxxxx>
Date: Wed, 20 Mar 2019 10:48:59 +0000
Subject: [PATCH] UI: Use nearest-neighbour rescaling for icons

---
 common/bitmap.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/bitmap.cpp b/common/bitmap.cpp
index 1dbd25bd3..0fa27df46 100644
--- a/common/bitmap.cpp
+++ b/common/bitmap.cpp
@@ -139,7 +139,7 @@ wxBitmap KiScaledBitmap( BITMAP_DEF aBitmap, EDA_BASE_FRAME* aWindow )
         // "highest quality". I don't recommend changing this. Bicubic looks
         // blurry and makes me want an eye exam.
         image.Rescale( scale * image.GetWidth() / 4, scale * image.GetHeight() / 4,
-                wxIMAGE_QUALITY_BILINEAR );
+                wxIMAGE_QUALITY_NEAREST );
         return bitmap_cache.emplace( id, wxBitmap( image ) ).first->second;
     }
 }
-- 
2.20.1

Attachment: icon_2x_bilinear.png
Description: PNG image

Attachment: icon_2x_nearest.png
Description: PNG image


Follow ups

References