Invert display colors

22

5

Is it possible to invert display colors on Windows like Macs can?

I have nVidia GeForce 6200 graphics card and 17" Samsung SyncMaster display.

Matěj Zábský

Posted 2008-12-14T14:01:20.037

Reputation: 441

Yes it is possible to invert colors on windows. Just follow these steps : http://techfeel.in/2013/12/how-to-invert-colors-in-windows-8-or-7/

– user279365 – 2013-12-05T07:30:12.500

For the non Mac people: Ctrl-Alt-Command-8 inverts the screen.

BTW: Nice way to fool people who work with Macs and don't know this. ;-) – stesch – 2008-12-14T16:11:13.253

Why would you want to do that? – None – 2008-12-14T20:03:55.920

3To read websites and PDF documents. White font on black is much easier to read, especially in night. – Matěj Zábský – 2008-12-17T12:42:07.573

@Die in Sente: Bright text on a dark background can be quite helpful for some folks with bad eyesight. – Chris O – 2010-09-26T20:31:18.903

@stesch what is Command-8 ? in your keyboard shortcuts ? I donno of such key... – Flavius Frantz – 2011-11-17T01:31:33.187

Answers

12

Windows 7 maginifier glass tool supports color inversion and the magnification is not obligatory.

Note: You must have Aero enabled to invert colors for the whole screen.

Matěj Zábský

Posted 2008-12-14T14:01:20.037

Reputation: 441

This should be the answer, nice and windows native. – MetaGuru – 2014-08-28T11:23:53.383

1I came here to point out that magnifier used to suck, but they actually made it a lot better! Now you can do 100% magnification across all screens and select color inversion without any annoying side effects. I remember prior to windows 7 this was not a feasible solution, but now it is perfect. – unsorted – 2011-10-22T19:30:10.673

1Note that you must have Aero in windows 7 enabled to use magnifier to invert your desktop. Otherwise, it will just invert what it is magnifying. – eichoa3I – 2012-02-24T21:19:32.430

22

PowerStrip didn't work for me, and I couldn't find the advanced options in Nvidia (does it even ever exists with new drivers?) I was so disappointed to find there was no solution except the Magnifier trick, that I developed my own.

It's called NegativeScreen and it's a simple but complete program written in C# (sources open)

You can try it out here.

Melvyn

Posted 2008-12-14T14:01:20.037

Reputation: 671

This thing is glorious! Never was a fan of dark coding themes because the experience wasn't uniform across the system - this solves that problem! – Daniel Sokolowski – 2018-03-08T17:33:10.033

You might notice hue blurring of the font due to ClearType technology, re-running the calibration helps it somewhat. – Daniel Sokolowski – 2018-03-08T17:48:16.063

Great, it even works with 3D games and video :) However it doesn't handle multiple monitors too well. It works when I launch it from my primary screen (1680x1050 laptop screen), but when I launch it from my secondary screen (1080p), whole screen will be just blank white. I hope this isn't too hard to fix (I didn't look at the sources). I have Win 7 x64 HP, GeForce 9650M GT. Thanks for great app :) – Matěj Zábský – 2011-09-11T11:27:07.547

1multi-screen should works now :) – Melvyn – 2011-09-13T21:18:10.297

1+1 You are my new personal hero. I created an inverted profile with the old drivers on my XP machine which required several mouse actions to switch while my Ubuntu machine at work uses Super + Z. Now my home machine is just as easy! – David Harkness – 2011-11-11T23:41:32.263

@yaurthek Could you please check out this question http://superuser.com/questions/555586/configure-windows-7-to-show-all-windows-in-black-and-white/555594#comment675987_555594

– William – 2013-02-22T04:24:26.060

2

The following won't work for everyone, but if you have XP and an NVIDIA graphics card then there is a proper color inversion that is equivalent to the Mac. I use this successfully with my work computer.

