mwf.xdesktop.requireapp("process.xform", "$module", null, false);
/** @class wpsoffice wps组件。
* @o2cn wpsoffice
* @example
* //可以在脚本中获取该组件
* //方法1:
* var wpsoffice = this.form.get("fieldid"); //获取组件
* //方法2
* var wpsoffice = this.target; //在组件本身的脚本中获取
* @extends mwf.xapplication.process.xform.$module
* @o2category formcomponents
* @o2range {process|cms|portal}
* @hideconstructor
*/
mwf.xapplication.process.xform.wpsoffice = mwf.appwpsoffice = new class(
/** @lends mwf.xapplication.process.xform.wpsoffice# */
{
extends: mwf.app$module,
isactive: false,
options:{
"version": "wpsweboffice",
/**
* 文档打开前事件。
* @since v8.0
* @event mwf.xapplication.process.xform.wpsoffice#beforeopen
*/
/**
* 文档打开后事件。
* @since v8.0
* @event mwf.xapplication.process.xform.wpsoffice#afteropen
*/
/**
* 保存后事件。
* @since v8.0
* @event mwf.xapplication.process.xform.wpsoffice#aftersave
*/
"moduleevents": ["beforeopen",
"afteropen",
"aftersave"
]
},
initialize: function(node, json, form, options){
this.node = $(node);
this.node.store("module", this);
this.json = json;
this.form = form;
this.documentid = "";
this.mode = "write";
this.officetype = {
"docx" : "writer",
"doc" : "writer",
"xlsx" : "spreadsheet",
"xls" : "spreadsheet",
"pptx" : "presentation",
"ppt" : "presentation",
"pdf" : "pdf",
"ofd" : "pdf"
};
this.apptoken = "x_processplatform_assemble_surface";
this.version = this.options.version;
},
_loaduserinterface: function(){
this.node.empty();
this.node.setstyles({
"min-height": "700px"
});
},
_afterloaded: function(){
if(!layout.serviceaddresslist["x_wpsfile_assemble_control"]){
this.node.set("html","please install wps application
");
return false;
}
if(this.mode !== "read" && this.json.allowupload){
this.createupload();
}
this.action = o2.actions.load("x_wpsfile_assemble_control");
if (!this.json.isnotloadnow){
this.data = this.getdata();
if(this.data.documentid === ""){
if (this.json.officetype === "other" && this.json.templatetype === "script"){
this.json.template = this.form.macro.exec(this.json.templetescript.code, this);
}
this[this.json.officetype === "other"&&this.json.template !== ""? "createdocumentbytemplate":"createdocument"](function (){
this.loaddocument();
}.bind(this));
}else {
this.documentid = this.data.documentid;
this.loaddocument();
}
}
},
createupload : function (){
this.uploadnode = new element("div",{"style":"margin:10px;"}).inject(this.node);
var uploadbtn = new element("button",{"text":mwf.xapplication.process.xform.lp.ofdview.upload,"style":"margin-left: 15px; color: rgb(255, 255, 255); cursor: pointer; height: 26px; line-height: 26px; padding: 0px 10px; min-width: 40px; background-color: rgb(74, 144, 226); border: 1px solid rgb(82, 139, 204); border-radius: 15px;"}).inject(this.uploadnode);
uploadbtn.addevent("click",function (){
o2.require("o2.widget.upload", null, false);
var upload = new o2.widget.upload(this.content, {
"action": o2.actions.get(this.apptoken).action,
"method": "uploadattachment",
"accept" : ".docx,.xlsx,.pptx,.pdf,.ofd",
"parameter": {
"id" : this.form.businessdata.work.id
},
"data":{
},
"oncompleted": function(data){
o2.actions.load(this.apptoken).attachmentaction.delete(this.documentid,function( json ){
}.bind(this));
this.documentid = data.id;
this.reload();
}.bind(this)
});
upload.load();
}.bind(this));
},
reload : function (){
this.setdata();
this.node.empty();
this.createupload();
this.loaddocument();
},
createdocumentbytemplate : function (callback){
this.action.customaction.getinfo(this.json.template).then(function(json) {
var data = {
"filename": mwf.xapplication.process.xform.lp.onlyoffice.filetext "." json.data.extension,
"filetype": json.data.extension,
"apptoken" : this.apptoken,
"workid" : this.form.businessdata.work.id,
"site" : "filetext",
"tempid": this.json.template
};
this.action.customaction.createforo2(data,
function( json ){
this.documentid = json.data.fileid;
this.setdata();
if (callback) callback();
}.bind(this),null, false
);
}.bind(this))
},
createdocument : function (callback){
var data = {
"filename" : mwf.xapplication.process.xform.lp.onlyoffice.filetext "." this.json.officetype,
"apptoken" : this.apptoken,
"workid" : this.form.businessdata.work.id,
"site" : "filetext"
};
this.action.customaction.createforo2(data,
function( json ){
this.documentid = json.data.fileid;
this.setdata();
if (callback) callback();
}.bind(this),null, false
);
},
loaddocument: function () {
o2.actions.load(this.apptoken).attachmentaction.getonlineinfo(this.documentid, function( json ){
this.documentdata = json.data;
this.filename = this.documentdata.name;
this.extension = this.documentdata.extension;
this.geteditor(function () {
this.loadapi(function (){
this.loadeditor();
}.bind(this));
}.bind(this));
}.bind(this),null,false);
},
loadapi : function (callback){
if(this.version === "wpsweboffice"){
o2.load(["../x_component_wpsofficeeditor/web-office-sdk-solution-v2.0.2.umd.min.js"], {"sequence": true}, function () {
if (callback) callback();
}.bind(this));
}else {
o2.load(["../x_component_wpsofficeeditor/web-office-sdk-v1.1.19.umd.js"], {"sequence": true}, function () {
if (callback) callback();
}.bind(this));
}
},
geteditor: function (callback) {
if (this.isreadonly()){
this.mode = "read";
}else{
if (this.json.readscript && this.json.readscript.code){
var flag = this.form.macro.exec(this.json.readscript.code, this);
if (flag){
this.mode = "read";
}
}
}
if(this.action.configaction.getbaseconfig){
this.action.configaction.getbaseconfig(function( json ){
this.appid = json.data.appid;
this.version = json.data.version;
if (callback) callback();
}.bind(this),null,false);
}else {
this.action.configaction.getappid(function( json ){
this.appid = json.data.value;
if (callback) callback();
}.bind(this),null,false);
}
},
loadeditor : function (){
this.fireevent("beforeopen");
if(this.wpsoffice) this.wpsoffice.destroy();
this.officenode = new element("div#_" this.documentid,{"style":"height:100%;overflow:hidden;min-height:700px"}).inject(this.node);
var config = {
mount: this.officenode,
mode : this.json.showmode,
cooperuserattribute: {
iscooperusersavatarvisible: this.json.iscooperusersavatarvisible //是否显示协作用户头像
},
// 通用选项,所有类型文档适用
commonoptions: {
isshowtoparea: this.json.isshowtoparea, // 隐藏顶部区域(头部和工具栏)
isshowheader: this.json.isshowheader, // 隐藏头部区域
isbrowserviewfullscreen : this.json.isbrowserviewfullscreen,//是否在浏览器区域全屏
isiframeviewfullscreen : this.json.isiframeviewfullscreen//是否在iframe区域内全屏
},
wordoptions : {
isshowdocmap : this.json.isshowdocmap,//是否开启目录功能,默认开启
isbestscale : this.json.isbestscale,//打开文档时,默认以最佳比例显示(适用于pc)
isshowbottomstatusbar : this.json.isshowbottomstatusbar,//pc-是否展示底部状态栏
"mobile.isopenintoedit" : this.json.isopenintoedit//mobile-要有编辑权限,移动端打开时是否进入编辑
},
commandbars: [
{
cmbid: "headerleft",
attributes: {
visible: this.json.headerleft,
enable: this.json.headerleft
}
},
{
cmbid: "headerright",
attributes: {
visible: this.json.headerright,
enable: this.json.headerright
}
},
{
cmbid: "floatquickhelp",
attributes: {
visible: this.json.floatquickhelp,
enable: this.json.floatquickhelp
}
},
{
cmbid: "historyversion",
attributes: {
visible: this.json.historyversion,
enable: this.json.historyversion
}
},
{
cmbid: "historyrecord",
attributes: {
visible: this.json.historyrecord,
enable: this.json.historyrecord
}
},
{
cmbid: "historyversiondivider",
attributes: {
visible: this.json.historyversiondivider,
enable: this.json.historyversiondivider
}
},
{
cmbid: "logo",
attributes: {
visible: this.json.logo,
enable: this.json.logo
}
},
{
cmbid: "cooperation",
attributes: {
visible: this.json.cooperation,
enable: this.json.cooperation
}
},
{
cmbid: "more",
attributes: {
visible: this.json.more,
enable: this.json.more
}
},
{
cmbid: "sendbutton",
attributes: {
visible: this.json.sendbutton,
enable: this.json.sendbutton
}
},
{
cmbid: "cooperhistorymenuitem",
attributes: {
visible: this.json.cooperhistorymenuitem,
enable: this.json.cooperhistorymenuitem
}
},
{
cmbid: "tabprintpreview",
attributes: {
visible: this.json.tabprintpreview,
enable: this.json.tabprintpreview
}
},
{
cmbid: "menuprintpreview",
attributes: {
visible: this.json.menuprintpreview,
enable: this.json.menuprintpreview
}
},
{
cmbid: "reviewtrackchanges",
attributes: {
visible: this.json.reviewtrackchanges,
enable: this.json.reviewtrackchanges
}
},
{
cmbid: "trackchanges",
attributes: {
visible: this.json.trackchanges,
enable: this.json.trackchanges
}
},
{
cmbid: "contextmenuconvene",
attributes: {
visible: this.json.contextmenuconvene,
enable: this.json.contextmenuconvene
}
},
{
cmbid: "writerhovertoolbars",
attributes: {
visible: this.json.writerhovertoolbars,
enable: this.json.writerhovertoolbars
}
},
{
cmbid: "readsetting",
attributes: {
visible: this.json.readsetting,
enable: this.json.readsetting
}
}
]
};
if(this.version === "wpsweboffice"){
config.officetype = webofficesdk.officetype[this.officetype[this.extension.tolowercase()]];
config.appid = this.appid;
config.fileid = this.documentid.replace(/-/g, "_");
config.token = layout.session.token;
config.customargs = {
"apptoken" : this.apptoken,
"mode" : this.mode
};
this.wpsoffice = webofficesdk.init(config);
}else {
this.action.customaction.getwpsfile{
this.wpsurl = json.data.wpsurl;
config.url = this.wpsurl;
}.bind(this),null,false);
// console.log(this.wpsurl)
this.wpsoffice = webofficesdk.config(config);
this.wpsoffice.settoken({
token: layout.session.token,
timeout: 100 * 60 * 1000 // token超时时间, 可配合refreshtoken配置函数使用,当超时前将调用refreshtoken
});
}
this.wpsoffice.on('fileopen', function(result) {
this.fireevent("afteropen");
}.bind(this));
this.wpsoffice.on('filestatus', function(result) {
if(result.status === 7){
this.fireevent("aftersave");
}
}.bind(this));
this.wpsoffice.on('fullscreenchange', function(result) {
console.log(json.stringify(result))
});
this.wpsoffice.on('previewlimit', function(result) {
console.log(json.stringify(result))
});
this.wpsoffice.on('tabswitch', function(result) {
console.log(json.stringify(result))
});
this.wpsoffice.on('error', function(result) {
console.log(json.stringify(result))
});
//是否显示评论
if(this.json.isshowcomment){
this.showcomments();
}else {
this.hidecomments();
}
},
hide: function(){
this.node.hide();
},
show: function(){
this.node.show();
},
isempty : function(){
var data = this.getdata();
if(data.documentid === ""){
return true;
}else {
return false;
}
},
getdata: function(){
var data = {
"documentid" : ""
};
if(this.form.businessdata.data[this.json.id]){
data.documentid = this.form.businessdata.data[this.json.id].documentid;
}
return data;
},
setdata: function() {
var data = {
"documentid": this.documentid,
"apptoken": this.apptoken
}
this.data = data;
this._setbusinessdata(data);
var jsondata = {}
jsondata[this.json.id] = data;
o2.actions.load(this.apptoken).dataaction.updatewithjob(this.form.businessdata.work.job, jsondata, function (json) {
data = json.data;
})
},
/**
* @summary 保存wps
* @example
* this.form.get("fieldid").save(callback)
*/
save: function(callback){
var promise = this.wpsoffice.save();
promise.then(function(){
console.log("save success");
if(callback) callback();
});
},
/**
* @summary 发送全局广播
* @example
* this.form.get("fieldid").sendbroadcast("测试")
*/
sendbroadcast : async function (text){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
const public = await app.public;
const result = await public.sendbroadcast({
data: { message: text }
});
},
/**
* @summary 获取word页面总数,
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").gettotalpage()
*/
gettotalpage : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
const totalpages = await app.activedocument.range.information(app.enum.wdinformation.wdnumberofpagesindocument);
console.log(totalpages)
return totalpages;
},
/**
* @summary 获取当前页
* @example
* this.form.get("fieldid").getcurrentpage()
*/
getcurrentpage: async function (){
// 获取当前页数
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
const currentpage = await app.activedocument.activewindow.selection.information(
app.enum.wdinformation.wdactiveendpagenumber
)
console.log(currentpage)
return currentpage;
},
/**
* @summary 跳转到指定页
* @example
* this.form.get("fieldid").gotopage(page)
*/
gotopage : async function (page){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
await app.activedocument.selection.goto({
what: app.enum.wdgotoitem.wdgotopage,
which: app.enum.wdgotodirection.wdgotoabsolute,
count: page
});
},
/**
* @summary 获取所有书签
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").getallbookmark()
*/
getallbookmark : async function (callback){
this.wpsoffice.ready();
const app = this.wpsoffice.application;
const bookmarks = await app.activedocument.bookmarks.json();
return bookmarks;
},
/**
* @summary 获取书签值
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").getbookmarktext()
*/
getbookmarktext : async function (name) {
this.wpsoffice.ready();
const app = this.wpsoffice.application;
const text = await app.activedocument.getbookmarktext(name);
return text;
},
/**
* @summary 跳转到书签
* @example
* this.form.get("fieldid").gotobookmark()
*/
gotobookmark : async function (name){
this.wpsoffice.ready();
const app = this.wpsoffice.application;
await app.activedocument.selection.goto({
what: app.enum.wdgotoitem.wdgotobookmark,
which: app.enum.wdgotodirection.wdgotoabsolute,
name: name
});
},
/**
* @summary 给书签赋值
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").setbookmarktext(name,value)
*/
setbookmarktext : async function (name,value){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
// 书签对象
const bookmarks = await app.activedocument.bookmarks;
// 替换书签内容
const isreplacesuccess = await bookmarks.replacebookmark([
{
name: name,
type: 'text',
value: value
}
])
return isreplacesuccess;
},
/**
* @summary 盖章
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").setseal(bookmark,img,left,top,width,height)
*/
setseal : async function (bookmark,img,left,top,width,height){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
//获取当前选区
const selection = await app.activedocument.activewindow.selection;
// 跳转到指定的书签
await app.activedocument.activewindow.selection.goto(
app.enum.wdgotoitem.wdgotobookmark, // 类型:bookmark
app.enum.wdgotodirection.wdgotoabsolute, // 定位
1, // 数量
bookmark, // 书签名
);
// 获取图形对象
const shapes = await app.activedocument.shapes;
// 光标插入非嵌入式图片
const shape = await shapes.addpicture({
filename: img, // 图片地址
linktofile: true,
savewithdocument: true,
left: left, // 图片距离左边位置
top: top, // 图片距离顶部位置
width: width, // 图片宽度
height: height, // 图片高度
});
// 设置文字环绕模式为【衬于文字下方】
shape.zorder(app.enum.zordercmd.sendbehindtext);
},
/**
* @summary 查找替换
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").replacetext(key,value)
*/
replacetext : async function (key,value,options){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
const isreplacesuccess = app.activedocument.replacetext([{key: key, value: value}])
return isreplacesuccess;
},
/**
* @summary 开启修订模式
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").startrevisions()
*/
startrevisions : function (){
this.wpsoffice.ready().then(function(){
const app = this.wpsoffice.application;
// 将当前文档的编辑状态切换成修订模式
app.activedocument.trackrevisions = true;
}.bind(this));
},
/**
* @summary 关闭修订模式
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").stoprevisions()
*/
stoprevisions : function (){
//关闭修订模式
this.wpsoffice.ready().then(function(){
const app = this.wpsoffice.application;
// 将当前文档的编辑状态切换成修订模式
app.activedocument.trackrevisions = false;
}.bind(this));
},
/**
* @summary 接受所有修订
* @example
* this.form.get("fieldid").acceptallrevisions()
*/
acceptallrevisions : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
// 获取修订对象
const revisions = await app.activedocument.revisions;
// 接受对指定文档的所有修订
await revisions.acceptall();
},
/**
* @summary 拒绝所有修订
* @example
* this.form.get("fieldid").rejectallrevisions()
*/
rejectallrevisions : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
// 获取修订对象
const revisions = await app.activedocument.revisions;
// 拒绝对指定文档的所有修订
await revisions.rejectall();
},
/**
* @summary 显示痕迹
* @example
* this.form.get("fieldid").showrevisions()
*/
showrevisions : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
// 获取节对象
const view = await app.activedocument.activewindow.view;
view.revisionsview = 0;
// 设置修订状态为 显示标记的最终状态
view.showrevisionsandcomments = true;
},
/**
* @summary 隐藏痕迹
* @example
* this.form.get("fieldid").hiderevisions()
*/
hiderevisions : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
// 获取节对象
const view = await app.activedocument.activewindow.view;
view.revisionsview = 0;
// 设置修订状态为 显示标记的最终状态
view.showrevisionsandcomments = false;
},
/**
* @summary 打印
* @example
* this.form.get("fieldid").print()
*/
print : function (){
this.wpsoffice.ready().then(function(){
const app = this.wpsoffice.application;
// 页面定制对象:更多菜单
app.commandbars('tabprintpreview').then(function(printmenu){
printmenu.execute();
});
}.bind(this));
},
/**
* @summary 导出pdf
* @example
* this.form.get("fieldid").exportpdf()
*/
exportpdf : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
var pdfurl;
switch (this.json.officetype){
case "docx":
pdfurl = await app.activedocument.exportasfixedformat();
break;
case "xlsx":
pdfurl = await app.activeworkbook.exportasfixedformat()
break;
case "pptx":
pdfurl = await app.activepresentation.exportasfixedformat()
}
window.open(pdfurl.url);
},
/**
* @summary 获取文档权限信息
* @example
* this.form.get("fieldid").getoperatorsinfo()
*/
getoperatorsinfo : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
var operatorsinfo ;
switch (this.json.officetype){
case "docx":
operatorsinfo = await app.activedocument.getoperatorsinfo();
break;
case "xlsx":
operatorsinfo = await app.activeworkbook.getoperatorsinfo();
break;
case "pptx":
operatorsinfo = await app.activepresentation.getoperatorsinfo();
}
return operatorsinfo;
},
/**
* @summary 获取内容控件个数
* @return 返回是个promise对象
* @example
* this.form.get("fieldid").getcontentcontrolscount()
*/
getcontentcontrolscount : async function (){
//获取内容控件
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
// 内容控件对象
const contentcontrols = await app.activedocument.contentcontrols;
// 内容控件数量
const count = await contentcontrols.count;
return count;
},
/**
* @summary 获取内容控件文本
* @example
* this.form.get("fieldid").getcontentcontroltext()
*/
getcontentcontroltext : async function (pos){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
const contentcontrols = await app.activedocument.contentcontrols;
const contentcontrol = await contentcontrols.item(pos);
const range = await contentcontrol.range;
const text = range.text;
return text
// range.text = 'weboffice'
},
/**
* @summary 设置内容控件文本
* @example
* this.form.get("fieldid").setcontentcontroltext()
*/
setcontentcontroltext : async function (pos,text){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
const contentcontrols = await app.activedocument.contentcontrols;
const contentcontrol = await contentcontrols.item(pos);
const range = await contentcontrol.range;
range.text = text;
},
/**
* @summary 获取文档缩放
* @example
* this.form.get("fieldid").getzoom()
*/
getzoom : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
var zoom;
switch (this.json.officetype){
case "docx":
zoom = await app.activedocument.activewindow.view.zoom.percentage
break;
case "xlsx":
zoom = await app.activeworkbook.activesheetview.zoom
break;
case "pptx":
zoom = await app.activepresentation.view.zoom
}
return zoom;
},
/**
* @summary 设置文档缩放
* @example
* this.form.get("fieldid").setzoom()
*/
setzoom : async function (zoom){
//缩放属性值在50%到 300%之间。
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
switch (this.json.officetype){
case "docx":
app.activedocument.activewindow.view.zoom.percentage = zoom;
break;
case "xlsx":
app.activeworkbook.activesheetview.zoom = zoom;
break;
case "pptx":
app.activepresentation.view.zoom = zoom;
}
},
/**
* @summary 是否有评论
* @example
* this.form.get("fieldid").hascomments()
*/
hascomments : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
var hascomments;
switch (this.json.officetype){
case "docx":
hascomments = await app.activedocument.hascomments();
break;
case "xlsx":
hascomments = await app.activeworkbook.hascomments();
break;
case "pptx":
hascomments = await app.activepresentation.hascomments();
}
return hascomments;
},
/**
* @summary 显示评论
* @example
* this.form.get("fieldid").showcomments()
*/
showcomments : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
app.activedocument.activewindow.view.showcomments = true;
},
/**
* @summary 隐藏评论
* @example
* this.form.get("fieldid").hidecomments()
*/
hidecomments : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
app.activedocument.activewindow.view.showcomments = false;
},
/**
* @summary 获取所有评论
* @example
* this.form.get("fieldid").hidecomments()
*/
getcomments : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
const operatorsinfo = await app.activedocument.getcomments({ offset: 0, limit: 2000 });
return operatorsinfo;
},
/**
* @summary 页面模式
* @example
* this.form.get("fieldid").showpagemode()
*/
showpagemode : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
app.activedocument.switchtypomode(false);
},
/**
* @summary 连页模式
* @example
* this.form.get("fieldid").showpagemode()
*/
showunionpagemode : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
app.activedocument.switchtypomode(true);
},
/**
* @summary 显示连页模式下的文件名
* @example
* this.form.get("fieldid").showfilename()
*/
showfilename : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
await app.activedocument.switchtypomode(true);
await app.activedocument.switchfilename(true);
},
/**
* @summary 隐藏连页模式下的文件名
* @example
* this.form.get("fieldid").hidefilename()
*/
hidefilename : async function (){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
await app.activedocument.switchtypomode(true);
await app.activedocument.switchfilename(false);
},
/**
* @summary 显示导航目录
* @example
* this.form.get("fieldid").showdocumentmap()
*/
showdocumentmap : async function (callback){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
await app.activedocument.switchtypomode(true);
app.activedocument.activewindow.documentmap = true;
},
/**
* @summary 隐藏导航目录
* @example
* this.form.get("fieldid").hidedocumentmap()
*/
hidedocumentmap : async function (callback){
await this.wpsoffice.ready();
const app = this.wpsoffice.application;
await app.activedocument.switchtypomode(true);
app.activedocument.activewindow.documentmap = false;
},
});
source