怎么给PDF文件加书签.docx
- 文档编号:17446091
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:11
- 大小:81.17KB
怎么给PDF文件加书签.docx
《怎么给PDF文件加书签.docx》由会员分享,可在线阅读,更多相关《怎么给PDF文件加书签.docx(11页珍藏版)》请在冰豆网上搜索。
怎么给PDF文件加书签
最近经常看一些PDF的电子文档,痛苦的是AdobeReader竟然没有提供书签的功能,每次看完之后再回到上次看的地方都很麻,到网上一找,还真有人就做了PDF的书签,下载一试效果不错,于是参看了一下AdobeReader的SDK,修改了一点地方,防止了乱码,以更方便的使用,下面是程序的使用方法
1、打开编辑的首选项项
2、确保下面的选项都被选中
3把下面的代码保存为一个bookmark_page.js文件
varbp_delim='%#%#';
functionSaveData(data)
{
//dataisanarrayofarraysthatneeds
//tobeserializedandstoredintoapersistent
//globalstring
vards='';
data.sort();
for(ii=0;ii { for(jj=0;jj<3;++jj) { if(ii! =0||jj! =0) ds+=bp_delim; ds+=data[ii][jj]; } } global.pdf_hacks_js_bookmarks=ds; global.setPersistent("pdf_hacks_js_bookmarks",true); } functionGetData() { //reverseofSaveData;returnanarrayofarrays if(global.pdf_hacks_js_bookmarks==null) { returnnewArray(0); } varflat=global.pdf_hacks_js_bookmarks.split(bp_delim); vardata=newArray(); for(ii=0;ii { varrecord=newArray(); for(jj=0;jj<3&&ii { record.push(flat[ii]); } if(record.length==3) { data.push(record); } } returndata; } //GetCurrentDate functionDateNow() { vard,tmp,s; d=newDate(); t=d.getFullYear(); s=t+"/"; t=(d.getMonth()+1).toString(); if(t.length! =2)t="0"+t; s+=t+"/"; t=(d.getDate()).toString(); if(t.length! =2)t="0"+t; s+=t; return(s); } functionAddBookmark() { //querytheuserforaname,andthencombineitwith //thecurrentPDFpagetocreatearecord;storethisrecord varthisfilename=this.documentFileName; thisfilename=thisfilename.substr(0,thisfilename.lastIndexOf(".")); varnumLen=this.numPages.toString().length; varnumPlugInss=this.pageNum+1; while(numPlugInss.toString().length { numPlugInss="0"+numPlugInss; } varcurrentdate=DateNow(); varlabel="《"+thisfilename+"》第"+numPlugInss+"页/共"+this.numPages+"页"+currentdate; varcResponse=app.response( { cQuestion: label, cTitle: "添加书签", cDefault: "无备注", cLabel: "备注: " }); if(cResponse! =null) { varrecord=newArray(3); record[0]=label+""+cResponse; record[1]=this.path; record[2]=this.pageNum; data=GetData(); data.push(record); SaveData(data); } } functionShowBookmarks() { //showapop-upmenu;thisseemstoonlyworkwhen //aPDFisalreayintheviewer; vardata=GetData(); varitems=''; for(ii=0;ii { if(ii! =0) items+=','; items+='"'+ii+': '+data[ii][0]+'"'; } //assemblethecommandandtheexecuteitwitheval() varcommand='app.popUpMenu('+items+');'; varselection=eval(command); if(selection==null) { return;//exit } //theusermadeaselection;parseoutitsindexanduseit //toaccessthebookmarkrecord varindex=0; //toString()convertstheStringobjecttoastringliteral //eval()convertsthestringliteraltoanumber index=eval(selection.substring(0,selection.indexOf(': ')).toString()); if(index { try { //thedocumentmustbe'disclosed'forustohaveanyaccess //toitsproperties,soweusetheseFirstPageNextPagecalls // if(this.path==data[index][1]) { this.pageNum=data[index][2]; } else { varotherDoc=app.openDoc(data[index][1]); otherDoc.pageNum=data[index][2]; } } catch(ee) { varresponse= app.alert("打开书签错误.是否删除本书签? ",2,2,"删除书签"); if(response==4&&index { data.splice(index,1); SaveData(data); } } } } functionDropBookmark() { //modelledafterShowBookmarks() vardata=GetData(); varitems=''; for(ii=0;ii { if(ii! =0) items+=','; items+='"'+ii+': '+data[ii][0]+'"'; } varcommand='app.popUpMenu('+items+');'; varselection=eval(command); if(selection==null) { return;//exit } varindex=0; index=eval(selection.substring(0,selection.indexOf(': ')).toString()); if(index { data.splice(index,1); SaveData(data); } } functionClearBookmarks() { if(app.alert("确认要清除所有的书签吗,删除后将不可恢复? ",2,2,"删除书签")==4) { SaveData(newArray(0)); } } app.addMenuItem( { cName: "-",//menudivider cParent: "View",//appendtotheViewmenu cExec: "void(0);" }); app.addMenuItem( { cName: "AddBookmark", cUser: "设置本页为书签(&B)", cParent: "View", cExec: "AddBookmark();", cEnable: "event.rc=(event.target! =null);" }); app.addMenuItem( { cName: "ShowBookmarks", cUser: "转到指定书签(&T)", cParent: "View", cExec: "ShowBookmarks();", cEnable: "event.rc=(event.target! =null);" }); app.addMenuItem( { cName: "DropBookmark", cUser: "删除一个书签(&D)", cParent: "View", cExec: "DropBookmark();", cEnable: "event.rc=(event.target! =null);" }); app.addMenuItem( { cName: "ClearBookmarks", cUser: "删除所有书签(&C)", cParent: "View", cExec: "ClearBookmarks();", cEnable: "event.rc=true;" }); 4将文件拷贝到C: \ProgramFiles(x86)\Adobe\Reader10.0\Reader\Javascripts目录下 5重新打开AdobeReader,看看下面的视图,相信不用说任何东西,大家都会用了
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 怎么 PDF 文件 书签