
```
var requestHost = this.request.getRequestURL().toString().split("x_program_center")[0];
var docbuilderUrl = "http://onlyofficeenterprise.o2oa.net/docbuilder"; //这里填写的onlyoffice 的docbuilder地址
var templeteUrl = requestHost + "demo.docx"; //这里是模板的位置
var docbuilderFile = requestHost + "onlyoffice_builder/tmp.docbuilder";
var code = `
builder.OpenFile("`+templeteUrl+`");
// 获取文档对象
var oDocument = Api.GetDocument();
let section = oDocument.GetFinalSection();
let header = section.GetHeader("default", true);
paragraph = header.GetElement(0);
paragraph.AddText("This is a page header");
let image = Api.CreateImage("https://static.onlyoffice.com/assets/docs/samples/img/onlyoffice_logo.png", 50 * 36000, 50 * 36000);
paragraph.AddDrawing(image);
// 保存文件
builder.SaveFile("docx", "document_with_image.docx");
builder.CloseFile();
`;
var action = this.Actions.load("x_onlyofficefile_assemble_control");
action.OnlyofficeAction.createDocbuilder("tmp",{
"htmlContent" : code
},function( json ){
}.bind(this)
);
this.getToken = function(json){
var token;
var data = {
"tokenText" : JSON.stringify(json)
}
var action = this.Actions.load("x_onlyofficefile_assemble_control");
action.OnlyofficeAction.token(data,function( json ){
token = json.data.value;
}.bind(this));
return token;
}
var NameValuePair = Java.type('com.x.base.core.project.bean.NameValuePair');
var ArrayList = Java.type('java.util.ArrayList');
var HttpConnection = Java.type("com.x.base.core.project.connection.HttpConnection");
var heads = new ArrayList();
var p1 = new NameValuePair('Content-Type', 'application/json; charset=utf-8');
heads.add(p1);
var p2 = new NameValuePair('Accept', 'application/json');
heads.add(p2);
var params = {
"async": false,
"url" : docbuilderFile,
}
params.token = this.getToken(params);
var docContent =JSON.stringify(params);
var resp = HttpConnection.postAsString(docbuilderUrl, heads ,docContent);
var respObj = JSON.parse(resp);
return respObj;
```
评论