在 Word 2013 中添加自定义 "template group"
Adding a custom "template group" in Word 2013
是否可以将自定义模板 "tab"(缺少更好的术语)添加到 Word 2013 的开始屏幕?也就是说,是否可以在下面的界面中,除了"Featured"和"Personal?"之外,再增加一个section?
我对添加一个 "Legal" 选项卡以显示专门为组织的法律部门开发的模板的可行性感兴趣。我知道可以通过域策略(读取:注册表编辑)下推自定义模板目录,以便自定义模板出现在 "Personal" 选项卡下,但考虑到管理开销,这并不是很理想。更不用说模板根本不是 "personal"。
理想情况下,我想通过 Office 应用来完成此操作。然而,查看 JavaScript API for Office 文档,似乎无法立即实现。
This post (via this SO question) 描述了注册表更改,似乎暗示无法自定义 "backstage"。
这样的定制可以吗?如果是这样,通过什么方式定制?使用 Office 加载项(托管)、Office 应用程序、一些其他注册表修改...?
(是的,我知道 "add-in" 是 new term;为了清楚起见,我在问题中使用术语 "add-in"请参考 Visual Studio 2013 中可用的托管加载项项目模板,而不是 Office 模板的 Office 应用程序或云应用程序)
是的,我相信通过使用 Visual Studio 2013 创建 Word 2013 VSTO 加载项可以实现后台选项卡。(这也可以通过将功能区 XML 嵌入 VBA 也会在启动时加载的加载项模板。)
我将在下面概述的操作过程的开头说,我认为创建自定义 Legal 功能区选项卡并使用由图像填充的库控件会更容易,并且可能提供更好的 UI 体验模板。 (自定义任务窗格也可能提供一个很好的解决方案,具体取决于用例。)
准备单词
您提供的屏幕截图是启动 Word 2013 时出现的初始 Backstage 视图。 (此视图仅在启动时出现,以后使用此 Word 实例访问模板将需要通过 Backstage 新建选项卡。)据我所知,由于此 Backstage "splash screen" 无法修改,因此第一步是禁用通过转到文件|选项|常规|启动选项并取消选中此应用程序启动时显示开始屏幕。这将导致 Word 启动到空白文档并永久删除此初始屏幕。并且可以通过组策略将此设置下推到用户 PC。 (如果您禁用此设置然后转到自定义功能区选项卡路线,您可以在启动时在功能区中直观地显示您的模板。)
方法
在禁用 Backstage "splash screen" 的情况下,我建议隐藏内置的 Backstage 新选项卡,然后将其替换为具有您的合法模板的自定义新选项卡。
通过功能区 XML 代码更改了 Word Backstage 视图。此代码要么嵌入到 VBA 模板加载项中,要么通过使用 C#、F# 或 VB.NET 在 Visual Studio 中内置的 VSTO 加载项交付。要隐藏内置的新选项卡,XML 将包含此代码:
<tab idMso="TabOfficeStart" visible="false"/>
您可以在这里找到所有控件标识符:
Office 2013 Fluent User Interface Control Identifiers
台阶
- 在 Visual Studio 中创建加载项项目(或在 VBA 中创建模板)
- 编写功能区 XML,这将删除新选项卡并插入带有合法模板的自定义选项卡
Customizing the Office 2010 Backstage View for Developers (Applies to Office 2013 As Well)
Create Custom Tabs in the Office 2010 Backstage View (Applies to Office 2013 As Well)
- 部署加载项
这应该可以帮助您入门,但您可能需要查找有关加载项创建和 Backstage 自定义的其他文章。
您将无法使用基于 JavaScript 的 Office 加载项将自定义组添加到可用模板(此技术的功能相当有限 - 它的主要优点是它可以 运行跨平台)。
添加自定义模板的方法是创建一个 Spotlight 提供程序。这里有详细描述:
文章讨论的是 Office 2010,但它也适用于 Office 2013。您只需将注册表项中的版本号从 14.0 更改为 15.0。
是否可以将自定义模板 "tab"(缺少更好的术语)添加到 Word 2013 的开始屏幕?也就是说,是否可以在下面的界面中,除了"Featured"和"Personal?"之外,再增加一个section?
我对添加一个 "Legal" 选项卡以显示专门为组织的法律部门开发的模板的可行性感兴趣。我知道可以通过域策略(读取:注册表编辑)下推自定义模板目录,以便自定义模板出现在 "Personal" 选项卡下,但考虑到管理开销,这并不是很理想。更不用说模板根本不是 "personal"。
理想情况下,我想通过 Office 应用来完成此操作。然而,查看 JavaScript API for Office 文档,似乎无法立即实现。
This post (via this SO question) 描述了注册表更改,似乎暗示无法自定义 "backstage"。
这样的定制可以吗?如果是这样,通过什么方式定制?使用 Office 加载项(托管)、Office 应用程序、一些其他注册表修改...?
(是的,我知道 "add-in" 是 new term;为了清楚起见,我在问题中使用术语 "add-in"请参考 Visual Studio 2013 中可用的托管加载项项目模板,而不是 Office 模板的 Office 应用程序或云应用程序)
是的,我相信通过使用 Visual Studio 2013 创建 Word 2013 VSTO 加载项可以实现后台选项卡。(这也可以通过将功能区 XML 嵌入 VBA 也会在启动时加载的加载项模板。)
我将在下面概述的操作过程的开头说,我认为创建自定义 Legal 功能区选项卡并使用由图像填充的库控件会更容易,并且可能提供更好的 UI 体验模板。 (自定义任务窗格也可能提供一个很好的解决方案,具体取决于用例。)
准备单词
您提供的屏幕截图是启动 Word 2013 时出现的初始 Backstage 视图。 (此视图仅在启动时出现,以后使用此 Word 实例访问模板将需要通过 Backstage 新建选项卡。)据我所知,由于此 Backstage "splash screen" 无法修改,因此第一步是禁用通过转到文件|选项|常规|启动选项并取消选中此应用程序启动时显示开始屏幕。这将导致 Word 启动到空白文档并永久删除此初始屏幕。并且可以通过组策略将此设置下推到用户 PC。 (如果您禁用此设置然后转到自定义功能区选项卡路线,您可以在启动时在功能区中直观地显示您的模板。)
方法
在禁用 Backstage "splash screen" 的情况下,我建议隐藏内置的 Backstage 新选项卡,然后将其替换为具有您的合法模板的自定义新选项卡。
通过功能区 XML 代码更改了 Word Backstage 视图。此代码要么嵌入到 VBA 模板加载项中,要么通过使用 C#、F# 或 VB.NET 在 Visual Studio 中内置的 VSTO 加载项交付。要隐藏内置的新选项卡,XML 将包含此代码:
<tab idMso="TabOfficeStart" visible="false"/>
您可以在这里找到所有控件标识符:
Office 2013 Fluent User Interface Control Identifiers
台阶
- 在 Visual Studio 中创建加载项项目(或在 VBA 中创建模板)
- 编写功能区 XML,这将删除新选项卡并插入带有合法模板的自定义选项卡
Customizing the Office 2010 Backstage View for Developers (Applies to Office 2013 As Well)
Create Custom Tabs in the Office 2010 Backstage View (Applies to Office 2013 As Well)
- 部署加载项
这应该可以帮助您入门,但您可能需要查找有关加载项创建和 Backstage 自定义的其他文章。
您将无法使用基于 JavaScript 的 Office 加载项将自定义组添加到可用模板(此技术的功能相当有限 - 它的主要优点是它可以 运行跨平台)。
添加自定义模板的方法是创建一个 Spotlight 提供程序。这里有详细描述:
文章讨论的是 Office 2010,但它也适用于 Office 2013。您只需将注册表项中的版本号从 14.0 更改为 15.0。