Eclipse interface icons very small on high resolution screen in Windows 8.1
Asked Answered
S

25

139

The various icons and buttons in the Eclipse (Kepler) interface are very, very small on a laptop with a 3200x1800px screen. The red error decoration that appears to indicate errors on files is difficult to see unless my nose a few cm from the screen.

I've played around with adjusting the screen resolution and other settings in the operating system (Windows 8.1), which helps, but results in other applications appearing too large, and even then the Eclipse icons are uncomfortably small. Enlarging the fonts in the Eclipse preferences (window>preferences>Dialog Font) doesn't affect the icon size.

Is there any easy way to force larger icons? Any work arounds (I've used the Magnifier but that's a rather clunky solution)? Should I just buy a magnifying glass and keep it next to my mouse? Maybe someone should make a mouse with a magnifying glass embedded? :)

Thanks.

Sadowski answered 21/12, 2013 at 10:40 Comment(9)
can u try using windows without aero mode..may be that could possibly the thing will change the view icons..or change the screen resolution only for eclipse..Cormac
I've noticed that when Eclipse starts up, the splash screen initially shows up enlarged (correctly), but then at some point goes back to normal resolution (small). This persists in the workbench. I wonder if that happens when switching from the .exe execution to the JVM, and it then loses some information Windows needs to scale correctly?Treenware
Although there are many good workaround solutions in these answers, there is an official bug report on Eclipse (bugs.eclipse.org/bugs/show_bug.cgi?id=421383). I advise you vote for the bug if this affects you, to get it prioritized.Allisonallissa
I wonder if something could be done using the new CSS features in Eclipse 4. I've been looking but I'm finding this CSS trickery to be quite complex and haven't found a simple .icon class yet for which we can set the size to 200%.Fustigate
This is fixed on the latest version Eclipse PhotonGerlac
experience with kubuntu 19.10 . Eclipse IDE for C/C++ Developers Version: 2019-09 R (4.13.0) Build id: 20190917-1200Leolaleoline
Workaround. I have experience with eclipse with kubuntu 19.10 (kde5). Eclipse IDE for C/C++ Developers Version: 2019-09 R (4.13.0) Build id: 20190917-1200 . Native/highest laptop screen resolution 3840x2160. (HP spectre x360) used with Scale Display factor 3 . I edited eclipse/eclipse.ini manually to contain (Dsun.java2d.dpiaware=true) --launcher.appendVmargs -vmargs -Dsun.java2d.dpiaware=trueLeolaleoline
Continuation: When eclipse is started at highest resolution and scale factor 3 fonts are ok, but icons are were small. In kde display settings I temporary go down go with resolution, 2/3 of original resolution. I use this 2560x1440 (going down with screen resolution should scale up fonts ) and change scale factor from 3 to 2. Both changes in total should have neutral effect. I log out of kde session into sddm manager and log in again. When I start eclipse the icons are amazingly displayed with the right size comparable with font and readable.Leolaleoline
Continuation:Now I can go back to display setting and change resolution to 3840x2160 and scale factor 3 and apply. The change takes effect immediately and icons are still with the correct (big) size and with highest resolution. It is only until I log out of kde and log in again and start eclipse again. QT scale parameters marian@kubuntu1910:~$ env | grep QT QT_SCREEN_SCALE_FACTORS=eDP-1=2;DP-1=2;HDMI-1=2;DP-2=2;HDMI-2=2; QT_AUTO_SCREEN_SCALE_FACTOR=0Leolaleoline
L
5

I have looked up solutions for this issue for the last month, but I have not found an ideal solution yet. It seems there should be a way around it, but I just can't find it.

I use a laptop with a 2560x1600 screen with the 200% magnification setting in Windows 8.1 (which makes it looking like a 1280x800 screen but clearer).

Applications that support such "HiDPI" mode look just gorgeous, but the ones that don't (e.g. Eclipse) show tiny icons that are almost unreadable.

