Re: HiDPI/Retina improvements, confluence page
Hi Eirik, thanks for summarization of HiDPI related issues. Besides of icons, there are issues with terminal window used in HiDPI (e.g. NETBEANS-819) I did some research and disover some problems. Please let me know if you or somebody else would be interested in help to solve this issues. thanks, m. On sobota 6. apríla 2019 0:53:48 CEST Eirik Bakke wrote: > There has been recurring discussions about making NetBeans look better on > HiDPI (retina) screens. This is a large umbrella issue, touching all three > major operating systems (Windows, Linux, and MacOS), with many subtasks > involved. I have created a Confluence page which summarizes the current state > of HiDPI/Retina on NetBeans, and the high-level TODOs: > > https://cwiki.apache.org/confluence/display/NETBEANS/HiDPI+%28Retina%29+improvements > > The biggest unknown here is probably how to replace the old bitmap icons > (several thousands, or at least hundreds) with scalable equivalents. But > before that is done, SVG icons must be supported from the NetBeans Platform > APIs (ImageUtilities, Node etc.). > > -- Eirik > >
AW: HiDPI/Retina improvements, confluence page
Why trying to convert PNG to SVG? Why not using Icons that are there for years? Made out of SVG. Like font awesome or material Icons or whatever. We don’t need images converted to SVG. Either we need SVG support in NetBeans or we need to convert public SVG icons to PNG. IMHO Cheers Chris Von: Tim Boudreau Gesendet: Sonntag, 7. April 2019 09:39 An: dev@netbeans.incubator.apache.org Betreff: Re: HiDPI/Retina improvements, confluence page FWIW, I've played with *programmatic* conversion of icons to SVG. It is not exactly practical (at least without, say, a bunch of deep learning stuff). Basically the task is a variety of pattern recognition problems and optimization problems - first recognizing WHAT to draw, and then how to do that optimally (you can convert anything to SVG if it's a bunch of 1-pixel rectangles :-)). Recognizing lines is simple enough - combine generic edge detection with walking the edge and analyzing the colors. Gradient detection for vertical and horizontal and 45 degree linear gradients is pretty simple, and cyclic gradients are a matter of making a difference matrix and seeing if there's a fold column or row at which it cancels out. It would probably be possible to write something that mows through all images in the codebase and generates skeleton SVG based on what can be detected for the entire icon set. Put that together with a little web app showing the original, skeleton SVG w/ download, and a way to upload and view contributed SVG icons and it would be pretty easy to crowdsource this far and wide. There is one Unix utility, potrace, which does decent but monochrome image to SVG conversion - but just shapes with a threshold for black versus white. I don't think it would be much use here. -Tim On Fri, Apr 5, 2019 at 6:54 PM Eirik Bakke wrote: > There has been recurring discussions about making NetBeans look better on > HiDPI (retina) screens. This is a large umbrella issue, touching all three > major operating systems (Windows, Linux, and MacOS), with many subtasks > involved. I have created a Confluence page which summarizes the current > state of HiDPI/Retina on NetBeans, and the high-level TODOs: > > > https://cwiki.apache.org/confluence/display/NETBEANS/HiDPI+%28Retina%29+improvements > > The biggest unknown here is probably how to replace the old bitmap icons > (several thousands, or at least hundreds) with scalable equivalents. But > before that is done, SVG icons must be supported from the NetBeans Platform > APIs (ImageUtilities, Node etc.). > > -- Eirik > > -- http://timboudreau.com
Re: HiDPI/Retina improvements, confluence page
FWIW, I've played with *programmatic* conversion of icons to SVG. It is not exactly practical (at least without, say, a bunch of deep learning stuff). Basically the task is a variety of pattern recognition problems and optimization problems - first recognizing WHAT to draw, and then how to do that optimally (you can convert anything to SVG if it's a bunch of 1-pixel rectangles :-)). Recognizing lines is simple enough - combine generic edge detection with walking the edge and analyzing the colors. Gradient detection for vertical and horizontal and 45 degree linear gradients is pretty simple, and cyclic gradients are a matter of making a difference matrix and seeing if there's a fold column or row at which it cancels out. It would probably be possible to write something that mows through all images in the codebase and generates skeleton SVG based on what can be detected for the entire icon set. Put that together with a little web app showing the original, skeleton SVG w/ download, and a way to upload and view contributed SVG icons and it would be pretty easy to crowdsource this far and wide. There is one Unix utility, potrace, which does decent but monochrome image to SVG conversion - but just shapes with a threshold for black versus white. I don't think it would be much use here. -Tim On Fri, Apr 5, 2019 at 6:54 PM Eirik Bakke wrote: > There has been recurring discussions about making NetBeans look better on > HiDPI (retina) screens. This is a large umbrella issue, touching all three > major operating systems (Windows, Linux, and MacOS), with many subtasks > involved. I have created a Confluence page which summarizes the current > state of HiDPI/Retina on NetBeans, and the high-level TODOs: > > > https://cwiki.apache.org/confluence/display/NETBEANS/HiDPI+%28Retina%29+improvements > > The biggest unknown here is probably how to replace the old bitmap icons > (several thousands, or at least hundreds) with scalable equivalents. But > before that is done, SVG icons must be supported from the NetBeans Platform > APIs (ImageUtilities, Node etc.). > > -- Eirik > > -- http://timboudreau.com
HiDPI/Retina improvements, confluence page
There has been recurring discussions about making NetBeans look better on HiDPI (retina) screens. This is a large umbrella issue, touching all three major operating systems (Windows, Linux, and MacOS), with many subtasks involved. I have created a Confluence page which summarizes the current state of HiDPI/Retina on NetBeans, and the high-level TODOs: https://cwiki.apache.org/confluence/display/NETBEANS/HiDPI+%28Retina%29+improvements The biggest unknown here is probably how to replace the old bitmap icons (several thousands, or at least hundreds) with scalable equivalents. But before that is done, SVG icons must be supported from the NetBeans Platform APIs (ImageUtilities, Node etc.). -- Eirik