Next Previous Contents

5. 图标、图形和像素图

5.1 图标保持位置

在旧版本的 AfterStep 中,用于 Wharf 的图标必须包含至少一个透明像素;否则,您提到的症状就会出现。只需添加一个透明像素,一切都应该完美运行。

较新版本的 AfterStep 修复了这个问题,允许您在 Wharf 中使用不含透明像素的图标。您真的应该升级到最新版本。

5.2 颜色表问题

是的,我 (Andrew) 知道这里的 "colour" 拼写不正确。我没办法,是那些设置 X 和 Linux 的人拼写错了。

当我运行 AfterStep 时,按钮栏上的一些图标没有显示出来。如果我在顶部加载它们,它们会显示出来,但其他的就不显示了。此外,当我使用 Netscape 时,颜色变得很奇怪。这是怎么回事?

很可能您正在使用 256 色(8 位)显示器。一个简单的解释是,您在屏幕上同时只能有 256 种颜色,并且您在 Wharf(按钮栏)中使用的颜色越多,您能用于其他应用程序和图标的颜色就越少。我建议您升级您的视频硬件或使用更保守(颜色较少)的图标。对于 Netscape,一个选项是使用 'netscape -install' 命令运行它。这将确保 Netscape 获得它想要的相当多的颜色。然而,这也将导致每当您在 Netscape 窗口中或窗口外移动鼠标时,颜色都会闪烁。您自己决定是否可以接受这一点。

似乎有一个技巧是不使用 Wharf 运行 AfterStep。这会减少任何时候使用的颜色数量。

您可能也想使用低色彩图标;您可以在 http://the-labs.com/AfterStep/ 找到大量低色彩图标(所有图标加起来只使用 21 种颜色)。

如果您正在使用 asclock,您可以配置它以使用更少的颜色。请参见下文。

在 1.4 版本之后,AfterStep 对 8 位显示器使用以 "8bpp" 结尾的配置文件,并从 icon/8bpp 中使用低色彩图标。您可以修改这些文件以使用更少的颜色。

当我在 AS 下使用带有自己颜色表的 xscreensaver 时遇到了问题。

到目前为止,这个问题还没有找到解决方案。看来 AfterStep 没有交出对显示器的控制权。似乎还有其他与此性质相关的问题,主要是在 Suns 系统上。任何额外的相关信息都将不胜感激:Gerhard den Hollander (gerhard@jason.nl) 正在研究这个问题。

5.3 图标从 Wharf 消失。怎么回事?

您很可能用完了颜色。要么升级您的硬件,切换到更高的颜色深度(即 16 bpp 或更高),要么使用包含更少颜色的图标。

5.4 如何创建一个带有透明像素的图标?

您实际上不再需要这样做了:这里首选的方法是升级您的 AS 版本。不过,如果您不想下载,您可以轻松解决您的问题。xpm 是一个简单的文本文件。因此,您唯一需要的图像处理软件是 vi(或其他一些文本编辑器)。如果您编辑您的 xpm,您将意识到它的美观和简洁。在底部,您会注意到图像的字符表示。在顶部,有一个颜色列表,对应于字符表示的每个像素。

您有两种创建透明像素的选项

  1. 将现有像素颜色更改为透明:只需找到您希望变为透明的像素字符,然后返回顶部并在列表中找到该字符。将颜色代码(以 # 开头的数字)更改为 None。保存,您就完成了。
  2. 创建一个新的透明像素:编辑顶部附近对应于高度/宽度/颜色数量/每个像素字符数的行。将颜色数量(第三个值)增加一。然后在像素和颜色值列表中添加行
                   c None
    
    其中 'c' 应该是一个未被任何其他颜色使用的字符。从那里保存并退出。

如果您有任何不确定,请查看 AfterStep 发行版图标目录中的一个 xpm 文件。

Wharf 图标的“正确”尺寸是 48x48 像素。但是,如果您使用更大的图标,它们也会正确显示,最大可达 64x64,这是 Wharf 按钮的默认尺寸。

5.5 如何制作自己的 XPM 文件?

请参阅上一个问题。或者,如果您尝试将压缩文件转换为 xpm,请尝试使用像 xv 或 GIMP 这样的图像处理工具。

5.6 在哪里可以找到一些很酷的像素图用于 Wharf 或桌面?

互联网上散布着许多网站,它们将为您提供有用的图形。一些好的起始链接可以在 AfterStep 官方主页上找到。

5.7 为什么程序 'xyz' 在 16bpp 下无法工作?

一些 8bpp 程序在没有 PseudoColor 可视效果的显示器上无法工作。一些 PC X 服务器不支持在 TrueColor 模式下运行的显示器上的 PseudoColor 可视效果。您应该购买一台 SGI。或者,如果您在 Linux 上,可以运行两个并发的 X 服务器。

给愿意尝试 bpp 的 SGI 用户的注意事项

必须调整 /usr/lib/X11/xdm/Xservers 中 X 的参数。以下方法对 Tim Buller (buller@math.ukans.edu) 有效

:0 secure /usr/bin/X11/X -bs -c -nobitscale -visid 0x34

其中 Visual ID 0x34(由 xdpyinfo 报告)是

  visual:    visual id:    0x34
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff, 0xff00, 0xff0000
    significant bits in color specification:    8 bits

5.8 为什么 xv 在 16bpp 下不能执行 xyz 操作?

xv 在三个方面不能很好地处理 16bpp。首先,它无法抓取屏幕的片段。其次,如果您使用 xwd 抓取屏幕片段并尝试用 xv 显示它们,效果不佳。xwud 可以工作。第三,如果您显示 24bpp 图片,它不会费心将其抖动到 16bpp,从而导致图片质量不佳。您可能需要考虑使用 GIMP 或 xli。

5.9 为什么当应用程序更改图标名称时,图标名称没有改变?

抱歉,但自 AfterStep 1.1 以来,图标名称已经可以更改了。请升级。

5.10 为什么应用程序 xyz 没有图标?

您需要在您的数据库文件中为您的程序定义一个图标。为所有“未知”程序定义一个默认图标是个好主意。在最新版本的 AfterStep 中,您可以在数据库文件中执行此操作

Style   "*"             Icon Unknown.xpm

5.11 为什么我在背景方面遇到不良行为?

在早期版本的 AfterStep 中,背景加载是在启动时通过调用 .steprc 中的另一个程序来处理的。虽然 1.4 版本只允许使用 XPM 文件,但 1.4.4 版本恢复了使用另一个程序加载 jpegs(或任何其他格式)的能力。问题是辅助程序是在编译时在 configure.h 中定义的。编辑配置以反映您喜欢的图像查看程序的准确路径,然后重新编译 AfterStep。

默认使用的程序是 xli。很多人的系统上没有这个程序,而更喜欢使用 xv。这个选择仍然是一个编译时选项。此外,Pager 代码在某些发行版中是损坏的,因此 jpeg 处理并不总是有效。

背景的加载由 Pager 模块处理。如果您没有使用 Pager,那么背景将不会被加载。在这种情况下,您可以在您的 autoexec 文件中调用背景加载程序。

在撰写本文时,Pager 模块正在被重新编码,以包含对背景 jpeg 的(原生)支持。这个新的 pager 包含在版本 1.5 beta 4 的补丁中。1.5 版本将包含对 jpeg 的原生支持。

请注意,jpegs 在加载时不会占用更少的内存;它们只是占用更少的磁盘空间!


Next Previous Contents