I also use an outdated version of Visual Studio. That has not been updated for HiDPI (obviously MS wants me to use a newer version of VS), but it still works kind of ok with HiDPI screens since it just scales things up twice -- the sizes of icons and letters are normal but they look lower-resolution.

After I saw how VS works, I began looking up a way to launch Eclipse in the same mode since it would not be technically very hard to just scale things up like how VS does. I thought there would be an option I could set to launch Eclipse in that mode. I couldn't find it though.

After all, I ended up lowering the screen resolution to 1/4 (from 2560x1600 to 1280x800) with no magnification (from 200% to 100%) and not taking advantage of the high-resolution screen until Eclipse gets updated to support it since I had to do some work, but I am desparately waiting for an answer to this issue.

Lorollas answered 21/12, 2013 at 17:48 Comment(4)
Thanks, Jae. I've taken your approach also: reducing the screen resolution and magnification in tandem. It's not an ideal solution since many applications look much better at the higher resolution. Hopefully more applications will take advantage of the HiDPI functions soon.Sadowski
I just found a thread related to this matter: bugs.eclipse.org/bugs/show_bug.cgi?id=421383Lorollas
@Lorollas while the bug you linked resolved the fundamental issue in SWT, the Eclipse UI still has to adopt the new API, see bugs.eclipse.org/382972 (still unresolved as of this writing).Einsteinium
From Windows 10 1703 we can turn on scaling of an application GUI as in the Devin's answer.Allusive
D
102

I struggled with this issue for a little bit too. I noticed a lot of you posted really complicated resolutions but there is a much easier way to do this! Its just a program and you shouldn't have to modify scripts, or install third party tools. The issue is related to High DPI scaling as mentioned above but what I think a lot of you are missing is that you can't directly modify compatibility settings on the launcher itself. The launcher and eclipse are two different programs! You need to browse to the Eclipse.exe and override the High DPI scaling option there. Once set, you can use the launcher as normal. The launcher will hit the executable, launch the eclipse.exe and since you set the compatibility settings on the .exe it will run using those settings. I spent like 10 minutes tracking down where the exe was so if its any help mine was located in: C:\Users\username\AppData\Local\Yatta\Launcher\installations\eclipse-ide-for-java-developers\eclipse.exe

Here is a screen shot of how I set my compatibility settings.

Eclipse.exe compatibility settings

And yes, the icons were super small before adjusting this setting. I tried setting compatibility settings on the launcher itself but it obviously didn't fix the issue. But after setting the override High DPI setting for the eclipse.exe icons are now normal size. Let me know if this works for others!

Daliadalila answered 10/7, 2018 at 14:58 Comment(9)
This is very cool and I plan to use this feature on other applications.Anastomosis
This is great the only problem is that eclipse is showing a lot of things unsharp.Hawes
@ChagaiFriedlander, Choosing "System (Enhanced)" instead of "System" made text more sharp on my notebook display.Allusive
From Windows 10 1803 the checkbox is visible after clicking on the "Change high DPI settings" button.Allusive
This worked best for me, but it kept hiding the text on the code tabs. As of Version: 2020-09 (4.17.0) Build id: 20200910-1200 I disabled it again and it works on a 4k resolution.Consent
Simple and effective!Prisage
This solution also works for the STS4 build of Eclipse as wellKeelboat
this work best for me too. the enhanced option caused my tabs to disappear on mouseover.Incurrence
I tried this solution, but it cause blurry and disappearing icons, when hovering over the icons with my mouse. However, Tim Dowty's solution worked perfect for me without side-effects.Pashto
O
53

I found a reference that suggested adding the following to eclipse.ini

-Dswt.enable.autoScale=true
-Dswt.autoScale=200
-Dswt.autoScale.method=nearest

This doubled the size of the icons for me on Windows 10. I am using Eclipse Version: 2020-03 (4.15.0)

