Jump to page content

Main site navigation:

Misc section navigation:

The RISC OS GUI

本文将介绍英国 Acorn Computers Ltd 在 1992 年发布的 RISC OS 3.11 图形界面,它与 Apple System 7 大致同期。请注意,我对这个操作系统还比较陌生,因此以下内容可能存在不准确和遗漏之处。非常感谢 David Pilling 和 Matthew Blissett 对本文的帮助。E&OE。

Contents

Introduction

几年前,我得到了一台运行 RISC OS 的 Acorn Archimedes 440/1 个人电脑。在没有手册的情况下,我无法理解它,并且在稳定性方面有不好的体验,于是我把这台电脑转送给了别人。然而,在浏览 BeebMaster 的网站时,我看到了他的 Archimedes 页面。我把 RISC OS 上愚蠢的错误信息发布到了 Bug of the Moment entry 中,但真正引起我注意的是这张照片:Econet notification。 它表明子菜单可以是对话框。受此启发,我在 Google Images 上进行了长时间的搜索,找到了一些有趣的截图。我本打算直接将相关图片挪用到 (现在已经不存在的) Cy/VOS 社区 wiki 上,但我认为最好安装一个模拟器。这样我就可以自己探索这个系统,了解它的真正工作原理,并拍摄自己的截图。我将这些截图作为指南,展示一种最不寻常的图形界面,它与当时的其它系统相比非常先进,并且仍然有很多东西可以教给我们这些设计新图形界面的人。如果我们要基于现有的界面进行工作,为什么不在混合中加入一些来自不太知名的界面,例如 AmigaOS、RISC OS 和 Psion 的 EIKON 的有趣想法呢?

Desktop

RISC OS 的桌面分为两个区域:Pinboard 和 Icon Bar。Icon Bar 在左侧显示已挂载文件系统和相关特殊服务(例如,内置应用程序和打印机)的图标,在右侧显示活动任务。桌面的其余空间属于 Pinboard,可以显示背景和固定的图标。Pinboard 并不像常见的系统那样代表一个文件夹,而是允许您固定位于其他位置的文件的图标。Pinboard 的状态必须保存到一个文件中,以便在下次启动时重新打开。 Icon Bar 上的所有图标都代表活动任务。每个可用的文件系统和服务都由一个进程驱动,该进程可以很容易地关闭,但 Task Manager(由 Acorn 徽标图标表示的 shell)是一个例外:无法退出 shell。关闭所有其他任务后,只剩下 Acorn 图标: Pinboard 本身是一个可以关闭的进程,关闭后会删除桌面背景和图标。 当然,也有可能使 Icon Bar 溢出,在这种情况下,当您将光标悬停在每一端时,其内容会简单地滑动:

Mouse

与 Macintosh 一样,RISC OS 广泛使用鼠标来控制系统。但与 Mac 不同的是,Acorn 提供了三键鼠标,并为所有三个按钮分配了名称和相关功能。 左键称为“Select”,其功能与其它图形界面中的鼠标左键相同。中间的鼠标按钮称为“Menu”,该按钮提供对菜单的访问;请参见下面的 menus 部分。 右键称为“Adjust”,它相当不寻常。它的概念类似于 Apple 的 option 键 – 使用 Adjust 按钮会执行与 Select 类似但不同的操作。例如,Adjust 点击滚动条按钮或轨道会以与 Select 点击相反的方向滚动。Adjust 拖动窗口会移动窗口,而不会将其置于窗口堆栈的顶部。使用 Adjust 打开文件或文件夹后会关闭 Filer 窗口,类似于在 Macintosh 上按住 option 键;同样,Adjust 点击 Filer 窗口的关闭框会关闭窗口并打开其父窗口。Adjust 点击文件会将文件添加到选择中或从选择中删除文件,这与 control 点击 (Windows) 或 cmd 点击 (Macintosh) 相同。通过将整个鼠标按钮专用于替代操作,大大减少了对键盘的需求,无需寻找修饰键。但是,移动文件(而不是复制)仍然需要按住 shift 键。 总的来说,RISC OS 中鼠标的使用比任何其他图形界面都更加智能。

Menus

