我们在 OmniGraffle 6.1 中构建了许多额外的内容,包括从 Mac 上的其他应用程序中输入和输出文件的功能。这对于 Microsoft® Visio® 或 Adobe® Photoshop® 的用户特别重要,但您需要升级到 OmniGraffle 专业版才能对这些格式进行输入和输出。
除了输入/输出之外,本部分还涉及下列这些 OmniGraffle 高级功能:
- AppleScript 支持(需要 OmniGraffle 专业版)
- LinkBack 支持
- 在 OmniGraffle 中使用正则表达式
从其他应用程序输入
OmniGraffle 可以识别多种不同的文件格式。您可以使用打开普通 OmniGraffle 文件的方式打开这些文件,然后进行输入(文件 ▸ 打开或 Command-O)。
- (专业版)Microsoft® Visio® 绘图文件、模板和型版(.vsd、.vsdx、.vdx、.vst、.vtx、.vss、.vsx)
- OmniGraffle 专业版可以读取由 Microsoft® Visio® 图表软件保存为 XML 文件格式的文稿(现在甚至包括原始二进制的文件格式!耶!)这真是太棒了!请注意,虽然您可以打开二进制格式,但无法输出为该格式,而是只能存储为 OmniGraffle 图表或输出为 XML 格式。另请注意,您无法输入 Microsoft® Enhanced Metafile (EMF) 格式的图形。
- PDF 文件 (.pdf)
- 有两种方式将 PDF 文件导入到 OmniGraffle 中:
- 使用文件 ▸ 打开并选择您要处理的 PDF 文件。OmniGraffle 会尝试将 PDF 文件输入为可编辑的形状。
- 将 PDF 文件拖动到版面上。这会将 PDF 文件作为图像,您可以在上面添加备注、注释以及其他标准的 OmniGraffle 对象。
- DOT 文件 (.dot)
- OmniGraffle 知晓 Graphviz 所使用的 DOT 语言的子集。虽然这并没完全实现 DOT,但已经相当有用。
- 图表!2 个文稿(.diagram2 和 .dpalette2)
- 图表是类似于 OmniGraffle 的 NeXTSTEP/OPENSTEP 应用程序。OmniGraffle 可以输入图表文件中的对象,但不能输入其附加的 EPS 图像、声音或链接。
- OmniOutliner 文稿(.ooutline 和 .oo3)
- 当您打开 OmniOutliner 文件时,大纲的项目被解读为图表。会出现一个对话框;您可以使用它来准确展示大纲的方式: 使用弹出式列表来选择 图表样式 。
- OmniOutliner 文稿(.ooutline 和 .oo3)
- (专业版)使用表格将图表样式中的对象指定到大纲的栏中。如果您要显示每个项的多栏信息,请使用带有群组对象的图表样式。您也可以为对象的备注分配一栏。
- (专业版)选择将大纲放入全新的文稿中还是放入打开文稿的新版面中。
- (专业版)Xcode 项目 (.xcode)、Project Builder 项目 (.pbproj) 和框架 (.framework)
- OmniGraffle 使用 Objective-C 标头来构造继承关系、协议关系和类别关系的图表。
- (专业版)Interface Builder nib 文件 (.nib)
- OmniGraffle 在 nib 文件中绘制了连接,以取得简单的视觉效果。
- EOModeler 文件 (.eomodeld)
- OmniGraffle 创建了由文件描述的数据库关系的图表。
- 文件夹结构
- 将文件夹从 Finder 拖放到 OmniGraffle 的应用程序图标,以图表形式映射文件夹的内容。
输出为不同的格式
您可以利用 OmniGraffle 图表创建多种不同类型的文件。选择文件 ▸ 输出 (Option-Command-E)。当您输出时,新文件被写入磁盘,原始文稿则留在屏幕上。当然,不是所有图表特征都可以用所有文件格式表现出来。
可用的文件格式包括:
- BMP 点阵图像 – 一种传统的图形格式。
- EPS 向量图像 – 封装的 PostScript。这是专业打印中的通用格式。
- GIF 点阵图像 – 一种在 web 上广泛使用的传统图形格式。
- HTML 图像映射 -一种超文本文件和 JPEG、PNG 或 GIF 图像。原始 OmniGraffle 文稿中的 URL 动作将作为链接编码到图像映射中,这样点按图像就可以执行 URL 动作(请注意不包括有关线条的动作,但包括有关线条标签的动作)。
- JPEG 点阵图像 -一种流行的压缩图像格式,可用于降低图像质量来取得较小的文件。
- OmniGraffle 文稿(专业版)- OmniGraffle 文稿。您可以制作只读(即不可编辑的)文件,也可以选择在文件中加入带有链接的图像,以便可在他人电脑上正确显示。
- OmniGraffle 模板、OmniGraffle 样板 – OmniGraffle 的资源。
- OmniOutliner 3 – 将图表展示为文字大纲,使用形状之间的连线来创建层次。这同样也无法用于不具有严格树型结构的图表。
- PDF 向量图像 – 可携式文档格式。这是一种优秀的跨平台格式,可以很好地支持向量组件和点阵。
- PNG 点阵图像 – 可携式网络图形,一种在 Web 上流行的格式。在减少文件大小时,此格式使用无损压缩以保留图像的细节信息。它支持透明度。
- Photoshop® 图像(专业版)- 输出可以在 Adobe® Photoshop® 或其他可读出 .psd 文件的图像应用程序中打开的分层 .psd 文件。
- SVG 向量绘图(专业版)- 一种使用 XML 的开放式互联网标准。
- TIFF 点阵图像 – 标记图像文件格式。此格式支持透明度。
- Visio® XML 文稿(专业版)- 基于 XML 的文件格式,专用于 Microsoft® 图表应用程序。
取决于所选的文件格式,您将有不同的选项。大部分格式都提供“输出区域”选项,您可以选择要输出的文稿部分。
- 当前所选内容 – 仅输出现在所选的对象。
- 所有对象 – 输出版面上的所有对象,但不输出空白区域。
- 指定区域 – 指定要输出的版面精确区域。
- 当前版面 – 输出整个版面。
- 整个文稿 – 输出所有内容,为每个版面创建一个图像文件。
取决于所选的格式,您也可以选择用于输出比实际尺寸、分辨率、压缩级别更小或更大的比例,以及是否要使背景透明。
AppleScript 支持(专业版)
OmniGraffle 具备广泛的 AppleScript 支持,可轻松在 OmniGraffle 项目中自动执行任务或创建全新的 OmniGraffle 项目。查询有关 OmniGraffle 的 AppleScript 对象模型和命令的详细信息,请启动 AppleScript 编辑器(/应用程序/实用程序,或使用 Finder 中的 Shift-Command-U),选择文件 ▸ 打开字典,然后在“打开字典”对话框中选择所需的 OmniGraffle 版本。
您可以将 AppleScript 存储在 OmniGraffle 的脚本文件夹中,以便能够从“脚本”菜单中轻松地进行访问。也可以使用动作检查器将脚本附加到版面上的单个对象。在激活浏览工具后点按附加有脚本的对象,即可运行该脚本。
如果选择了一些对象,然后从菜单条中选择编辑 ▸ 拷贝为 ▸ AppleScript,您将获得所需的准确 AppleScript 线条来创建这些对象。这是了解 OmniGraffle 的 AppleScript 支持如何工作,或如何将特定对象添加到您自己本身脚本的最佳方式。
LinkBack
LinkBack 是一种在应用程序之间嵌入内容的方式,在这种方式下,您可以随时使用最初创建内容的软件返回并编辑内容。
请核查 GitHub 上的 LinkBack 资源库,获取有关 LinkBack 的海量信息以及支持该特性的应用程序列表。
要将 OmniGraffle 内容嵌入其他 LinkBack 应用程序,只需按常规方式拷贝和粘贴内容即可。同样的操作可以将其他应用程序的内容嵌入 OmniGraffle 图表。
要将 OmniGraffle 内容嵌入 OmniGraffle 中的单个对象,先选择版面 (Command-A) 上的所有对象,再选择菜单条中的编辑 ▸ 拷贝为 ▸ PDF,然后粘贴 (Command-V)。所拷贝的对象会变成单个图像;连按该对象即可打开一个新的 OmniGraffle 窗口,您可在其中编辑重要内容的对象。
要编辑已嵌入其他应用程序的 OmniGraffle 内容:
- 连按其他应用程序文稿中的 OmniGraffle 内容,将出现一个包含内容的 OmniGraffle 窗口。
- 以惯常方式编辑该 OmniGraffle 窗口中的内容。
- 在 OmniGraffle 中选择文件 ▸ 存储,其他应用程序中的内容会自动更新。
- 要编辑其他已嵌入 OmniGraffle 图表的 LinkBack 应用程序内容,只需连按即可。在其他应用程序中进行存储时,OmniGraffle 图表中的内容会更新。
在 OmniGraffle 中使用正则表达式
OmniGraffle 的查找对话框支持使用一些简单的正则表达式。正则表达式是代表一整组字符串的单个字符串。所用的语法如下所示:
a*
– 零或多个 a
的实例(尽可能符合最长的字符串)
a*?
– 零或多个 a
的实例(尽可能符合最短的字符串)
a+
– 一个或多个 a
的实例(尽可能符合最长的字符串)
a+?
– 一个或多个 a
的实例(尽可能符合最短的字符串)
a?
– 零或一个 a
的实例
^
– 线条的开始位置
$
– 线条的结束位置
.
– 任何字符
[a-z]
– a
与 z
之间的所有字符
[abc-]
– a
、b
、c
或 -
(abc)
– 符合 abc
并将其存储为一个群组。使用“查找”对话框中的选择或替换弹出式菜单来选择或替换某个群组,而非整个表达式。
\1
– 第一个匹配群组的文字
a|b
– a
或 b
\n
– 新行
\r
– 回车符
\t
– 制表符
\d
– 数字
\D
– 非数字
\w
– 文字字符(字母数字或下划线)
\W
– 非文字字符
\s
– 空白
\S
– 非空白
\
– 略过下一个字符
正则表达式十分常用,您可以在 Intenet 或稍好的图书馆或书店中找到大量相关信息。这里有一些教您入门的示例:
&\s*$
– 匹配线条结尾端的空白。
<.*?>
— 匹配以“<
”开始且以“>
”结尾的字符串,如 XML 标签。
&\S+@\S+
— 随意匹配类似电子邮件地址的项 (anything@anything)。
(19|20)\d\d-\d\d?-\d\d?
– 匹配 YYYY-MM-DD 格式的日期,介于 1900 和 2099 之间
关注公众号,查看更多OmniGraffle文章与教程