Oesophagus answered 1/5, 2020 at 16:10 Comment(8)
I like this solution because it does not blurry (zooming) the icon images but seems to natively rescale themAllsun
Awesome! I am using Spring Tool Suite 4 Version: 4.9.0.RELEASE Build Id: 202012132054 on windows 10. Your solution just works!!Centipede
This hack is really cool. Just add it to the eclipse.ini & restart. @Tim Dowty - thank you so much!! Can I change the auto scale to less than 200 ? Will that zoom in properly?Reubenreuchlin
Under ubuntu 21.10 using wayland this did not work so well. It scaled everything, not just the icons, and the redraws were the all over the place.Adjoining
The "properties" solution failed for STM32CubeIDE on Windows 11 in that when I move the cursor away from a file tab it disappears. This solution works well!Franz
Version: 4.14.0.RELEASE the file seems to be renamed at least in win11 sts-4.14.0.RELEASE\SpringToolSuite4.ini" your solution seems the best of all theseGodrich
Thank you so much! Your solution worked perfect for me. This should be the top solution in my opinion.Pashto
This solution works on Version: 2023-06 (4.28.0) on Windows.Leeward
P
40

I figured that one solution would be to run a batch operation on the Eclipse JAR's which contain the icons and double their size. After a bit of tinkering, it worked. Results are pretty good - there's still a few "stubborn" icons which are tiny but most look good.

Eclipse After Processing on QHD

I put together the code into a small project: https://github.com/davidglevy/eclipse-icon-enlarger

The project works by:

  1. Iterating over every file in the eclipse base directory (specified in argument line)
  2. If a file is a directory, create a new directory under the present one in the output folder (specified in the argument line)
  3. If a file is a PNG or GIF, double
  4. If a file is another type copy
  5. If a file is a JAR or ZIP, create a target file and process the contents using a similar process: a. Images are doubled b. Other files are copied across into the ZipOutputStream as is.

The only problem I've found with this solution is that it really only works once - if you need to download plugins then do so in the original location and re-apply the icon increase batch process.

On the Dell XPS it takes about 5 minutes to run.

Happy for suggestions/improvements but this is really just an adhoc solution while we wait for the Eclipse team to get a fix out.

Poly answered 12/4, 2014 at 1:0 Comment(5)
Could anybody build it, please (for use with Eclipse C/C++)?Frantic
Could you elaborate a bit on how to run this in Eclipse? When importing this as a java project, I get 58 errors. I know nothing about Java. Preferably add to README.md. :)Fustigate
you can run it by run as -> Java Application and then add two arguments -b PATH_TO_YOUR_ECLIPSE_DIR -o PATH_TO_EMPTY_OUTPUT_DIRCardamom
It threw an ArrayOutOfBounds Exception after a while, but if you copy all missing files from your eclipse folder (no overwrites) into the output folder it starts and the icons are bigger.Cardamom
For others trying to run this: mvn install java -cp <generated jar>:<list of other dependenies list in output of mvn build> testEclipse.FixIcons -b ~/eclipse -o ~/apps/eclipse-big-iconsAdjoining
J
38

Had same problem, to resolve it, create a shortcut of the launcher, right click > properties > compatibility > tick on 'Override high DPI scaling behaviour' and select System Enhanced from the dropdown as shown on pic below. Relaunch eclipse after changes.

enter image description here

Janeth answered 18/10, 2018 at 8:25 Comment(5)
This is the only simple solution that worked for me on Windows 10 with Eclipse PhotonVicinage
i had my tabs start flickering and disspearing after doing this so i had to go back and now i still have small icons :(Perfect
From Windows 10 1803 the checkbox is visible after clicking on the "Change high DPI settings" button.Allusive
Worked, Override high DPI + System was the fix.Ostrich
In Windows 11, with a 4k monitor, when I choose System (Enhanced) I get perfect size for the icons, and such icons do not appear out of focus (like when choosing the option System). Thanks for the suggestion!!!Champerty
R
19

For completion I thought I'd add that this issue is solved in Eclipse 4.6 Neon https://www.eclipse.org/downloads/index-developer.php (the current developer version). The icons look a bit sad (low resolution) but at least they are scaled correctly on my 4k screen.

Replete answered 7/5, 2016 at 7:49 Comment(3)
Here the "what's new" page for Neon...and you'll never guess what is at the top of the list: eclipse.org/eclipse/news/4.6/platform.phpDicky
For those, like me, who found that even on the new Eclipse it wasn't scaled, see here: swt-autoscale-tweaks Basically I added -Dswt.autoScale=quarter to my eclipse.ini file.Waligore
@CrazyPenguin: Awesome, this is the only solution that worked for me, thanksInsincere
S
11

I'm running on a Dell XPS 15. Rather than stuffing around with resolutions and magnifications and all that, I just did the following:

  • Right click the launcher icon
  • Click on "properties"
  • Select the "compatibility" tab
  • Choose "Windows XP (Service Pack 3)" for "Run this program in compatibility mode for:".

Everything seems to work fine and the display looks good (if a bit blurry/pixelly). The only difference i can see is that the title bar is in Windows XP style (oh no!!!).

I'm curious to know if this works for others and if anyone comes across any problems.

Shahaptian answered 18/3, 2014 at 3:42 Comment(8)
Sadly, there is no "Windows XP ..." in the dropdown in Windows 8.1, the lowest version is Vista (which, at least on my system, prevents start-up)Rubie
@cgoddard That's... not true. I just followed Jamie's instructions on Windows 8.1 and it worked perfectly.Minnie
@Minnie not sure what makes you think that, there is no option for win xp. have recently done a clean install, and now setting compatibility mode doesn't stop it from loading, but it still looks the sameRubie
@cgoddard I think that because I just did it. tinypic.com/r/1037u5e/8 Don't know what to tell you...Minnie
@Minnie fair enough, however: networksteve.com/windows/topic.php/… & tinypic.com/r/6nz8e1/8Rubie
I just found that if you turn off "scaling" setting without setting "compatible with Windows XP" or whatever, you can get very clear fonts and still have Metro style window.Seclude
You guys are both right. The option only exists for 32-bit eclipse. I attempted the instructions with 64-bit eclipse and I see only vista compatibility. I tried with 32-bit and I saw the version of available settings with Windows XP and it WORKS! This is great. It's finally made my Yoga II Pro useful for developing Java.Seacock
Thanks for this simple and unintrusive solution. Works for me on Windows 10.Ddene
C
9

I found the easiest way was to create a manifest file which forces Windows to scale the application. It is blurry and non-ideal but better than an almost invisible UI! It seems this technique is applicable to any application too.

Create an eclipse.exe.manifest file in the same folder as eclipse.exe and place the following XML within it:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.Windows.Common-Controls"
      version="6.0.0.0" processorArchitecture="*"
      publicKeyToken="6595b64144ccf1df"
      language="*">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.VC90.CRT"
      version="9.0.21022.8"
      processorArchitecture="amd64"
      publicKeyToken="1fc8b3b9a1e18e3b">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
  <security>
    <requestedPrivileges>
      <requestedExecutionLevel
        level="asInvoker"
        uiAccess="false"/>
    </requestedPrivileges>
  </security>
</trustInfo>

<asmv3:application>
  <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
    <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
  </asmv3:windowsSettings>
</asmv3:application>

</assembly>
Corny answered 1/5, 2015 at 12:25 Comment(1)
Note: for this to work you have to modify the registry. Open regedit and create a key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest (DWORD) with value 1.Stretcher
T
7

The best way is to edit the exe manifest with something like resource tuner and add

    <application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings" xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware></windowsSettings></application>        

after dependency to set the exe as dpi unaware. This way the program will be a little pixelated but it will be in a confortable size.

Temblor answered 2/1, 2015 at 8:57 Comment(1)
For more information: danantonielli.com/adobe-app-scaling-on-high-dpi-displays-fixMelinite
S
6

For anyone seeing this after upgrading their Windows 10 (post April 2018 update), the DPI Scaling Override setting has moved into a dedicated window:

enter image description here

enter image description here

Slatternly answered 3/12, 2020 at 9:11 Comment(0)
L
5

I have looked up solutions for this issue for the last month, but I have not found an ideal solution yet. It seems there should be a way around it, but I just can't find it.

I use a laptop with a 2560x1600 screen with the 200% magnification setting in Windows 8.1 (which makes it looking like a 1280x800 screen but clearer).

Applications that support such "HiDPI" mode look just gorgeous, but the ones that don't (e.g. Eclipse) show tiny icons that are almost unreadable.

I also use an outdated version of Visual Studio. That has not been updated for HiDPI (obviously MS wants me to use a newer version of VS), but it still works kind of ok with HiDPI screens since it just scales things up twice -- the sizes of icons and letters are normal but they look lower-resolution.

After I saw how VS works, I began looking up a way to launch Eclipse in the same mode since it would not be technically very hard to just scale things up like how VS does. I thought there would be an option I could set to launch Eclipse in that mode. I couldn't find it though.

After all, I ended up lowering the screen resolution to 1/4 (from 2560x1600 to 1280x800) with no magnification (from 200% to 100%) and not taking advantage of the high-resolution screen until Eclipse gets updated to support it since I had to do some work, but I am desparately waiting for an answer to this issue.

Lorollas answered 21/12, 2013 at 17:48 Comment(4)
Thanks, Jae. I've taken your approach also: reducing the screen resolution and magnification in tandem. It's not an ideal solution since many applications look much better at the higher resolution. Hopefully more applications will take advantage of the HiDPI functions soon.Sadowski
I just found a thread related to this matter: bugs.eclipse.org/bugs/show_bug.cgi?id=421383Lorollas
@Lorollas while the bug you linked resolved the fundamental issue in SWT, the Eclipse UI still has to adopt the new API, see bugs.eclipse.org/382972 (still unresolved as of this writing).Einsteinium
From Windows 10 1703 we can turn on scaling of an application GUI as in the Devin's answer.Allusive
S
5

The below change works seamlessly.

Quoting from CrazyPenguin's reply

"For those, like me, who found that even on the new Eclipse it wasn't scaled, see here: swt-autoscale-tweaks Basically I added -Dswt.autoScale=quarter to my eclipse.ini file."

Schauer answered 28/6, 2018 at 10:43 Comment(0)
S
4

Best effortless solution is to go for Eclipse Neon. All bugs are fixed as a part of this release. https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383

Slacker answered 8/8, 2016 at 3:0 Comment(4)
A small caveat is it didn't immediately fix the problem but adding the following to the vmargs of my eclipse.ini file did: -Dswt.autoScale=200Eustashe
I had to add both -Dswt.autoScale=200 and turn off GTK3 support (env SWT_GTK3=0 eclipse)Grigri
I have included -Dswt.autoScale=200 and icons size increased but lost the resolution quality completely. So I have reverted that change in eclipse.ini file. But even after removing -Dswt.autoScale=200 entry, the icons still appearing big in my eclipse photonPlowboy
"All bugs are fixed..." seems like a bit of an overstatement to me.Matteson
M
4

Have a look at Neon (4.6) M6 - New and Noteworthy, the milestone release contains some automatic scaling for images (e.g. for toolbar).

SWT provides resolution-based auto-scaling

SWT now automatically scales images on high-DPI monitors on Windows and Linux, similar to the Mac's Retina support on OS X. In the absence of high-resolution images, SWT will auto-scale the available images to ensure that SWT-based applications like Eclipse are scaled proportionately to the resolution of the monitor.

enter image description here

This feature can be disabled on Windows and GTK by setting this VM argument to false in eclipse.ini or on the command line after -vmargs:

-Dswt.enable.autoScale=false

Auto-scaling cannot be disabled on the Mac as it is provided by the OS.

Caveats: We're aware that some scaled images look bad at scale factors less than 200%. This will be improved in M7. Furthermore, we're working on support for high-DPI images in Platform UI, so that plug-in providers can add high-DPI icons without doing any code changes.



Or maybe this helps, in Eclipse Mars API for high resolution was added

New APIs have been added to provide support for rendering high-resolution images on high-DPI monitors. Two constructors have been added to the Image class. They accept image-provider callbacks that allow clients to supply resolution-dependent versions of images:

public interface ImageDataProvider {
  public ImageData getImageData (int zoom);
}
public interface ImageFileNameProvider {
  public String getImagePath (int zoom);
}

Depending on the user's monitor configuration, SWT will request images with the corresponding zoom level. Here's an example that displays 3 original images, followed by variants whose resolution changes depending your monitor's resolution: Snippet367.java.

Note that this is just the first step to support high-resolution images in SWT and Eclipse-based applications. Work is underway to adopt the new APIs in the platform. Futhermore, more work in SWT is required to properly support drawing into high-resolution images via GC.

APIs for high-DPI monitor support
http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2FwhatsNew%2Fplatform_isv_whatsnew.html

Modifier answered 28/10, 2016 at 9:5 Comment(1)
I've just installed Neon M7, and changing the autoscale value has no effect on the icon size.. ehh -vmargs -Dswt.autoScale=300Truism
T
3

-SurfacePro3-

  • Download and unzip eclipse "32bit Version".
  • Run on "Windows XP mode".
Taphouse answered 13/10, 2014 at 13:35 Comment(0)
S
3

The compatibility mode for Windows Xp, it's only available for the Eclipse 32 bit version and after running in this compatibility mode the icons and text will be the right size, but blurry because they are scaled from their native resolution to the screen resolution and doing so the quality is lost.

Seabury answered 26/11, 2014 at 14:15 Comment(0)
F
3

I fixed @Sigh's solution by creating a (Linux) shellscript (.sh) to do something similar. This is very crude, brutal, and requires adoption for your specific system. Use at your own risk. It might break your entire installation. Make backups of the folders before you run this script. Script can be improved.

#!/bin/bash

for J in *.jar
do
        echo "Copying $J..."
        mkdir -p "/tmp/$J"
        cp "$J" "/tmp/$J/"
        cd "/tmp/$J"

        echo "Extracting $J..."
        jar xf "$J"
        rm "$J"

        echo "Processing images..."
        find . -name "*.gif" -exec convert {} -resize 200% {} \;

        echo "Compressing $J..."
        if [ `ls .[^.]* 2>/dev/null | wc -l` = 0 ]
        then
                jar cf "$J" *
        else
                jar cf "$J" * .[!.]*
        fi
        cd -
        mv $J{,-bak}
        mv "/tmp/$J/$J" .
        rm -rf "/tmp/$J"

        echo "Done."
        echo ""
done

Run this in /opt/eclipse/plugins and ~/.eclipse/org.eclipse.platform_4.x.x/plugins (or whatever the paths for your installation are). Same issues as with @Sigh's solution: This is a brutal "fix" and breaks after every update or new installation.

Script can be perfected:

  • Ignore .jar files without /icons/ folder
  • Only resize images that are 16x16 so you can run this again after every update/installation

Requires imagemagick.


Caveats

  • It doesn't work on all icons.
    • Does anyone know where the other assets are or why they aren't resized? Perhaps they are not .gif?
  • Project Explorer icons are messed up.

Fixes are welcome!

Fustigate answered 13/3, 2015 at 12:34 Comment(4)
I've made a modified version of @Redsandro's code which you can see in this gist which simplifies some of the directory traversal, simplifies dealing with temp files, and looks for images of 16 or fewer pixels in size.Misfile
@Misfile you use some clever bash commands. I still have the problem that the (small <16px) overlay icons on the Project Explorer icons somehow seem huge (in my original script and consequently yours), obscuring the actual file icons. Perhaps we need to ignore images bigger or smaller than 16px. Anyway, mind upvoting my answer? :DFustigate
Based on @Misfile script exchange the -name "*.gif" with -name '*.png' -o -name '*.gif and as far as I can see all icons will be enlarged.Angadreme
A tip for those reading this page and trying various tricks. I found out that the toolbar icons are all under configuration/org.eclipse.osgi for me. So you "only" need to resize icons found in there.Cardoza
L
1

Thank you Sigh David Levy. I could not develop on Eclipse w/out your sol'n. I had to add a coupla catch (exceptions) to your code to get it to work:

            while (srcEntries.hasMoreElements()) {
                    ZipEntry entry = (ZipEntry) srcEntries.nextElement();
                    logger.info("Processing zip entry ["+ entry.getName() + "]");

                    ZipEntry newEntry = new ZipEntry(entry.getName());


                    try { outStream.putNextEntry(newEntry); } 
                    ***catch (Exception e) { 
                        logger.error("error: ", e);
                        outStream.closeEntry();
                        continue;*
                    }**
Lupe answered 3/7, 2014 at 18:53 Comment(1)
You got it to work! Could you compile a binary or explain how to get this to run? Also see github comment.Fustigate
B
1

There is a nice article in JaxEnter for an work around HiDPI for Eclipse

Burmese answered 22/3, 2016 at 5:16 Comment(1)
The article basicly says what @Kltis postedBourn
J
1

Following solution worked for me

First you need to add this registry key

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest (DWORD) to 1

Next, a manifest file with the same name as the executable must be present in the same folder as the executable. The file is named eclipse.exe.manifest and consists of:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
    <description>eclipse</description>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
            <requestedPrivileges>
                <requestedExecutionLevel xmlns:ms_asmv3="urn:schemas-microsoft-com:asm.v3"
                               level="asInvoker"
                               ms_asmv3:uiAccess="false">
                </requestedExecutionLevel>
            </requestedPrivileges>
        </security>
    </trustInfo>
    <asmv3:application>
        <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
            <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
        </asmv3:windowsSettings>
    </asmv3:application>
</assembly>

you can find more details here

Jewish answered 26/3, 2016 at 11:15 Comment(2)
What worked for me at the end was adding the manifest file to the javaw.exe just like https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383#c66 sayBourn
Thank you, elysch. Making eclipse.exe.manifest worked for Eclipse Mars.1, but not for Mars.2. Making javaw.exe.manifest worked!Glandulous
B
1

What worked for me at the end was adding the manifest file to the javaw.exe just like Heikki Juntunen said at https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383#c66

The instructions about how to edit the registry and create the manifest file where written by Matthew Cochrane at https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383#c60 and @KItis wrote the instructions here

I put here a copy of that post:


First you need to add this registry key

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest (DWORD) to 1

Next, a manifest file with the same name as the executable must be present in the same folder as the executable. The file is named eclipse.exe.manifest and consists of:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
    <description>eclipse</description>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
            <requestedPrivileges>
                <requestedExecutionLevel xmlns:ms_asmv3="urn:schemas-microsoft-com:asm.v3"
                               level="asInvoker"
                               ms_asmv3:uiAccess="false">
                </requestedExecutionLevel>
            </requestedPrivileges>
        </security>
    </trustInfo>
    <asmv3:application>
        <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
            <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
        </asmv3:windowsSettings>
    </asmv3:application>
</assembly>
Bourn answered 31/3, 2016 at 1:40 Comment(0)
B
1

If you do not want to install a newer version of eclipse

As mentioned here, in the eclipse.init file add -Dswt.autoScale=exact after the -vmargs and you are good to go.

Here exact scales the icons to the native zoom. But you will have to adjust with the blurred and jagged icons.

Boater answered 9/8, 2017 at 6:41 Comment(0)
C
0

Here is my solution Inspired by @Sigh's solution (this one doesn't use maven):

https://github.com/gitAmrit/EclipseIconEnlarger/tree/master#eclipseiconenlarger

This works by searching for all images smaller or equal to 16x16px and scaling them up by whatever factor the user wants.

running the utility: java images.EclipseIconEnlarger eclipseBasePath magnificaitonfactor

eg: java images.EclipseIconEnlarger C:\Users\Amrit\Codes\eclipse 2

eclipseBasePath = path where eclipse.exe is located, for e.g. C:\Users\Amrit\Codes\eclipse magnificationfactor = factor by which the image should be enlarged, for e.g. 2 = double

Cystotomy answered 27/9, 2015 at 21:10 Comment(2)
Please add at least a summary of your solution in your answer. Link only answers are considered bad practice stackoverflow.com/help/how-to-answerSonni
Thanks. Works perfectly and changes the icons in-place. Just run once-in-a-while and all icons stay big.Boutis
G
0

Here's another command line solution, but this works for Windows.

It requires winrar installed (edit the set winrar line to point to the winrar installation).

It also requires imagemagick to be installed and its path to be added in your commandline.

One last comment is I recommend running this before opening Eclipse for the first time (ie, fresh install). There are icons that get automatically unpacked from jars and saved in eclipse/configuration/org.eclips.osgi/... (potentially among other folders) and editing the .jar file prevents the icon from being resized. You might be able to delete this folder and it might autoextract again, but I can't confirm.

To run, just create a doubler.bat file in your eclipse/plugins directory and it should resize any icon smaller than 32x32 to that proportioned size.

Here's the code:

@echo off
set winrar="C:\Program Files\WinRAR\winrar.exe"
set startpath=%~dp0

::All *.jar in this folder
FOR %%G in (*.jar) do (call :EachJar "%%G")

GOTO :eof

:EachJar
  ::echo %1
  set nameWOQuotes=%~1
  mkdir "tmp\%nameWOQuotes%"
  ::copy "%nameWOQuotes%" "tmp\%nameWOQuotes%.bak" >NUL
  %winrar% x -inul "%nameWOQuotes%" *.jpg *.gif *.png *.tif *.tiff "tmp\%nameWOQuotes%\"
  ::pause
  cd "tmp\%nameWOQuotes%"
  FOR /R .\ %%H in (*.jpg *.gif *.png *.tif *.tiff) do ( 
    ::echo %nameWOQuotes%-%%~nxH >> "%startpath%\output.txt"
    identify "%%H" >> "%startpath%\output.txt"
   convert "%%H" -resize 32x32^< "%%H" )
  %winrar% a -r -u "%startpath%\%nameWOQuotes%" "*"
  cd "%startpath%"
  rmdir /s /q "tmp\%nameWOQuotes%"
Goto :eof

It creates a file output.txt and inserts all the ORIGINAL images metadata before it is converted, regardless of whether or not it changed size.

Goosegog answered 10/1, 2016 at 20:6 Comment(0)
M
0

I had this problem when I changed my default Windows 10 language from Eng to Italian, with Eclipse being installed when default language was Eng. Reverting Windows language to Eng and rebooting solved the problem. I don’t know what’s happened, Windows rename some folders like C:\Users translating it in your default language (i.e. C:\Utenti) and maybe this is causing problems.

Mezereum answered 17/1, 2018 at 9:52 Comment(0)
G
-1

Jae's above solution worked for me. The manifest solution didn't work for me. Thanks Jae.

Setup:On my windows 8.1 64 bit non tablet laptop I downloaded eclipse 64 bit with jdk 64 bit.

  1. Right mouse click on desktop to access screen resolution and lowered the screen resolution display from 3000 level to 2048 x 1152.
  2. Click on make text and other items larger or smaller link and changed it to large 150% instead of extra extra large - 250%.
  3. Logged out and Logged back in.
  4. Restart Eclipse and the icons are now visible even if it is a bit smaller, but much more legible now.
Geomancy answered 7/9, 2015 at 0:1 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.