Sometimes I work in low light and I need to invert the color of specific windows to reduce my eye strain. This could be my pdf viewer to web pages for reference work.

I know how to invert the entire screen:

xcalib -invert -alter

But I can't find any man pages, docs or posts how to invert a single window only. I did this before yet cannot find how. Bizarre!

Searching the repos for other xorg tools I found xpdf, it has invert support but won't help for anything other than viewing pdf's. I don't use compositing so please don't suggest Compiz. I use Openbox WM. Thanks all.


Instead of a general all-purpose tool to invert any window, I focused my search on how to invert colors for a Google Chrome tab instead. I found Color Bookmarklets, you drag them to the browser toolbar and hit them to change the page content to invert the colors (invert lightness).

  • I find KWin+Compiz (e.g. with KDE) to do job of inverting colors of selected (active) windows perfectly. Commented Sep 18, 2017 at 18:29

3 Answers 3


If you are looking for a method universal for any window, then this must be made available by the window manager. Therefore I'm afraid any non-composite WM will not be able to do that on demand. So maybe you previously did this with Compiz?

A method of inverting colors regardless of WM is doing this per-application - as with xpdf that you mentioned. There are some applications that have such functionality, but usually you won't be able to invert the colors at run-time. For apps like xpdf, you can either have an alternative desktop menu entry (or icon) that runs the app with special parameters, or define those in your .Xdefaults. For xpdf note also the use of paperColor, foreground and background resources.

  • I did have Compiz on one of the desktops at the time IIRC, perhaps I did just confuse the Compiz invert window function with that of another tool. +1 for the mention of .XDefaults resources
    – invert
    Commented Sep 14, 2011 at 8:53

I found a tool called compton in an answer to a similar question. https://askubuntu.com/questions/134668/how-to-trigger-a-color-inversion-effect-for-one-window


KWin with Compiz are doing this! (Still I have since some time to reenable "Composing" after each reboot with "Alt+Shift+F12" - at least that's shortcut I have under System Settings → Shortcuts → Global Shortcuts → Kwin)

Actually I really need inverting color of specific windows (not whole screen) and that's main reason why I often choose KDE -> it has build in support for this!

You go in System Settings → Desktop Behaviour → Desktop Effects → Invert and you click on settings for Invert effect and select convenient shortcut (I selected long one, as I mapped it on my Kinesis Keyboard under Capslock as I invert colours very often for my eyes...).

Settings of Invert Desktop Effect under: System Settings → Desktop Behaviour → Desktop Effects → Invert

P.S. It seems there some people managed to marry KWin e.g. with Xmonad or Xmonad with Compiz so maybe don't have to fully switch to KDE. (Actually I have to try xmonad+kwin one day...) anyway, there are also kwin scripts to change it's behaviour like https://github.com/faho/kwin-tiling . Enjoy!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .