Libreoffice在windows上有没有办法深色

autohotkey论坛这个帖子里有
Invert window colors - AutoHotkey Community
全局反色和单个窗口反色的代码。

单个窗口反色需要配置UIA,较为复杂。
全局反色ctrl shift f 触发。

#NoEnv
#SingleInstance Force
SetBatchLines -1
DllCall("LoadLibrary", "Str", "Magnification.dll")
Initialized := False
OnExit, Uninitialize
InvertMatrix := [-1,  0,  0,  0,  0
               ,  0, -1,  0,  0,  0
               ,  0,  0, -1,  0,  0
               ,  0,  0,  0,  1,  0
               ,  1,  1,  1,  0,  1]
VarSetCapacity(MagEffectInvert, 100, 0)
Addr := &MagEffectInvert
For I, V In InvertMatrix
   Addr := NumPut(V, Addr + 0, "Float")
Return
; ----------------------------------------------------------------------------------------------------------------------
Uninitialize:
   If (Initialized)
      DllCall("Magnification.dll\MagUninitialize")
ExitApp
; ----------------------------------------------------------------------------------------------------------------------
^+f::
   If (Initialized)
      Initialized := DllCall("Magnification.dll\MagUninitialize", "UInt") & 0
   Else If (Initialized := DllCall("Magnification.dll\MagInitialize", "UInt"))
      DllCall("Magnification.dll\MagSetFullscreenColorEffect", "Ptr", &MagEffectInvert)
Return#NoEnv
#SingleInstance Force
SetBatchLines -1
DllCall("LoadLibrary", "Str", "Magnification.dll")
Initialized := False
OnExit, Uninitialize
InvertMatrix := [-1,  0,  0,  0,  0
               ,  0, -1,  0,  0,  0
               ,  0,  0, -1,  0,  0
               ,  0,  0,  0,  1,  0
               ,  1,  1,  1,  0,  1]
VarSetCapacity(MagEffectInvert, 100, 0)
Addr := &MagEffectInvert
For I, V In InvertMatrix
   Addr := NumPut(V, Addr + 0, "Float")
Return
; ----------------------------------------------------------------------------------------------------------------------
Uninitialize:
   If (Initialized)
      DllCall("Magnification.dll\MagUninitialize")
ExitApp
; ----------------------------------------------------------------------------------------------------------------------
^+f::
   If (Initialized)
      Initialized := DllCall("Magnification.dll\MagUninitialize", "UInt") & 0
   Else If (Initialized := DllCall("Magnification.dll\MagInitialize", "UInt"))
      DllCall("Magnification.dll\MagSetFullscreenColorEffect", "Ptr", &MagEffectInvert)
Return```