OpenOffice Off-the-Wall:防弹模板

作者:Bruce Byfield

“我的自定义格式在哪里?我花了几个小时才弄好。现在,当我打开一个新文档时,它们不见了。”

这种惊慌失措的呼喊,或与之类似的呼喊,几乎每天都会发布到 OpenOffice.org 用户列表。一半的时间,问题在于发送者没有听说过模板。另一半的时间,发送者期望模板在 OpenOffice.org 中的行为方式与其他办公套件相同——它们不一样。在这两种情况下,解决方案都是学习 OOo 模板的行为方式,以便您可以与它们一起工作而不是与它们对抗。OOo 中的一些模板行为可能看起来很奇怪,并且至少其中一个是错误,但所有这些都值得了解。一旦您了解了它们,您应该会发现 OOo 处理模板的方式减少了问题和冲突的可能性,并使文档更具可移植性。

什么是模板?

从技术角度来说,模板是任何扩展名第二个字符为 t 的 OOo 文档。例如,在 Writer 中,模板是 .stw,而不是常规文档使用的 .sxw 扩展名。同样,在 Calc 中,模板扩展名是 .stc。

由于这个定义并没有让我们走得很远,让我们再试一次。模板是一种文档,其设计可以被同类型的其他文档使用。模板也可能包含内容的轮廓。这在 Draw 中尤其有用,其自动导航功能允许您选择一个模板用于格式,另一个模板用于轮廓。但是,大多数模板工具都假定您正在使用它们进行设计。

通过使用模板,您可以避免从头开始设计每个文档。相反,您可以从“文件”->“新建”->“模板和文档”中选择一个模板,并立即开始考虑内容。如果您正在处理一组应该外观相同的文档,模板尤其方便。

时不时地,OOo 用户列表上会出现一些发帖者,说他们不可能使用模板,因为他们做的每个文档都是独一无二的。然而,在实践中,这种情况很少发生。通过一些智能规划,大多数用户发现,在任何 OOo 应用程序中,不到六个模板就可以满足他们四分之三以上的需求。例如,学生可能会发现在 Writer 中用于论文、实验报告、求职申请和家信的模板是他们所需要的全部。对于高管来说,模板可能是备忘录、传真、信件和报告。而且,即使对于独特的文档,普通用户也可能希望设置一个默认模板,使其基本边距和字体偏好立即可用。

事实上,使用模板是 OOo 逻辑中如此重要的一部分,以至于即使是那些抵制使用模板的人也无法避免它们。尽管他们没有意识到这一点,但他们想要的不是避免使用模板,而是随意更改默认模板。然而,正如很快就会变得清楚的那样,这种需求造成的麻烦远多于便利。

设置模板

OOo 中的模板设计方式与任何其他文档相同。几乎所有可以在文档中自定义的内容都可以保存在模板中,包括文档属性、样式和字段。无法保存在模板中的项目是存储在 OOo 而不是文档本身中的项目。此列表包括自动图文集以及用于绘制对象背景的任何渐变和其他选项。

完成设计后,您就可以保存了,这就是古怪之处开始出现的地方。首先,如果您想保存在“工具”->“大纲编号”中的设置,请务必在模板中包含每个大纲级别的一个段落。否则,此特定工具的设置将丢失。

更重要的是,首次保存模板时,请务必不要使用“文件”->“保存”或“另存为”来保存它。即使这些工具包含另存为模板的选项,以这种方式保存的模板也不会添加一些必要的 XML 代码。因此,以这种方式保存的模板不会在模板管理系统中列出,即使它们位于模板目录中也是如此。更糟糕的是,使用以这种方式保存的模板创建的文档不会链接到模板以进行自动更新。相反,请使用“文件”->“模板”->“保存”来保存模板。如果您忘记并走了逻辑路线,那么您可以使用“文件”->“模板”->“组织”中的命令列表中的“导入模板”选项。对于以后的保存,“文件”->“保存”或“另存为”都可以;它们只是不适用于首次保存。

顺便说一句,模板管理系统是另一个怪癖。它是一个虚拟目录,从“工具”->“选项”->“OpenOffice.org”->“路径”->“模板”中设置的路径创建。默认路径包括单用户或多用户安装的通用路径,以及个人用户的路径。您可以自由浏览虚拟目录,但在模板管理窗口内时,您无法移动到目录之外。如果您想要一个用于在多用户系统上共享模板的目录,请更改通用路径的权限,以便所有用户都可以写入它,或者将公共目录添加到路径中。

