温馨提示×

Compton的透明度效果如何调整

小樊
45
2025-10-19 00:29:57
栏目: 编程语言

Compton透明度效果调整方法

Compton是Linux系统中常用的轻量级窗口合成器,可实现窗口透明、阴影等视觉效果。以下是调整其透明度效果的具体方法:

1. 修改配置文件(永久生效)

配置文件通常位于~/.config/compton.conf(若不存在可手动创建)。通过编辑该文件可设置全局或特定窗口的透明度,修改后需重启Compton生效。

  • 全局透明度设置:在配置文件中添加或修改opacity参数,值为0.0(完全透明)到1.0(完全不透明)之间的小数。例如:
    opacity: 0.5;(全局半透明)
  • 特定窗口透明度设置:使用opacity-rule选项针对不同窗口类型设置透明度,支持通过窗口类名(class_g)、窗口名称(name)等匹配规则。例如:
    opacity-rule ["90:class_g 'Firefox'", "90:name 'Terminal'", "100:class_g 'Xephyr'"]
    表示Firefox窗口透明度为90%、Terminal窗口透明度为90%、Xephyr窗口不透明(100%)
  • 排除特定窗口:若需某些窗口(如dmenu)保持不透明,可使用focus-exclude选项。例如:
    focus-exclude "x 0 && y 0 && override_redirect true"
    排除屏幕左上角的全局菜单窗口

2. 使用命令行参数(临时生效)

启动Compton时通过命令行参数快速调整透明度,适合临时测试,重启Compton后设置会丢失。

  • 全局透明度:使用--alpha-r参数设置全局透明度。例如:
    compton -c ~/.config/compton.conf --alpha 0.5

    compton -b -r 0.5-b表示后台运行)
  • 聚焦窗口透明度:使用-i参数设置聚焦窗口的透明度。例如:
    compton -b -i 0.8(聚焦窗口透明度为80%)

3. 动态调整透明度(运行时修改)

通过compton命令结合xprop工具,可实时调整特定窗口的透明度(需安装x11-utils包)。

  • 安装xpropsudo apt-get install x11-utils(Debian/Ubuntu)或对应系统的包管理器
  • 获取窗口ID:使用xwininfo(点击目标窗口)或xdotool(通过窗口名称)获取窗口ID。例如:
    xwininfo(弹出窗口后点击目标窗口,终端会显示窗口ID)
  • 调整窗口透明度:使用compton--alpha参数结合xprop设置窗口透明度。例如:
    compton -c ~/.config/compton.conf --alpha 0.5 & xprop -id <窗口ID> -f _NET_WM_WINDOW_OPACITY 32c -set _NET_WM_WINDOW_OPACITY $(printf 0x%x 0x$(echo "ibase=16; $((0x50 * 0.5))" | bc))
    其中<窗口ID>为目标窗口的ID,0x50是初始透明度值(十六进制),可根据需要修改

注意事项

  • 显卡驱动:确保显卡驱动支持OpenGL和GLX,否则Compton可能无法正常工作。
  • 桌面环境冲突:GNOME等桌面环境自带合成器(如Mutter),可能与Compton冲突,需禁用桌面环境的合成器或调整其设置。
  • 性能影响:Compton的性能依赖显卡,老旧硬件可能导致卡顿,建议关闭不必要的特效。

0