RISC OS 不考虑窗口内菜单栏或全局菜单栏的争论,因为所有菜单都是通过 Menu(中间)鼠标按钮调用的弹出菜单。这种选择是 Fitt’s law 的一个强有力的应用,因为菜单栏始终在光标旁边打开。由此可见,上下文菜单并不是什么神秘的秘密;上下文菜单和标准菜单集之间没有严格的区别。 要查看可用的菜单选项,将鼠标光标放在您希望执行命令的窗口或图标上,然后按下中间按钮。可以为 Pinboard 及其图标、Icon Bar 图标(但不包括 bar 本身)、文件夹窗口及其图标以及文档窗口的工作区调用菜单。标题栏、工具栏、滚动条和非工作区域被排除在外;在计算器上按下鼠标中键不会调用菜单。 菜单通常有两种类型。Icon Bar 图标菜单具有高度的上下文相关性,专门与该图标相关: 由窗口生成的菜单通常等效于标准应用程序菜单栏,但根菜单本身可能包含终端项目,包括布尔菜单项: 但是,根据上下文的需要,窗口可能会根据上下文显示不同的菜单;这里是与当前正在编辑的路径相关的菜单: 通常,根菜单有一个子菜单专用于窗口的选择: 所有菜单都有标题并且可以拖动,包括子菜单: 在上面的截图中,每个菜单都是在打开后被拖动的。RISC OS 中的所有窗口拖动和调整大小都是实时的,包括拖动菜单。左键单击标准的终端菜单项会像往常一样关闭菜单,但右键单击会发出菜单命令并保持菜单打开以供进一步命令;这对于勾选多个项目或恢复更改非常有用。 也许 RISC OS 最显著的界面范例是对终端(叶节点)菜单项的处理。大多数图形界面只有两种类型:命令和布尔属性。Windows 和 EIKON 还具有单选按钮菜单项组。RISC OS 更进一步!RISC OS 将对话框直接混合到菜单系统中:许多对话框只是作为菜单项或子菜单呈现的。这节省了鼠标点击次数,并允许用户快速而轻松地找到他们需要的对话框。有几种不同的行为模式,如下所述。

Custom values

自定义菜单项允许用户在列表中提供自定义值,例如自定义字体大小或行宽,而无需单独的对话框。 这些菜单项出现在否则是正常菜单的底部: 它们也可以出现在一些相当深的子菜单结构中: 要在上面的示例中选择三角形起始帽,您可以单击 Triangle 或 任何 后面的子菜单。要设置自定义宽度或高度,将鼠标光标放在相应的自定义字段上(但不要单击它),删除现有文本(使用退格键)并输入新值。然后,您必须左键或右键单击它或按 enter 键确认。Enter 键和左键单击将设置 Triangle 作为起始帽样式并关闭所有菜单。右键单击将确认输入 – 如果您只是将焦点放在另一个菜单项上,则该输入将被丢弃 – 并保持菜单打开。这允许您设置宽度和高度,而无需两次导航菜单系统。

Text input

与上述类似,某些子菜单的存在仅仅是为了获取文本输入。这不必是数字;例如,它可以是一个命令: 如上所述,您在编辑期间不得单击文本字段。原因是文本字段兼作菜单项:输入所需的文本后,您单击文本以确认操作。这意味着您无法使用鼠标重新定位文本光标(插入符号);相反,您必须为此目的按下键盘上的左右箭头键。 其中一个最奇怪的用法是 !Paint 程序的插入和删除功能: 这是一项从图像中插入或删除像素行或列的功能。您可以键入要添加或删除的行或列的所需数量,或者将光标悬停在下面的文档窗口上:输入框会为您填充。此功能开始介绍 RISC OS 处理模态的方式。奇怪的是,这是一个您确实可以使用鼠标定位文本光标的反例。

Dialog boxes

子菜单可以是完整的对话框。其中最简单的是信息对话框: 没有按钮:只需按 escape 键取消它,或将鼠标放在父菜单项上。当菜单在屏幕右侧打开时,这会变得特别令人沮丧。例如,当尝试使用 !Edit 的程序菜单时,如果光标经过 Info 子菜单项,则程序信息对话框会显示并完全遮挡父菜单: 子菜单也可以是传统的对话框,例如 Print 或颜色选择:

Owner-drawn items

子菜单也可以是 owner-draw 项目,它们结合了对话框的自定义外观和菜单项的即时响应: 上面的 zoom 项目没有确认按钮;对缩放级别的更改 – 奇怪的是可以是 3⁄2 这样的分数 – 会实时进行。按 escape 键关闭菜单。 上述方法并非 Acorn 独有;PhAtfiSh 发送给我一张截图,提醒我 Microsoft 在他们自己的产品中使用了扩展菜单行为。例如,组合框和看起来像是图形单选按钮:

Windows

Management

在某些方面,Windows 甚至比菜单更奇怪。它们的某些方面很简单:比例滚动条、关闭框和 Macintosh 样式的尺寸框。左上角的窗口小部件(取自 Amiga)将窗口推到窗口堆栈的后面。右上角的窗口小部件的行为类似于 Macintosh 缩放按钮。 RISC OS 几乎没有其它窗口管理功能。所有窗口都存在于一个大堆中,唯一的导航命令是将窗口推到堆栈底部的能力,在那里它会被您试图找到另一个窗口的窗口堆淹没。没有像大多数 Macintosh 应用程序中那样的 Window 菜单,并且单击 Icon bar 上的程序图标不会像 Mac OS X 中那样将它的所有窗口都放在最前面,或者像在经典 Mac OS 中从菜单栏中选择应用程序那样(相反,它更有可能通过打开另一个窗口来惩罚您)。窗口的扩散甚至比在 Mac OS 中更难管理;即使 Windows 7 及更高版本中的任务栏缩略图系统非常繁琐,但它也比之前的界面更容易管理。 RISC OS 支持原地最小化:按住 shift 键并单击窗口的关闭按钮,将其缩小为位于窗口左上角的桌面上图标。这类似于 Microsoft Windows 原始版本中的最小化工作方式。给定此示例窗口选择: 以下是 shift-单击每个窗口的关闭框后的相同窗口: 文件名中禁止空格,最小化图标标题中也禁止空格,因此每个图标的标题都是窗口标题,直到第一个空格。双击会恢复窗口,但它们不像固定的文件和文件夹图标那样影响 Pinboard 菜单。某些最小化窗口图标包含相关窗口的文件类型图标,但许多不包含。 最后说明:filer 窗口总是打开得足够大,以便将完整路径放入标题栏中:

Focus

窗口焦点本身就是一个世界。使用鼠标操作窗口不会将窗口置于最前面:窗口保持其在窗口堆栈中的位置。为了使用窗口,无需将其置于最前面。例如,您可以在后台窗口中键入: 要将窗口置于最前面,请单击其标题栏或尺寸框。使用鼠标右键,您可以在不激活窗口的情况下拖动和调整窗口大小,类似于在 Macintosh 上按住 command 键。 在上面的图片中,您可以看到后台窗口有一个黄色的标题栏,这就是它变得奇怪的地方。黄色标题栏表示窗口具有键盘焦点。键盘焦点不仅与窗口顺序无关,而且不受菜单的影响,菜单根本不响应键盘,允许您在菜单打开时继续键入: RISC OS 中很少有东西会获取键盘焦点。例如,文件系统窗口不会,菜单也不会。唯一可以用键盘操作的对话框控件是文本输入字段。当然,文档窗口可以选择接受键盘焦点。上面的 !Edit 窗口即使在菜单打开时也保持键盘焦点,因为菜单不请求焦点。 但是,如果您打开一个确实需要键盘焦点的子菜单,黄色高亮显示会从父窗口中删除: 如果您将鼠标光标移回父菜单上,输入子菜单会关闭,并且文档窗口会立即重新获得焦点,并带有黄色高亮显示。导航子菜单通常会触发文档窗口的黄色高亮显示快速闪烁,因为键盘焦点在文档窗口和获取键盘焦点的子菜单之间切换,这非常分散注意力。请注意,获取键盘焦点的子菜单 保持其灰色标题栏,这在视觉上不一致。但是,对话框确实获得了高亮显示。 如果您禁用对话框中的活动文本字段,对话框的黄色高亮显示将被删除,因为它不再具有键盘焦点。 键盘焦点不是通过将窗口置于最前面获得的:键盘焦点将保持在当时具有键盘焦点的窗口上。要将键盘焦点赋予窗口,必须单击其内容区域的适当部分。在 !Edit 中,这是文本中的任何位置。在 !Calc 中,单击计算器按钮不会分配键盘焦点。按钮将操作计算器,但按键将被丢弃或转到具有键盘焦点的窗口: ![](https://telcontar.net/Misc/GUI/RISC OS/Windows--focus_4.png) 将键盘焦点赋予 !Calc 的唯一方法是单击计算器的显示区域! 最后请注意,打开菜单也不会改变堆叠顺序: ![](https://telcontar.net/Misc/GUI/RISC OS/Windows--focus_5.png) !Edit 的菜单出现在 !Calc 的窗口之上,但 !Edit 窗口本身仍然坚定地位于窗口堆栈的底部。 与各种其它图形界面不同,RISC OS 也没有始终置顶的概念。工具调色板窗口可以埋在文档窗口下方(并且很容易在那个时代的小屏幕上)。Icon Bar 可以(并且将会)被文档窗口遮挡。但是,始终置顶并非始终需要在 RISC OS 中。例如,!Chars 应用程序会显示一个字符调色板,您可以从中将字符插入到具有键盘焦点的任何窗口中: ![](https://telcontar.net/Misc/GUI/RISC OS/Windows--!Chars_insert.png) 将字符插入菜单文本字段略有不同。单击 !Chars 窗口会立即关闭菜单,因此您将光标悬停在所需的字符上并点击 shift 键!此方法始终有效,但单击字符通常更方便。

Dialogs

RISC OS 中的对话框是高度模态的。通常,切换到另一个窗口,包括对话框后面的窗口,会导致它们简单地消失。RISC OS 中的对话框通常显示为没有标题栏窗口小部件的窗口: ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--quit.png) 但是,系统对话框会将鼠标光标限制在窗口本身内,确保它们被用户接受: ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--system.png) 但更多时候,似乎会使用常规窗口来代替,即使在使用省略号指示对话框的情况下也是如此: ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--as_windows_1.png) ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--as_windows_2.png) 在以下示例中,顶部的窗口是通过底部窗口的 Set new alarm 菜单打开的对话框。虽然您可以返回到父窗口并再次打开菜单,但菜单命令现在显示为灰色。菜单项没有省略号。 ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--focus.png) 以下窗口显示了一个可调整大小的对话框窗口: ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--sizable.png)