If you don't have an NVIDIA card, then as others have said you can use the Accessibility High Contrast features to approximate inverted colors and the magnifier glass gives some functionality on XP, but I found this unsatisfying (and I have to use XP for work). Instructions are in other answers and in the wikihow article that I adapted the NVIDIA instructions from

Go to NVIDIA control panel - I can do this by right clicking on the icon in my tray and selecting "NVIDIA Control Panel", but you can also: Right-click on your screen and choose Properties.

  1. Under Setting tab click on Advanced.
  2. From the upper row of tabs select the one related to you graphic adapter (with on image icon).
  3. Click Start the NVIDIA Control panel. (You need to have these NVIDIA utilities installed.)

Now you can invert colors - note that this is on a display-by-display basis. Also, there is a note that this is only inverting the basic display and that video will not be affected (unless inverted separately) - I have not explored this.

  1. I recommend saving your profile before you start (and after you finish) so that you can more easily switch back and forth. At the top of the window select Profiles → Save... and save your regular color profile. I use names that identify normal or inverted and the display configuration (laptop, external home, external work) - if you only have one configuration this is not required.
  2. Inside NVIDIA control panel, from the left side navigation bar, under Display select Adjust desktop color setting. Note: you need to view the Adjust desktop color setting item in the Advanced Settings. In the standard settings, you will not see the graph option below.
  3. Under 2. Apply the following .... switch to graph tab.
  4. There are three points already forming the graph, select the one on the upper right side of the graph and set the values In to 1, and Out to 0. (On my machine, I am not able to set the values and I have to do this by dragging the top right point to the bottom right. This is very frustrating, but if you play around with it you can get these reversed. Try not to set both Out values to the same number (1 or 0) or it is very difficult to see the points you need to drag on the graph - I drag the point to the middle right and then finish after dragging lower left to top left.)
  5. Then Select the point on the lower left of the graph and set the values In to 0, and Out to 1. (Again, I have to drag the point with the mouse on my machine from lower left to top left.)
  6. Apply the settings and you have successfully inverted your colors.
  7. Finally, you will want to save this profile. Again, go to the Profiles menu and select Save...

Now you should be able to use Profiles → Load... to switch back and forth. I have to re-open this control panel to invert my colors, but I plan to set this to some shortcut, once I figure out how...

The following screen shot shows that Adjust desktop color setting does not have the graph option under standard options:

NVIDIA Control Panel with Standard options

