需求:自定PDF目录(目录与文章标题不一至,无法直接用标题生成)。
方案:创建标签,再转PDF。(用标签生成目录)
用一个2维数组,定义标签名字与页码。
标签文字中有一些限制,需要处理一下。
var m = [
["一、AAAAAAAAA",4],
["1. A111111111111111",4],
["2. A222222222222222",5],
["3. A333333333333333",6],
["二、BBBBB+BBBBBB",7],
["B222222222222222222",7],
["三、CCCC CCCCCCCCCCCC",12],
["C3333333333333333",12],
["四、DDDDDDDDDDDDDDD",13],
["D44444444444444",13]
];
function 创建书签() //#
{
m.forEach(v => {
var markName = v[0].replace(/(\d+)/, "#$1").replace(/\./g, "_").replace(/\+/g, "+").replace(/(\s)/g, "_");
var pageNum = v[1]+2;
Console.log(`${markName}---${pageNum}`);
Selection.GoTo(wdGoToPage, wdGoToNext, 0, pageNum);
(obj=>{
obj.ShowHidden = true;
obj.Add(markName, Selection.Range);
obj.DefaultSorting = wdSortByLocation;
obj.ShowHidden = false;
})(ActiveDocument.Bookmarks);
});
}
如果PDF直接支持生成目录就好了。