Controls

对话框控件与 Macintosh 和 Windows 的对应控件相对相似,并且很少有明显的陷阱。一个特别奇怪之处是文本框(和可编辑菜单项)中的文本始终是居中对齐的: ![](https://telcontar.net/Misc/GUI/RISC OS/Controls--text_boxes.png) 对话框中允许的唯一键盘导航是能够使用向上和向下箭头键在文本字段之间循环。 在仅包含按钮的对话框中,有时您可以通过按与标题的第一个字母对应的键来触发按钮。例如,当关闭未保存更改的窗口时,您可能能够按 D 键来放弃更改,如下所示: ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--buttons_1.png) 窗口中没有任何东西表明这是可能的,并且它似乎只在半数时间内有效,没有明确的指示哪些程序和哪些对话框将接受它以及何时接受它。来自 !Edit 的文本替换操作对话框包含大量按钮,所有按钮都可以通过这种方式使用。RISC OS 有时允许这样做的线索是 redo 按钮被标记为“reDo”,因为 R 键已经被 Replace 按钮使用。 ![](https://telcontar.net/Misc/GUI/RISC OS/Dialogs--buttons_2.png) 在这些情况下,键盘焦点指示再次设计得很糟糕。在上面的两个截图中,似乎文档窗口具有键盘焦点,但事实并非如此:键盘焦点已传递给对话框。按与对话框不相关的任何键都不会执行任何操作。

Files

File operations

RISC OS 没有像其他图形界面那样标准的 Open 和 Save 对话框。Save 对话框通常显示为菜单,您可以在其中输入文件名: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--save_menu.png) 但是,此菜单非常令人困惑。单击 OK 将产生以下错误消息: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--save_error.png) 为了首次保存文件,Save 菜单中的图标应拖到文件夹窗口中: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--save_drag_and_drop.png) 原因是文本框必须包含完整路径(例如,“$.Myfile”以保存到默认驱动器的根目录)。当保存已经位于磁盘上的文件时,文本字段将填充文件的完整路径,并且可以使用 OK 按钮: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--resave.png) 这不是很明显,因为错误对话框暗示根本无法使用 OK 按钮。请注意,在上述情况下 – 按 F3 保存 – Save 对话框显示为常规对话框。 RISC OS 没有任何类型的 Open 对话框。要使用程序而不是其文件类型的默认程序打开文件,必须首先启动该程序,然后可以将文件拖到其 Icon Bar 图标或打开的窗口上。与 Mac OS 或 Windows 不同,无法将文件拖放到 Filer 窗口中程序的图标上。也无法将它们拖到文件夹的图标上:要将文件移动到文件夹中,必须将其拖放到文件夹的打开的窗口上。更令人困惑的是,默认情况下文件总是被复制,而不是移动。要移动文件,请在拖动时按住 shift 键。 当程序需要允许用户选择文件时,再次使用拖放,窗口提供一个放置区域来收集文件(请注意,第一张图片中的“Routes file…”按钮会打开选择的文件): ![](https://telcontar.net/Misc/GUI/RISC OS/Files--file_select_1.png) ![](https://telcontar.net/Misc/GUI/RISC OS/Files--file_select_2.png) 另请注意,按住 shift 键同时打开文件将在 !Edit 中将其作为文本文件打开,无论它是文本文件还是二进制文件。对于二进制文件,不可打印字符显示为方括号内的十六进制字符代码,例如,null 为“[00]”。因此,!Edit 似乎是一个二进制安全文本编辑器。

File types

RISC OS 中的文件类型存储在文件系统元数据中,类似于 Mac OS。与 Mac 不同的是,RISC OS 使此元数据可编辑。每个文件类型都有一个 12 位十六进制代码以及一个简短的描述性名称。例如,obey 文件的类型为“Obey”,十六进制代码为 0xFEB: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--Obey_file_type.png) Windows PC 会允许用户在保存期间选择文件类型,而 RISC OS 允许用户使用其他方式设置文件类型。例如,!Edit 允许用户从其应用程序上下文菜单中选择要创建的文件类型: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--select_type_on_create.png) !Edit 还允许在文件打开时选择类型,虽然在这里您没有获得可能的类型列表,并且必须记住类型的名称或其代码: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--select_type_while_open.png) 现有文件的类型可以从 Filer 设置,方法是输入十六进制类型代码(例如,Obey 文件的“feb”)或类型的描述性名称: ![](https://telcontar.net/Misc/GUI/RISC OS/Files--set_type_from_Filer.png)

Volumes

标准媒体卷由文件系统的名称后跟从 0 开始的驱动器索引引用。每个卷都有一个名称,并且此名称可以代替驱动器索引使用。例如,一个名为 Spiele4 的 ADFS 卷挂载在驱动器 0 中: ![](https://telcontar.net/Misc/GUI/RISC OS/Volumes--number_and_name.png) 可以使用软盘驱动器的索引(例如,ADFS::0.$)或卷的名称(例如,ADFS::Spiele4.$)访问光盘的内容。请注意,文件系统名称似乎以冒号结尾(例如,“ADFS:”),而驱动器标识以一个开头(例如,“:Spiele4”或“:0”),目录分隔符为“.”,根目录为“$”,并且两者之间有一个额外的点,例如“:0.$”。 可以弹出一个光盘并插入另一个光盘,并继续浏览两个光盘的内容,因为每个卷的目录都缓存在 RAM 中。在 Filer 窗口标题中使用卷名称使这很明确: ![](https://telcontar.net/Misc/GUI/RISC OS/Volumes--all_catalogues_accessible.png) 从弹出的光盘访问文件将提示 WIMP 要求插入所需的光盘: ![](https://telcontar.net/Misc/GUI/RISC OS/Volumes--disc_insertion_prompt.png) 这与 Macintosh 处理软盘驱动器的方式非常相似,只是 Acorn 计算机允许手动弹出光盘,并且没有明显地指示弹出的卷。Mac 不允许浏览弹出的卷。Mac OS 在光盘插入提示中没有取消按钮:如果 Mac 在重新插入时不再识别光盘(这种情况会发生),大多数用户必须关闭计算机并重新打开才能重新获得控制,因为取消对话框的方法(按住 command 键并键入句点)并不明显。看来 RISC OS 比 Mac OS 更优雅地处理了这种情况。

Applications

RISC OS 上面向用户的应用程序是被伪装成应用程序的目录(文件夹),这个概念被称为“应用程序目录”,后来被 Mac OS X 采用。应用程序目录只是一个普通的目录,其名称的第一个字符是感叹号,因此磁盘上每个程序的名称中都存在该字符。从名称中删除感叹号将导致应用程序目录恢复为常规目录。在启动程序时按住 shift 键将改为将应用程序目录作为普通的 Filer 窗口打开,以便可以检查和管理其内容。在这里,!Guile 的内容已打开,并显示 !Run 启动脚本: ![](https://telcontar.net/Misc/GUI/RISC OS/Applications--application_directory.png) 启动应用程序的效果取决于其用途。许多游戏以全屏模式运行,并且有些似乎没有办法在不重新启动计算机的情况下返回到 WIMP 桌面。一些实用程序程序(例如 !Chars 字符选择器)只是打开一个窗口。大多数应用程序只是将一个图标附加到 Icon bar;下面的屏幕截图显示了启动 !Edit 的效果,Icon bar 中的额外图标是唯一表明发生了任何事情的线索: ![](https://telcontar.net/Misc/GUI/RISC OS/Applications--!Edit_launched.png) 必须单击 Icon bar 中的这个新图标才能使程序出现。单击图标可能会调出程序的窗口(例如 !Configure),或者它可能会启动一个空白文档(例如 !Edit)。其他程序可能会提示提供详细信息,然后再创建新文档,例如 !Paint 会要求提供新精灵的宽度和高度以及其他信息。当应用程序在没有打开的文档的情况下运行时,单击图标会创建一个新文档的想法成为了 Mac OS X 中的标准行为。但是,在 RISC OS 上,单击程序的 Icon bar 图标始终具有相同的效果:如果它在程序首次打开时创建一个空白文档,则再次单击时始终会打开一个新的空白文档,而在 Macintosh 上,它会将程序现有的窗口置于最前面。 通常允许同一程序的多个实例,但 !Alarm 只允许自己运行一次: ![](https://telcontar.net/Misc/GUI/RISC OS/Applications--duplicates.png)

Text

像它的前辈 Acorn BBC Master Series 一样,Acorn Archimedes 最初以默认的 640×256 分辨率使用非正方形像素。鼠标光标、图标和系统字体都是为高度是宽度两倍的像素设计的。当使用更标准的 640×480 屏幕时,这会导致系统文本和图标在屏幕上显得分辨率非常低,而屏幕的其他部分看起来分辨率相对较高。下面的屏幕截图显示了 256 色的 640×256: ![](https://telcontar.net/Misc/GUI/RISC OS/Hardware--non-square_pixels) 但是,图形界面也能够渲染高质量的文本: ![](https://telcontar.net/Misc/GUI/RISC OS/Text--font_config.png) 抗锯齿的效果比预期的要好(1992 年系统上的真正平滑类型),但“子像素”抗锯齿似乎并非如此。下面的第一个屏幕截图禁用了子像素抗锯齿,而第二个屏幕截图启用了它: ![](https://telcontar.net/Misc/GUI/RISC OS/Text--AA_regular.png) ![](https://telcontar.net/Misc/GUI/RISC OS/Text--AA_sub-pixel.png) 在这种情况下(在彩色平板屏幕设备之前的时代),子像素抗锯齿意味着屏幕上字母的子像素定位,以实现小数的字母宽度。此功能也在 Mac OS 8.5 中的 Unicode 文本引擎 ATSUI 中引入,但由于 X 之前的 Mac OS 不支持平滑类型,因此唯一的结果是间距错误的字母,类似于上面的第一个屏幕截图,但更明显。只有使用 Mac OS X,任何主流图形界面才提供了平滑渲染、小数间距的类型,而 Acorn 在 1992 年或更早之前就完成了这项工作。但是,系统文本和应用程序文本之间的差异特别明显。 更奇怪的是,系统启动屏幕文本也是根据您的抗锯齿设置实时渲染的。下面的两个屏幕截图显示了启用和禁用抗锯齿的启动屏幕: ![](https://telcontar.net/Misc/GUI/RISC OS/Text--boot_screen_AA.png) ![](https://telcontar.net/Misc/GUI/RISC OS/Text--boot_screen_no_AA.png) 到 1997 年,Apple 已经开始显示抗锯齿文本的预渲染图像。

Icons

Amiga 界面一个有趣的特点是图标不需要具有正方形尺寸,并且通常不是正方形。RISC OS 也允许非正方形图标,但限制更多。 Filer 将所有图标放置在固定大小的网格上。在默认的大图标视图中,图标允许使用 86×38 像素的区域(在具有矩形像素的屏幕模式下为 86×19 像素);虽然有 90×40 像素的空间允许舒适的间距,但只有 86×38 像素的区域在单击时会突出显示。Acorn 将 34×34 像素作为其自身图标的默认大小(对于矩形像素为 34×17)。应用程序可以自由使用该空间内的任何大小,实际上许多应用程序都这样做,尤其是游戏。实际上,他们可以自由地超过该大小,并且超大图标会重叠标题和其他图标。 下面的屏幕截图显示了一些自定义大小的图标,包括大尺寸和小尺寸: ![](https://telcontar.net/Misc/GUI/RISC OS/Icons--non-square_large_size.png) ![](https://telcontar.net/Misc/GUI/RISC OS/Icons--non-square_small