The following screen shot shows that Adjust desktop color setting does have the graph option under advanced options (it is the second - not the default - tab under 2. Apply the following...:

NVIDIA Control Panel with Advanced options

The graph after inverting the colors:

NVIDIA Control Panel with Advanced options - colors inverted

R.Klug

Posted 2008-12-14T14:01:20.037

Reputation:

Great answer! Unfortunately my GeForce Go 6200 does not show a Graph tab :( Maybe it's because I'm using such an old card (think: year 2006!). (Yes, I have switched to Advanced Settings.) Thankfully I'm on Windows 7, and Magnifier rocks! – ADTC – 2012-03-04T01:30:42.067

1

You can sort that out programming a pixel shader or fragment program (OpenGL) to invert all the screen pixels synched with the refresh rate. I believe this can be done fast enough in the GPU to be executed in your gfx card model, altough I must recognize i'm ignorant about the pixel fillrate of the Turbocache variants.

Hernán

Posted 2008-12-14T14:01:20.037

Reputation: 151

1

If you don't have Windows 7, you can use a shareware app called PowerStrip, that will achieve the color inversion with hotkey support. I've used this extensively on XP. This app interacts with the video driver.

If you want to write your own app in user-mode code, then you have two options:

  1. Use DirectX overlays, capture the entire screen, invert blit to the overlay, repeat fast enough to look alright.
  2. Use some GDI tricks, create a dead window that is on top of everything else, capture the screen, invert blit to the dead window. The dead window has 99% opacity, so to capture the windows underneath it, don't use the CAPTUREBLT flag with BitBlt(). In order to allow the mouse events to get through to the real window, use SetWindowRgn to put a 1-pixel "hole" in the dead window where the mouse is. Uh, this is quite hacky but works.

You can also download the debug symbols for the Window's magnifiers, and study those ;-)

Chris O

Posted 2008-12-14T14:01:20.037

Reputation: 279

0

In Windows 10 it's even easier. Since build 16215 onward Microsoft included the color filter options for ease of access which can be toggled by Windows+Ctrl+C

Windows 10 now includes color filters at the system level, including filters designed to make it easier for people with color blindness to differentiate between colors like red and green and to make it easier for people with light sensitivity to create and consume content. You can find these new filtering options under Settings > Ease of Access > Color and High Contrast (previously called High Contrast Settings).

https://blogs.windows.com/windowsexperience/2017/06/08/announcing-windows-10-insider-preview-build-16215-pc-build-15222-mobile/#C1B2TQQ8YvwdEsjV.97 color filter settings

In some cases for older Windows maybe the shortcut Left-Alt+Left-Shift+PrntScrn to high contrast mode ON will help

Related:

phuclv

Posted 2008-12-14T14:01:20.037

Reputation: 14 930

0

Go to the appearance settings (in vista this is through personalization > color and appearance > classic properties)

You can then customize your settings or pick one of the high contrast schemes.

DShook

Posted 2008-12-14T14:01:20.037

Reputation: 139

This inverts only system colors, not web pages, PDFs etc.

Or it behaves diferently in Vista (I have XP) – Matěj Zábský – 2008-12-14T14:21:10.293

0

This would be a pretty easy application to write. In fact, it would take more time hooking it up to a keyboard combo or some other hook than anything else. The best way I guess would be to make an application that just inverts the colors, and then add it as a shortcut, with a hot-key combo. Like Ctrl+Alt+I to Invert the colors, and again to switch them back.

If you need help with this let me know. This should only end up as an hour or less C++ application.

LarryF

Posted 2008-12-14T14:01:20.037

Reputation: 109

Sounds great, but I have no idea how to do this in C++. Through some driver manipulation? – Matěj Zábský – 2009-01-08T19:38:45.630

Naa.. This can be done with the Win32 API. But, in reading some of your comments, it got me thinking... If you are displaying an image, or a PDF file, you are kind of at the mercy of the app doing the rendering... I would whip something up for you to try, at least. – None – 2009-01-08T20:32:56.707

Exactly how would you achieve this application? I'll give a hint, it won't take an hour for this C++ application ;-) The user will want to interact with the screen while the colors are inverted, just like on the Mac. – Chris O – 2010-09-26T20:30:08.890

@Chris O - Well, if you want to invert the entire screen, and make it usable, you'd probably have to write a video filter driver, which, yea, wouldn't take an hour... If you want an app to invert the colors on a display image, that shouldn't bee all THAT hard. But, being that this is all just talk, I have to admit, I have NOT done due diligance on this, so there could be some stuff I'm not considering... Not to mention I wrote this over a year ago, when I was probably working in an imaging project, so it was all fresh in my 'Chip Ram', now, it's not even in my 'Fast Ram' :)... - Larry – None – 2010-10-04T20:14:01.047

0

You can use:

  • Notepad++ with VibrantInk theme
  • Stylish Firefox addon with "NishtShift - eye care" style
  • VibrantInk theme on Eclipse or another with black background
  • On PDF-XChange Viewer you can do it at Edit/Prefs:

       [v] Override document colors; 
       Use Custom Color Scheme:
          page background: black; 
          [v] text color: white(gray); 
          [v] Line Art: fill Color: black; Stroke color: black;
    

All these are solutions for a particular program, but with an inverter it can be done for any program.

user1017901

Posted 2008-12-14T14:01:20.037

Reputation: