let view = new MapView({
container: "viewDiv",
map: map
});
let print = new Print({
viewModel: new PrintVM({
view: view
})
});
构造函数
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
String|String[] | 指定用户可以根据打印服务提供的选项选择的打印输出文件格式。 更多详情 | PrintViewModel | |
String|String[] | 指定用户可以根据打印服务提供的选项选择的打印输出布局。 更多详情 | PrintViewModel | |
String | 类的名称。 更多详情 | Accessor | |
Collection<CustomTemplate> | 门户上定义的打印模板集合。 更多详情 | PrintViewModel | |
String | 导出 Web 地图任务的 REST 端点的有效 URL。 更多详情 | PrintViewModel | |
Object[] | 返回自定义打印服务上可用的所有打印模板的对象数组,以查看使用 | PrintViewModel | |
Object | 此选项允许将额外参数传递给打印 (导出 webmap) 请求。 更多详情 | extraParameters | |
Boolean | 指示是否包含 defaultTemplates。 更多详情 | PrintViewModel | |
Portal | 可以搜索指定门户实例的定位器服务。 更多详情 | PrintViewModel | |
String | 导出 Web 地图任务的 REST 端点的 URL。 更多详情 | PrintViewModel | |
String | 视图模型的状态。 更多详情 | PrintViewModel | |
Object[] | 一个对象,其中包含自定义打印服务中每个打印模板的 | PrintViewModel | |
Object | 更多详情 | PrintViewModel | |
Number | 发送到异步 GP 任务的每个作业状态请求之间的时间间隔 (以毫秒为单位)。 更多详情 | PrintViewModel | |
MapView | 微件将从中操作的视图。 更多详情 | PrintViewModel |
属性详细信息
-
起始版本:GeoScene Maps SDK for JavaScript 4.15
-
指定用户可以根据打印服务提供的选项选择的打印输出文件格式。此属性可以采用字符串值或字符串值数组。
当此值为 "all" (默认值) 时,可以使用所有打印服务格式。使用字符串值数组时,仅会使用与打印服务提供的选项相匹配的值。如果没有任何输入字符串值与打印服务提供的值相匹配,则
allowedFormats
将回退到默认行为。- 默认值:"all"
- 另请参阅
示例const print = new Print({ view: view, printServiceUrl: url }); print.viewModel.allowedFormats = ["jpg", "png8", "png32"]; view.ui.add(print, {position: "top-right"});
-
起始版本:GeoScene Maps SDK for JavaScript 4.15
-
指定用户可以根据打印服务提供的选项选择的打印输出布局。此属性可以采用字符串值或字符串值数组。
当此值为 "all" (默认值) 时,可使用所有打印服务布局。使用字符串值数组时,仅会使用与打印服务提供的选项相匹配的值。如果没有任何输入字符串值与打印服务提供的值相匹配,则
allowedLayouts
将回退到默认行为。- 默认值:"all"
- 另请参阅
示例const print = new Print({ view: view, printServiceUrl: url }); print.viewModel.allowedLayouts = ["a3-landscape", "a3-portrait"]; view.ui.add(print, {position: "top-right"});
-
起始版本:GeoScene Maps SDK for JavaScript 4.7
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
defaultTemplates Collection<CustomTemplate>readonly起始版本:GeoScene Maps SDK for JavaScript 4.18
-
门户上定义的打印模板集合。
打印模板用于将预定义值应用于现有打印选项。
-
effectivePrintServiceUrl Stringreadonly
-
导出 Web 地图任务的 REST 端点的有效 URL。
-
起始版本:GeoScene Maps SDK for JavaScript 4.22
-
返回自定义打印服务上可用的所有打印模板的对象数组,以查看使用
customTextElements
发布的模板。这些值可以在 Print 微件 UI 中被覆盖,或者以编程方式使用 templateCustomTextElements 属性。PrintViewModel 调用 GPServer 上的
Get Layout Templates Info
任务以发现可用模板。如果Get Layout Templates Info
任务在自定义打印服务上以不同方式命名,则不会返回任何值,并且无法支持customTextElements
。在这种情况下,我们建议重新发布打印服务以使用标准Get Layout Templates Info
名称。
-
extraParameters Objectinner起始版本:GeoScene Maps SDK for JavaScript 4.20
-
此选项允许将额外参数传递给打印 (导出 webmap) 请求。
-
includeDefaultTemplates Boolean起始版本:GeoScene Maps SDK for JavaScript 4.18
-
指示是否包含 defaultTemplates。
- 默认值:true
-
portal Portal起始版本:GeoScene Maps SDK for JavaScript 4.18
-
可以搜索指定门户实例的定位器服务。使用此属性可将此 GeoScene Portal 实例设置为搜索。这在使用自定义打印模板时特别有用。
如果设置了此属性,则不必设置 printServiceUrl 属性。
- 另请参阅
-
state Stringreadonly
-
视图模型的状态。
可能值:"disabled"|"initializing"|"ready"|"error"
- 默认值:disabled
-
起始版本:GeoScene Maps SDK for JavaScript 4.22
-
一个对象,其中包含自定义打印服务中每个打印模板的
customTextElements
名称-值对对象数组。使用此属性以更新页面布局上自定义文本元素的文本。PrintViewModel 调用 GPServer 上的
Get Layout Templates Info
任务来发现每个模板可能的customTextElements
值。任务的名称必须匹配Get Layout Templates Info
,模板必须使用customTextElements
发布,且值必须是字符串。找到的值将在 Print 微件的Advanced options
下填充。这些值可以在 Print 微件 UI 中被覆盖,或者以编程方式使用此属性。若要列出打印服务上可用的所有打印模板,以查看哪些模板是使用customTextElements
发布的,请使用 effectiveTemplateCustomTextElements 属性。示例const printWidget = new Print({ viewModel: new PrintVM({ view: view, // specify your custom print service printServiceUrl: "", // `customTextElements` are defined per print template // this example has one template with `customTextElements` templateCustomTextElements: { // if there were more applicable templates, then we would // create another object with the template name containing // an array of more name-value pairs "Portrait_TextElements": [ // the possible values are defined in the print service { "headquarters": "Tampa, Florida" }, { "division": "NFC South" }, { "founded": "1976" } ] } }) });
-
templatesInfo Objectreadonly
-
示例
const print = new Print({ view: view, printServiceUrl: url }); view.ui.add(print, {position: "top-right"}); console.log("PrintViewModel templatesInfo Formats: ", print.viewModel.templatesInfo.format.choiceList); console.log("PrintViewModel templatesInfo Layouts: ", print.viewModel.templatesInfo.layout.choiceList);
-
updateDelay Number
-
发送到异步 GP 任务的每个作业状态请求之间的时间间隔 (以毫秒为单位)。
- 默认值:1000
-
view MapView
-
微件将从中操作的视图。
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
Promise | 应调用此方法来加载视图模型的打印资源。 更多详情 | PrintViewModel | |
Promise<Object> | 根据所选选项打印 (导出) 当前 MapView。 更多详情 | PrintViewModel | |
移除对象拥有的句柄组。 更多详情 | Accessor |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); // Handle gets removed when the object is destroyed. this.addHandles(handle);
参数handleOrHandles WatchHandle|WatchHandle[]对象销毁后,标记为要移除的句柄。
groupKey *optional标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
起始版本:GeoScene Maps SDK for JavaScript 4.25
-
如果存在指定的句柄组,则返回 true。
参数groupKey *optional组键。
返回类型 描述 Boolean 如果存在指定的句柄组,则返回 true
。示例// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
根据所选选项打印 (导出) 当前 MapView。
参数printTemplate PrintTemplatePrintTemplate 用于指定布局模板选项,然后 PrintTask 使用该选项来生成打印页面。
返回类型 描述 Promise<Object> 解析为具有以下属性的类: 属性 类型 描述 url String 导出的打印输出的 URL。
-
removeHandles(groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");