模板如何与其他文档一起工作

设计模板后,您可以通过从“文件”->“新建”->“模板和文档”中选择它来基于该模板创建其他文档。对于新用户来说,真正的问题从这里开始,因为 OO 模板与文档的交互方式与他们从其他办公套件中学到的期望非常不同。

在 OOo 中,模板受四个基本规则约束

  • 1. 在任何情况下,OOo 模板都不会因基于它们创建的任何文档所做的更改而更改。如果要更改模板,请从模板管理窗口中选择“编辑”命令。

  • 2. 称为“默认”的模板(不要与设置为默认的模板混淆,尽管它很可能就是默认模板)根本无法从 OOo 内部更改。就我所见,您必须编辑源代码并重新编译才能编辑“默认”模板,而很少有用户会费心去做。您可以使用模板管理窗口中的“设置为默认模板”命令将另一个模板设置为应用程序的默认模板。但是,“默认”模板本身不受影响。无论何时您想恢复“默认”到默认模板位置,都可以通过选择“重置默认模板”命令来实现。

  • 3. 每个文档只能应用一个模板。如果要添加来自另一个模板的格式,请使用“格式”->“样式”->“加载”导入它们,然后在下次打开文档时更新文档。如果要更改文档的模板,请使用相同的过程。您也可以删除模板并用另一个同名但格式不同的模板替换它,或者将文档复制并粘贴到新模板中。尽管如此,无论您如何解决它,规则都适用。

  • 4. 模板决定文档的初始格式;除此之外,文档可以独立于格式。如果您想确保某种类型的所有文档都具有一致的外观,则应在模板中对格式进行所有更改,然后将其重新应用于所有链接的文档。但是,没有什么可以阻止您向文档添加模板中未找到的格式。此外,在模板修改后首次打开文档时,您有一次机会将修改添加到文档中。如果您不这样做,则文档不再以任何方式链接到模板。(如果您不小心没有更新,您应立即关闭文档而不保存,然后重新打开它,这次更加注意屏幕上的消息。)

这些规则远非武断。事实上,它们似乎旨在消除 MS Office 中的一些常见格式问题。在 MS Office 中,对文档的更改可以更新其模板。事实上,大多数用户通常以这种方式更新他们的模板。因此,当其他文档在打开时似乎自发地重新格式化时,他们经常会感到惊讶。然后,为了使问题更加复杂,用户通常在没有意识到自己在做什么的情况下重新格式化默认模板。因此,MS Word 中的默认模板在任何两台机器上都很少相同。对于共享或联网版本,突变更加奇怪且更快速。在这种情况下应用多个模板只会增加混乱。后果是浪费时间和不一致。在极端情况下,当模板和文档之间的差异变得太大时,结果甚至可能是文件损坏。

当然,通过始终如一地应用一些简单的预防措施,可以避免这些问题。然而,与安全措施一样,大多数人不会应用它们。

相比之下,OOo 中模板的行为消除了所有这些问题,而无需采取特殊的预防措施。模板受到保护,免受意外更改,并且几乎消除了模板之间或模板与文档之间的冲突。此外,如果相同的字体可用,您可以合理地确信您在机器上看到的内容就是您的文档收件人在他们的机器上看到的内容,尤其是在使用默认模板时。

OOo 中模板的规则并非完美。特别是,干净地更改模板以及在文档取消链接后重新应用模板的方法将非常有用。然而,如果不损害当前安排提供的保护,这些更改可能是不可能的。就目前而言,OOo 中模板的规则确保您的工作变得更容易,而不会增加额外的复杂性。一旦您了解了这些规则的工作原理和原因,您就会欣赏它们作为节省时间的工具。

Bruce Byfield 曾是 Stormix Technologies 和 Progeny Linux Systems 的经理,以及 Maximum Linux 的特约编辑。离开办公桌后,他听朋克民谣音乐,饲养鹦鹉,并出于自愿跑长距离的痛苦路程。他目前正在撰写一本关于 OpenOffice.org 的书。

加载 Disqus 评论