js操作word

1、 向word中写入设置书签,如书签名为bookmark,javascript中可以这样写
var word;
word = new ActiveXObject("Word.Application");
var range = word.Range;
word.Visible = true;
var path = "filepath";
word.Documents.Open(path);
range = word.ActiveDocument.Bookmarks("bookmark").Range;

range.InsertBefore("哈哈哈哈哈哈");


//横向打印设置部分
word.PageSetup.LineNumbering.Active = false;
word.PageSetup.Orientation. wdOrientLandscape =  1; //设置为横向打印
word.PageSetup.TopMargin =  word.Application.CentimetersToPoints(3.17);
word.PageSetup.BottomMargin =  word.Application.CentimetersToPoints(3.17);
word.PageSetup.LeftMargin = word.Application.CentimetersToPoints(2.54);
word.PageSetup.RightMargin = word.Application.CentimetersToPoints(2.54);
word.PageSetup.Gutter = word.Application.CentimetersToPoints(0);
word.PageSetup.HeaderDistance = word.Application.CentimetersToPoints(1.5);
word.PageSetup.FooterDistance = word.Application.CentimetersToPoints(1.75);
word.PageSetup.PageWidth = word.Application.CentimetersToPoints(29.7);
word.PageSetup.PageHeight = word.Application.CentimetersToPoints(21);
word.PageSetup.FirstPageTray =  0;
word.PageSetup.OtherPagesTray = 0;
word.PageSetup.SectionStart =  2;
word.PageSetup.OddAndEvenPagesHeaderFooter = false;
word.PageSetup.DifferentFirstPageHeaderFooter = false;
word.PageSetup.VerticalAlignment = 0;
word.PageSetup.SuppressEndnotes = false;
word.PageSetup.MirrorMargins = false;
word.PageSetup.TwoPagesOnOne = false;
word.PageSetup.BookFoldPrinting = false;
word.PageSetup.BookFoldRevPrinting = false;
word.PageSetup.BookFoldPrintingSheets = 1
word.PageSetup.GutterPos = 0;
word.PageSetup.LayoutMode = 2;

wordObj.ActiveWindow.ActivePane.View.Type=3;//设置浏览模式:1--为普通视图,2---大纲视图,3--页面视图, 4---web视图预览模式,5---大纲视图,6---web视图,7---阅读板式
wordObj.Application.close;


function printWordS(cert_no) {
var param = new Array({value:cert_no, type:TYPE.STRING});
var row = executeSQL("select distinct v.cert_no,v.dept_name,v.authorize_org_name,v.authorize_man_name,v.authorize_date,v.item_name,v.memo,q.duty" +
" from qm_authorize_list v, QM_SIGN_INFO q " +
"where v.authorize_man_id = q.employee_id and v.cert_no = ?", param);
var pns = executeSQL("select q.name,q.license_no,q.specialize,q.item_name,q.limit_date,q.memo from QM_AUTHORIZE_LIST q where q.cert_no=?", param);
var word = null;
var doc = null;
var nodes = pns.childNodes; try {
word = new ActiveXObject("Word.Application");
word.Visible = false;
//word路径
var path = location.protocol + "//" + location.host + window.baseUrl + "/qm/qmauthorizeprint/pmoban.docx";
var picPath= location.protocol + "//" + location.host + window.baseUrl + "/qm/qmauthorizeprint/name.jpg";
doc = word.Documents.Open(path);
//获取word中的表格
var tb2 = doc.Tables.Item(1);
var rows = tb2.Rows;
var cols = tb2.Columns;
var colCount = cols.Count;
var len = nodes.length; //外部循环,行循环
for (var i = 0; i < len; i++) {
var range = tb2.Cell(i + 2, 1).Range;
range.ParagraphFormat.Alignment = 1;
range.InsertAfter((i + 1));
if (i < len - 1)
rows.Add();
//内部循环,列循环
for (var j = 0; j < colCount - 1; j++) {
var cell = tb2.Cell(i + 2, j + 2);
range = cell.Range;
//赋值过程i行j列
range.InsertAfter(nodes[i].childNodes[j].text);
}
}
//定义书签
var bookmarks = doc.Bookmarks;
var count = bookmarks.count;
for (var i = 1; i <= count; i++) {
var bookmark = bookmarks.Item(i);
var range1 = bookmark.Range;
//获得书签名称name
var name = bookmark.name;
//获取XML节点名为name的对象
var obj = row.selectSingleNode(".//" + name);
if (obj != null) {
//书签赋值过程
range1.Text = obj.text;
bookmarks.Add(name, range1);
}
} //插入图片
var Selection = word.Selection;
Selection.Find.Replacement.Text ="CERT_NO";
Selection.Find.Forward = true;
Selection.Find.Wrap = 1;
Selection.Find.Format = false;
Selection.Find.MatchCase = false;
Selection.Find.MatchWholeWord = false;
Selection.Find.MatchByte = true;
Selection.Find.MatchWildcards = false;
Selection.Find.MatchSoundsLike = false;
Selection.Find.MatchAllWordForms = false;
Selection.Find.ClearFormatting();
Selection.TypeParagraph();
Selection.InlineShapes.AddPicture(url,false,true);
Selection.ParagraphFormat.Alignment =1;
Selection.TypeParagraph(); Selection.TypeText("TEST");
// }
//设置可见
word.Visible = true;
} catch (e) {
if (doc != null) doc.Close();
if (word != null) word.Quit();
alert(e.description);
return;
}
}

http://ethan163.iteye.com/blog/1226835
http://www.jb51.net/article/10341.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值