Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| zh-cn:howto:xfwm4_theme [2013/04/21 12:37] – [按钮和 frame 部件的名称列表] haobug | zh-cn:howto:xfwm4_theme [2026/11/06 04:13] (current) – removed kevinbowen | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Xfwm4 主题 how-to ====== | ||
| - | |||
| - | |||
| - | ===== 介绍 ===== | ||
| - | |||
| - | Xfwm4 是 Xfce4 的原生的窗口管理器,它使用一种简单而灵活基于像素图的主题引擎,使用 .xpm 格式的图像。Xfwm4 还使用一个文本文件,配置其他选项(见 themerc 小节)。此外,你还可以选用 gtk 主题颜色,这将文档在 gtk 颜色小节说到。 | ||
| - | |||
| - | {{ howto: | ||
| - | |||
| - | ===== 主题的存放位置 ===== | ||
| - | |||
| - | 在 Xfwm4 版本 4.0 中,主题搜索在下列目录: | ||
| - | |||
| - | * 用户主目录/ | ||
| - | * 系统共享数据目录/ | ||
| - | |||
| - | 在 Xfwm 版本 4.2 中,主题的存放位置是符合标准的,在下列目录搜索: | ||
| - | * 用户主目录/ | ||
| - | * 系统共享数据目录/ | ||
| - | |||
| - | |||
| - | ===== 标题栏修饰 ===== | ||
| - | |||
| - | 因为窗口可以处于激活的((获得焦点))或者非激活((失去焦点))两种状态。所以 xfwm4 使用相应命名的像素图,例如,title-1-active.xpm 或者 title-1-inactive.xpm。 | ||
| - | |||
| - | 对于标题栏的修饰,xfwm4 使用 5 张名为 title-1-active.xpm 到 title-5-active.xpm 的像素图以及 top-left-active.xpm 和 top-right-active.xpm 组成两端的角如下图所示。 | ||
| - | |||
| - | {{ howto: | ||
| - | |||
| - | 非激活 xfwm4 窗口像素图使用一样的命名约定,只是单词换为 inactive;例如,title-1-inactive.xpm。 | ||
| - | |||
| - | 标题文字的颜色和阴影选项,对齐方式等在 themerc 文件中设置(在 themerc 小节详述)。 | ||
| - | |||
| - | ===== 窗口侧边和底部 ===== | ||
| - | |||
| - | 每一个窗口的侧边由两个像素图构成。左侧边的像素图叫 left-active.xpm 和 bottom-left-active.xpm 。右侧边(当然)也就是由 | ||
| - | |||
| - | 窗口底部的控制条由 bottom-active.xpm 和 bottom-inactive.xpm 构成;当窗口大小改变时它们会被重复填充。 | ||
| - | |||
| - | 注意:这些像素图也构成鼠标控制柄,当你决定它们需要多少像素宽度时,请记住这一点(特别是左下和右下像素图,它们构成窗口主要的缩放控制柄)。 | ||
| - | |||
| - | ===== Xfwm4 按钮 ===== | ||
| - | |||
| - | xfwm4 最多可以使用 6 种动作按钮 —— stick(sticky 窗口),菜单,折叠,隐藏,最大化和关闭。 | ||
| - | |||
| - | 按钮有激活的((获得焦点))或者非激活((失去焦点))和按下三种状态。如图 3 所示: | ||
| - | AbiWord 图片 menu-active.gif AbiWord 图片 menu-inactive.gif AbiWord 图片 image_2.gif | ||
| - | ^ 图 3 - Xfwm4 按钮状态 ^ | ||
| - | | {{howto: | ||
| - | |||
| - | Xfwm4 也使用'' | ||
| - | |||
| - | ^ 图 4 - 带额外切换按钮的粘附按钮 ^^ | ||
| - | | | ||
| - | |||
| - | ===== themerc 文件 ===== | ||
| - | |||
| - | xfwm4 使用 '' | ||
| - | |||
| - | ==== 按钮布局 ==== | ||
| - | |||
| - | 也可以为特定主题定义'' | ||
| - | # button_layout : | ||
| - | # O = Option menu | ||
| - | # T = Stick | ||
| - | # H = hide | ||
| - | # S = shade | ||
| - | # M = maximize | ||
| - | # C = close | ||
| - | # | = title | ||
| - | button_layout=OTS|HMC | ||
| - | |||
| - | 现实的例子是,'' | ||
| - | |||
| - | |||
| - | ==== 标题宽度 ==== | ||
| - | |||
| - | 另外一个需要在 '' | ||
| - | |||
| - | 当设置为 '' | ||
| - | |||
| - | {{ howto: | ||
| - | |||
| - | 当设置为 '' | ||
| - | |||
| - | {{ howto: | ||
| - | |||
| - | ==== 文本阴影 ==== | ||
| - | |||
| - | 通过设置 '' | ||
| - | |||
| - | 可用的值为:'' | ||
| - | |||
| - | ==== 标题偏移 ==== | ||
| - | |||
| - | 标题文本的位置,可以用偏移量来调整以适应主题设计。水平和垂直偏移的值可以用下面的设置项来调整: | ||
| - | |||
| - | * title_horizontal_offset | ||
| - | * title_vertical_offset_active | ||
| - | * title_vertical_offset_inactive | ||
| - | |||
| - | |||
| - | ==== 按钮偏移和间距 ==== | ||
| - | 同样地,可以通过使用“按钮偏移量”设置按钮的水平移动。这没有什么用,偏移值是相对的应用程序窗口的边框的,而不是 frame 边框。 | ||
| - | |||
| - | '' | ||
| - | ===== 借用 GTK 颜色 | ||
| - | 你肯定已经注意到,当使用安装 xfwm4 的默认主题,主题可以“借用” GTK 主题颜色。不只是运行 GIMP 然后画按钮。大多数主题使用颜色符号表。这意味着 xpm 文件,必须能手工打开编辑。 | ||
| - | |||
| - | 颜色符号表如下: | ||
| - | ^ 名称 ^ 描述 ^ | ||
| - | | active_text_color | 激活窗口的标题文本颜色 | | ||
| - | | inactive_text_color | 非激活窗口的标题文本颜色 | | ||
| - | | active_border_color | 很少使用,一般设置为黑色 | | ||
| - | | inactive_border_color | 同上 | | ||
| - | | active_color_1 | 激活标题的背景颜色 | | ||
| - | | active_color_2 | 激活窗口的背景颜色 | | ||
| - | | active_hilight_1 | 激活标题的浅颜色,表现 3D 样式 | | ||
| - | | active_hilight_2 | 激活窗口的浅颜色 | | ||
| - | | active_mid_1 | 激活标题的深一点的颜色 | | ||
| - | | active_mid_2 | 激活窗口的深一点的颜色 | | ||
| - | | active_shadow_1 | 激活标题的深颜色,表现 3D 样式 | | ||
| - | | active_shadow_2 | 激活窗口的深颜色 | | ||
| - | | inactive_color_1 | 非激活标题的背景颜色| | ||
| - | | inactive_color_2 | 非激活窗口的背景颜色 | | ||
| - | | inactive_hilight_1 | 非激活标题的浅颜色,表现 3D 样式 | | ||
| - | | inactive_hilight_2 | 非激活窗口的浅颜色 | | ||
| - | | inactive_mid_1 | 非激活标题的深一点的颜色 | | ||
| - | | inactive_mid_2 | 非激活窗口的深一点的颜色 | | ||
| - | | inactive_shadow_1 | 非激活标题的深颜色,表现 3D 样式 | | ||
| - | | inactive_shadow_2 | 非激活窗口的深颜色 | | ||
| - | |||
| - | 这些符号在运行时被实际的色彩值替换,窗口的边框自动继承 GTK 主题的颜色。 | ||
| - | xfwm4 原生使用的 xpm 文件格式,不过是一个纯文本文件,你可以用你喜欢的文本编辑器编辑它。 | ||
| - | |||
| - | |||
| - | ===== 维基百科,自由的百科全书 ===== | ||
| - | XPM(X PixMap)是一种 X Window 系统使用的 ASCII 图像格式。它由法国 Inria 实验室的 Daniel Dardailler 和 Colas Nahaboo 创建于 1989 年,随后由 Arnaud Le Hors 改进。其主要目的是为创建图标和支持透明色。它结构简单,源于早前 XBM 语法。可以用任何文本编辑器创建和编辑,并可以被包含在一个用 C 语言的文件中。 | ||
| - | |||
| - | 因此,如果用你喜欢的文本编辑器打开的 XPM 文件,你会看到这样的东西: | ||
| - | |||
| - | /* XPM */ | ||
| - | static char * title_2_active_xpm[] = { | ||
| - | "5 21 10 1", | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | "# | ||
| - | " | ||
| - | " | ||
| - | "& | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | |||
| - | 不要过深关注 XPM 文件格式细节,XPM 图像由不同部分组成,描述的图像的格式的值,组成图像的颜色,像素(和有是还扩展名,但是目前忽略它们也没有问题) | ||
| - | |||
| - | 每一种图像的颜色分配一个字符(如果图像具有超过可用的字符的颜色,则分配多个字符给一种颜色)。如果指定了颜色符号,指定的颜色将被忽略,并且被给定的颜色符号表中相应的颜色替换。 | ||
| - | |||
| - | 要应用 GTK 颜色到你的主题,你需要编辑 XPM 文件,添加颜色符号的颜色定义表。 | ||
| - | |||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | "# | ||
| - | " | ||
| - | " | ||
| - | "& | ||
| - | " | ||
| - | " | ||
| - | |||
| - | 必须修改为 | ||
| - | |||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | "# | ||
| - | " | ||
| - | " | ||
| - | "& | ||
| - | " | ||
| - | " | ||
| - | |||
| - | 事实上," | ||
| - | |||
| - | ===== Xfwm 4.2 新功能 ===== | ||
| - | 由于格式简单,XPM 颜色的符号替换表不是很强大,不足以展现在新近的主题中的漂亮的颜色渐变。 | ||
| - | |||
| - | 所以 Xfwm 4.2 包括另一项功能,在仍然与以前的主题格式兼容的情况下取得更好的效果:从XPM 文件和它的颜色替换表,及另一个具有透明效果的 PNG 文件(如果存在的话)生成最终的图像。 | ||
| - | |||
| - | 图像上获得分层XPM图像的顶部 | ||
| - | {{ howto: | ||
| - | |||
| - | PNG 文件的文件名和相应的 XPM 文件的文件名相同,以 “PNG” 为扩展名(即 title-1-active.png 的,top-right-inactive.png 等等)。PNG 文件不是必须的,如果它不存在,xfwm4 won't complain,但如果有一个 PNG 图像 XPM 图像的名称相同,并且具有 alpha 通道(即,有半透明的像素)的 PNG 图像将被自动叠加到 XPM 图像的上面来产生最终的图像。 | ||
| - | |||
| - | 这种技术有几个优点: | ||
| - | |||
| - | * 从主题设计者的角度来看,这相当简单的,大多数人在用工具(比如 [[http:// | ||
| - | * 这是向后兼容 Xfce4.0 xfwm4 的,xfwm4 4.0 会直接忽略 PNG 文件。 | ||
| - | |||
| - | ===== 结语 ===== | ||
| - | |||
| - | 我希望这条创建 xfwm4 主题的 “how-to” 能帮助你设计自己的主题。如果你能在 [[http:// | ||
| - | |||
| - | 您还可以在 [[http:// | ||
| - | ===== 按钮和 frame 部件的名称列表 ===== | ||
| - | 这是所有的装饰部件名称的列表,你可以很容易地复制并粘贴。(提示:如果使用的是 Firefox 按住 Ctrl 键的同时拖动可以选择单元格,而不只是行。; | ||
| - | |||
| - | ^ 激活 | ||
| - | | menu-active | ||
| - | | shade-active | ||
| - | | stick-active | ||
| - | | hide-active | ||
| - | | maximize-active | ||
| - | | close-active | ||
| - | | top-left-active | ||
| - | | title-1-active | ||
| - | | title-2-active | ||
| - | | title-3-active | ||
| - | | title-4-active | ||
| - | | title-5-active | ||
| - | | top-right-active | ||
| - | | right-active | ||
| - | | bottom-right-active | bottom-right-inactive | | | ||
| - | | bottom-active | ||
| - | | bottom-left-active | ||
| - | | left-active | ||
| - | |||
| - | ===== Credits ===== | ||
| - | This how-to has been started by Drewbian (drewbian at tsn dot cc) and later modifed by Olivier Fourdan (fourdan at xfce dot org). | ||