PDF文件水印研究_第1頁(yè)
PDF文件水印研究_第2頁(yè)
PDF文件水印研究_第3頁(yè)
PDF文件水印研究_第4頁(yè)
PDF文件水印研究_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

PDF文件水印爭(zhēng)論簡(jiǎn)介Powerpoint軟件時(shí),在幻word文檔中,可以使用水印顯示公LOGO、機(jī)密文檔等等。在使用圖片等作為水印時(shí),可以使用淡化透亮等屬性設(shè)置,以免影響文檔文本的顯示。水印內(nèi)容水印對(duì)象可以分成兩類:文本或者文件。文本類型水印對(duì)象,可以包括以下的屬性:文字字體、字形、文字大小、文字顏色、文字旋轉(zhuǎn)角度文字透亮度文字起始位置文件類型水印對(duì)象,可以包括以下的屬性:文件保存路徑、文件類型、引用頁(yè)碼頁(yè)面顯示比例顯示起始位置通用頁(yè)面設(shè)置范圍,表示是否將水印應(yīng)用到文件全部頁(yè)面,頁(yè)面設(shè)置有以下不同的選項(xiàng):全部頁(yè)面,將水印添加到文件的全部頁(yè)面;X-X,將水印對(duì)象添加到文件的局部連續(xù)頁(yè)面,包含起始頁(yè)和末尾頁(yè);子集,包括奇數(shù)頁(yè)或者偶數(shù)頁(yè)。業(yè)務(wù)需求PDFPDF文件的頁(yè)面某個(gè)指定位置添加指定的文字或者圖片,實(shí)際打印出指定的文本或者圖片。水印內(nèi)容可以LOGO圖標(biāo)、文件打印時(shí)間、文件名稱、打印人員名稱等。水印文字或者圖案的定義可以由用戶進(jìn)展設(shè)置,包括了文字內(nèi)容、大小、顏色、旋轉(zhuǎn)角度、消滅位置等信息,圖案文件來(lái)源位置、旋轉(zhuǎn)角度、顯示位置信息等,配置信息可以保存在某個(gè)配置文件中,也可以承受多個(gè)模板的方式在一個(gè)配置文件中配置定義,使用模板名稱的方式進(jìn)展調(diào)用。水印內(nèi)容配置信息構(gòu)造水印內(nèi)容包括兩種類型:文本水印、圖案文件水印。文本水印構(gòu)造文本水印構(gòu)造,包括了以下的內(nèi)容:文本水印標(biāo)記符,字符串類型,用于區(qū)分同一個(gè)水印模板中的不同文本水印對(duì)象,便于記憶,可以用固定的格式表示,如:txtWatermark01…文本內(nèi)容,需要添加或者打印的文本字符串內(nèi)容,文本的內(nèi)容可以是固定的字符串,也可以是變量,變量可以使用$XXX$XXX表示具體的變量名稱,比方:ByTimeByUser,ByDept等,分別表示當(dāng)前時(shí)間、當(dāng)前用戶名稱、當(dāng)前部門(mén)等,這里的變量在實(shí)際使用時(shí),依據(jù)具體的系統(tǒng)環(huán)境獲得不同的實(shí)際文本內(nèi)容。文本字體,文本顯示字體類型名稱。文本字體大小,整數(shù)型數(shù)值,表示顯示或者打印的字體的大小,影響顯示或打印的文本效果。文本旋轉(zhuǎn)角度,整數(shù)類型數(shù)值,表示文本的不同旋轉(zhuǎn)方向,正數(shù)表示逆時(shí)針旋轉(zhuǎn),負(fù)數(shù)表示順時(shí)針旋轉(zhuǎn)。文本顯示透亮程度,0-1float型數(shù)值,表示透亮程度的百分比,0表示透亮不顯示,1表示完全掩蓋背后頁(yè)面內(nèi)容。文本起始位置x坐標(biāo),文本起始位置的左上角x坐標(biāo),正整數(shù)數(shù)值,留意不能大于當(dāng)前頁(yè)面的紙張介質(zhì)最大寬度數(shù)值。文本起始位置y坐標(biāo),文本起始位置的左上角y坐標(biāo),正整數(shù)數(shù)值,留意不能大于當(dāng)前頁(yè)面的紙張介質(zhì)的最大高度數(shù)值。圖案文件水印構(gòu)造圖案文件水印包括以下的屬性:圖案文件水印標(biāo)記符,字符串類型,用于區(qū)分同一個(gè)水印模板配置中的不同圖picWatermark01…類似的字符串格式表示。圖案文件保存路徑,字符串類型,數(shù)值為圖片文件的實(shí)際文件確定保存路徑。圖案旋轉(zhuǎn)角度,整數(shù)類型數(shù)值,正數(shù)表示逆時(shí)針旋轉(zhuǎn)圖片,負(fù)數(shù)表示順時(shí)針旋轉(zhuǎn)。圖案透亮程度,0-1float型浮點(diǎn)數(shù),0表示完全透亮,1表示完全掩蓋。通用頁(yè)碼設(shè)置PDF文件的全部頁(yè)面相對(duì)位置上設(shè)置水??;PDF文件的某個(gè)連續(xù)頁(yè)面上添加水印對(duì)象,連續(xù)頁(yè)面用形如X-YX/Y正整數(shù),表示起始/終止頁(yè)碼;PDF文件指定范圍的奇數(shù)頁(yè)碼上添加水印對(duì)象;PDF文件指定范圍的偶數(shù)頁(yè)碼上添加水印對(duì)象。功能需求描述在PDFPDF文件時(shí)依據(jù)文件原樣進(jìn)展打印的。PDFLOGO、文件狀態(tài)文字或者圖標(biāo)。這些文本文字或者圖標(biāo)PDF文件上是不存在的,需要在打印處理過(guò)程中由程序自動(dòng)依據(jù)需要添加上去,然后送到打印機(jī)進(jìn)展實(shí)際打印。打印時(shí)間、打印申請(qǐng)人或者公司部門(mén)信息、公司Logo、文件狀態(tài)文字或者圖標(biāo)等對(duì)PDF一個(gè)指定的配置對(duì)象文件中,配置對(duì)象文件使用XML格式保存。水印相關(guān)的操作需要實(shí)現(xiàn)以下的相關(guān)操作功能:建水印配置對(duì)象文件;水印信息配置對(duì)象編輯器界面,用于顯示相關(guān)屬性信息翻開(kāi)水印配置對(duì)象文件,獲得全部已定義的水印對(duì)象及其相關(guān)屬性;修改水印對(duì)象,及其相關(guān)屬性數(shù)據(jù)信息,保存修改;刪除選定的水印配置對(duì)象,保存修改信息;PDF文件要求,選擇水印配置,選擇水印對(duì)象編輯器;PDF文件處理打印之前,讀取文件,獵取并計(jì)算水印配置信息,添加合并到打PDF文件。建水印配置文件WatermarkCfg.xmlXML文件格式。水印配置文件的構(gòu)造如以以下圖所示:WatermarksWatermarks<<bind>>文本水印-名稱-文本內(nèi)容-字體-字號(hào)-顏色-旋轉(zhuǎn)-透亮度-位置<<bind>>圖片水印-名稱-圖片路徑-圖片比例-旋轉(zhuǎn)-透亮度-位置水印配置文件構(gòu)造示意圖WatermarkCfg.xml的簡(jiǎn)潔構(gòu)造示意圖:watermarkswatermark子節(jié)點(diǎn);watermarkname表示;watermark子節(jié)點(diǎn),依據(jù)其類型來(lái)區(qū)分文本水印、圖片水印,類type表示,不同類型的水印包含不同的屬性字段和屬性數(shù)據(jù);屬性名稱Fontname屬性名稱FontnameFontsizeContent屬性數(shù)值宋體8Sipm說(shuō)明字體名稱字體大小如$ByDate$表示當(dāng)前時(shí)Rotate0戶文字旋轉(zhuǎn)角度ColorXXXXXX文字顏色設(shè)置PosX200起始位置x確定坐標(biāo)PosY100起始位置y確定坐標(biāo)horFromLeft/right/centerx坐標(biāo)承受相對(duì)位/右邊界/中心開(kāi)頭計(jì)算hOffset100水平偏移量,單位象素verFromtop/bottom/centery坐標(biāo)承受相對(duì)位/底邊界/中心開(kāi)頭計(jì)算vOffset100垂直偏移量,單位象素Opacity0.50透亮度RangeAll/2-3應(yīng)用頁(yè)碼范圍圖片水印對(duì)象,包括以下的屬性字段:LocationScaleRotatePosXPosYhorFromhOffsetverFromvOffsetOpacityRange

屬性數(shù)值\xxx.gif1000200100Left/right/center100top/bottom/center1000.50All/2-3

說(shuō)明圖像文件路徑,可以使用確定路徑或者相對(duì)路徑圖片縮放比例,默認(rèn)100%圖片旋轉(zhuǎn)角度起始位置x確定坐標(biāo)起始位置y確定坐標(biāo)水平x/中心開(kāi)頭水平偏移量,單位象素y坐標(biāo)承受相對(duì)位界/中心開(kāi)頭垂直偏移量,單位象素透亮度應(yīng)用頁(yè)碼范圍水印對(duì)象配置信息編輯器〔選配〕XML設(shè)計(jì)一個(gè)水印配置信息編輯器進(jìn)展編輯,界面類似以以下圖所示:水印水印watermark01watermark02類型文本水印文本字體 ROMAN_NEW 大小 8旋轉(zhuǎn)0透亮50%位置X=100;y=200水平左邊100增刪除頁(yè)碼垂直全部底部20從到保存關(guān)閉文本水印配置編輯器示意圖watermark01類型圖片水印watermark02文件C:\sipmlogo.gif...比例100%旋轉(zhuǎn)0透亮50%位置X=100;y=200水平 左邊100增刪除頁(yè)碼垂直 底部全部 從20到水印保存水印保存關(guān)閉編輯器對(duì)話框左邊是已有水印對(duì)象列表,增按鈕執(zhí)行增加一個(gè)水印對(duì)象子節(jié)點(diǎn),刪除按鈕執(zhí)行刪除水印配置對(duì)象操作;編輯器對(duì)話框右側(cè)是水印配置屬性界面,依據(jù)選擇的類型是文本水印還是圖片水印,顯示不同的頁(yè)面;文本水印配置頁(yè)面,文本使用輸入框,輸入固定文字字符串,或者變量,變量名稱使用$XXX$格式;字體使用下拉列表框〔可以用默認(rèn)宋體指定字體,可以不需要修改〔一般圖片水印配置頁(yè)面,文件輸入框,選用文件選擇對(duì)話框選擇圖片文件;旋轉(zhuǎn)使用下拉列表框,選擇圖片旋轉(zhuǎn)角度〔-90,-45,0,45,90,180〕;透亮使用0-100%,比例使用文本輸入框輸入數(shù)據(jù);置,設(shè)定水平方向從左邊/右邊/XXX象素開(kāi)頭;垂直方向從上邊/下邊/XXX象素開(kāi)頭;水印應(yīng)用頁(yè)碼范圍,可以設(shè)置全部頁(yè)面,或者一個(gè)指定連續(xù)頁(yè)面;保存按鈕執(zhí)行保存配置信息到配置文件;確定按鈕關(guān)閉對(duì)話框。翻開(kāi)水印配置文件獵取水印配置信息從配置文件l文本/圖片水印對(duì)象分別包含各自不同的屬性數(shù)據(jù)。用戶掃瞄全部水印對(duì)象的相關(guān)屬性信息,選定某個(gè)或者幾個(gè)水印對(duì)象。舉例來(lái)說(shuō),名稱為12是另一個(gè)文本水印對(duì)象,watermark03,PDF文件將在頁(yè)面上添加一個(gè)圖片水??;假設(shè)選watermark01watermark03,PDF文件將在頁(yè)面上添加一個(gè)文本水印和一個(gè)圖片水印。建文本水印對(duì)象使用文本編輯器翻開(kāi)水印配置文件,依據(jù)定義標(biāo)準(zhǔn)建一個(gè)水印對(duì)象后保存XML配置文件。還可以通過(guò)編輯器界面上,添加一個(gè)的水印對(duì)象,通過(guò)對(duì)話框的單項(xiàng)選擇按鈕,選擇屬性界面的提示,輸入屬性參數(shù)數(shù)值,按保存按鈕確認(rèn)參數(shù)輸入和修改,保存到文件。文本內(nèi)容,可以輸入固定文本,或者變量,也可以混合輸入,如輸入以下的內(nèi)容都是合法的:SIPMLtd.$CurrDate$Printtime:$CurrDate$打印時(shí)間:$CurrDate$打印人:$CurrUser$以上的水印文本內(nèi)容中,以$符號(hào)開(kāi)頭和結(jié)尾的都是變量,變量需要預(yù)先做常量定義,便于后續(xù)程序處理和用戶理解。常用的變量有:當(dāng)前系統(tǒng)時(shí)間、當(dāng)前系統(tǒng)用戶或者應(yīng)用程序環(huán)境下的登錄用戶、組織部門(mén)名稱、設(shè)備地址或者設(shè)備標(biāo)記字符串等。ITEXT等第三方架包對(duì)中文字體的支持不夠完整,需要指明具體TTF字體文件來(lái)支持中文字體,原則上可以使用系統(tǒng)全部字體,但可能需要為每種字體都指定其對(duì)應(yīng)的字體類型,可以默認(rèn)使用一種字體。045度、90度、180度,正數(shù)表示逆時(shí)針旋轉(zhuǎn)。1表示不透亮〔水印在外表時(shí)完全掩蓋下面的內(nèi)容〕。可以通過(guò)〔x,y〕確定坐標(biāo)的方式設(shè)定,但是對(duì)于不同的紙張介質(zhì)可能消滅位置沒(méi)有對(duì)齊的狀況,可以通過(guò)相對(duì)位置設(shè)定的方式,如在水平方向上,距離紙張介質(zhì)的左邊界/右邊界/M/底邊界/中心,N個(gè)象素,來(lái)獲得坐標(biāo),在不同的紙張介質(zhì)上顯示。水印應(yīng)用頁(yè)碼范圍,可以選擇PDF文件全部頁(yè)面或者指定連續(xù)頁(yè)碼頁(yè)面,在每個(gè)頁(yè)面上顯示水印。建圖片水印對(duì)象圖片水印對(duì)象和文本水印對(duì)象的定義類似,通過(guò)文本編輯器編輯水印配置文件,增水印對(duì)象節(jié)點(diǎn)和屬性節(jié)點(diǎn)的方法來(lái)表示,或者通過(guò)圖形化水印編輯器來(lái)創(chuàng)立。圖片顯示比例,原始圖片可能比較大,允許圖片縮小到指定的尺寸使用,比例使用百分比數(shù)據(jù)。圖片旋轉(zhuǎn)角度設(shè)定,和文本的旋轉(zhuǎn)角度同樣方法設(shè)定,正數(shù)表示逆時(shí)針?lè)较蛐D(zhuǎn)。0表示完全透亮不顯示,100%表示不透亮掩蓋圖片下方的內(nèi)容。圖片顯示位置,通過(guò)確定位置或者相對(duì)位置方法表示。圖片水印應(yīng)用頁(yè)碼范圍,可以選擇全部頁(yè)碼,或者指定連續(xù)頁(yè)碼。修改已有的水印配置對(duì)象信息WatermarkCfg.xml修改指定的水印對(duì)象的各種屬性參數(shù)數(shù)據(jù)假設(shè)使用圖形化編輯器,則讀取配置文件中全部水印對(duì)象,顯示在編輯對(duì)話框中,XML配置文件。刪除選定的水印對(duì)象WatermarkCfg.xml及其下屬的全部屬性參數(shù)節(jié)點(diǎn),完成后保存水印配置文件。WatermarkCfg.xml象,選擇需要?jiǎng)h除水印對(duì)象,去除該指定水印對(duì)象及其相關(guān)的屬性信息,更保存到水印配置文件。打印要求選擇水印方案PDF文件過(guò)程中,在打印申請(qǐng)文件打印要求選項(xiàng)中,可以供給一個(gè)編輯器借口,供用戶選擇使用哪些水印對(duì)象,默認(rèn)狀況下不使用水印,當(dāng)用戶選擇打印水印時(shí),可以通過(guò)編輯器的水印數(shù)據(jù)表格選擇方式,來(lái)選中需要的水印配置方案。水印內(nèi)容處理當(dāng)用戶選擇了水印配置方案后,在實(shí)際打印之前,需要對(duì)實(shí)際水印內(nèi)容進(jìn)展處理,確定文本水印的實(shí)際文字字符串內(nèi)容及顯示方式,確定圖片水印實(shí)際文件所包含的Image類型圖片對(duì)象及其顯示方式,并計(jì)算各個(gè)水印對(duì)象在PDF頁(yè)面上的起始位置,添PDF打印文件的具體頁(yè)碼位置上。技術(shù)難點(diǎn)和解決方案圖片水印來(lái)源文件保存位置Image的引用,使用圖片文件確定保存路徑的方式獲得,境中,由于程序環(huán)境的不同,可能無(wú)法找到指定名目下的圖像圖片文件。圖片文件配置信息圖片文件配置信息Location=C:\logo.gif現(xiàn)象 解決方案使用文件確實(shí)定路徑,在不同平臺(tái)1或者運(yùn)行環(huán)境下可能無(wú)法找到對(duì)應(yīng)的文件

轉(zhuǎn)換圖片文件為數(shù)據(jù)流格式傳輸后保存在當(dāng)前工程的工作名目下〔或者指定路徑〕2下載功能,保存到文件SIPMBCF系統(tǒng)使用水印內(nèi)容與圖層PDF內(nèi)容的下面,但由于PDF文件頁(yè)面內(nèi)容的不同,可能呈現(xiàn)不同的外觀顯示方式,以下依據(jù)試驗(yàn)數(shù)據(jù)歸納水印內(nèi)容的呈現(xiàn)方式。PDF文件內(nèi)容 水印外觀顯示設(shè)置 度10050頁(yè)面之上0一般PDF文件 10050頁(yè)面之下0100圖片PDF文件 頁(yè)面之上50

呈現(xiàn)效果PDF文100%時(shí),PDF頁(yè)面內(nèi)容PDF文50%時(shí),半透亮顯示,可以觀看下面的PDF頁(yè)面原有內(nèi)容0%是文本水印還是圖片水印存在,但是不能呈現(xiàn),不影響PDF文件原有頁(yè)面內(nèi)容的顯示100%PDF頁(yè)面內(nèi)容,文本PDF頁(yè)面內(nèi)容的顯示PDF文50%時(shí),半透亮顯示,可以觀看上面的PDF頁(yè)面原有內(nèi)容0%是文本水印還是圖片水印存在,但是不能呈現(xiàn),不影響PDF文件原有頁(yè)面內(nèi)容的顯示PDF頁(yè)面上面,透亮100%PDF頁(yè)面內(nèi)容PDF頁(yè)面上面,有半透亮效果,依據(jù)透亮度設(shè)置顯示不同的深淺效果,能夠呈現(xiàn)水印0PDF頁(yè)面內(nèi)容水印內(nèi)容完全透亮,不呈現(xiàn)在0-100PDF文件頁(yè)面上不管水印內(nèi)容的類型和透亮度的頁(yè)面之下設(shè)置,類似于圖片底層圖層,不能呈現(xiàn)任何水印內(nèi)容信息結(jié)論:結(jié)論:PDFPDF頁(yè)面內(nèi)容是掃描圖片時(shí),必需將水印對(duì)象PDF0100%,建議設(shè)置透亮度為50%PDF文件內(nèi)頁(yè)面為其他類型頁(yè)面內(nèi)容,可以任意承受水印對(duì)象放置在PDF頁(yè)面上0100%50%PDF水印對(duì)象文字或者圖片假設(shè)放在頁(yè)面下,會(huì)被一樣位置的圖片所掩蓋,為了顯示水印圖片和文字內(nèi)容,必需放置在頁(yè)面最上面,建議設(shè)置透亮度為50%或者以下,以PDFPDF頁(yè)面上有圖片,且圖片的背景顏色為黑色時(shí),一樣位置的水印圖片和文字內(nèi)容的顯示將受到影響。XML的工作名目上,以保證水印處理功能模塊能夠訪問(wèn)處理實(shí)際的水印配置文件。需要留意的是,水印配置文件在編輯修改時(shí),不能被其他程序使用,為了保證文件修改完成后掩蓋原始文件,從而滿足數(shù)據(jù)的同步和可用性。SIPMBCF應(yīng)用程序的功能,將水印對(duì)象數(shù)據(jù)以數(shù)據(jù)庫(kù)記錄的方式保存,通過(guò)各種接口程序,可以實(shí)現(xiàn)與SIPMBCF應(yīng)用程序的捆綁使用。水印程序功能設(shè)計(jì)實(shí)現(xiàn)水印對(duì)象數(shù)據(jù)構(gòu)造設(shè)計(jì)2種:文本類型水印數(shù)據(jù)對(duì)象和圖片類型水印對(duì)象。XMLXMLUtil程序類接口的各種函數(shù),獵取不同的節(jié)點(diǎn)和屬性數(shù)據(jù);同樣也可以創(chuàng)立通用BCFObjBCF應(yīng)用程XML格式文件的數(shù)據(jù)讀取。nametype兩個(gè)屬性,通過(guò)參數(shù)type=”text”type=”image”分別表示了文本類型水印對(duì)象和圖片類型水印對(duì)象,水印對(duì)象包含了以下的屬性:屬性名稱 文本水印獨(dú)有屬性Content $ByTime$fontname 宋體

使用說(shuō)明需要添加的文字水印的文本內(nèi)容,其中可以使用變量,變量可以通過(guò)程序進(jìn)展分析計(jì)算后替換文本使用的字體名稱,當(dāng)使用中文字體時(shí),由于第三方插件對(duì)中文支持的缺乏,TTF文件綁定FontsizeColor

8BLUE

8文本字體顏色,臨時(shí)使用常用顏色,可以RGB顏色圖片水印對(duì)象獨(dú)有屬性Location C:/logo.gif

圖片水印引用的文件保存路徑,依據(jù)使用環(huán)境和需求,可以使用相對(duì)路徑字符串ScaleRotateOpacityPosxPosy

100050

100%示逆時(shí)針旋轉(zhuǎn),<0表示順時(shí)針旋轉(zhuǎn)50,表示50%,100表示完全不透亮文本水印起始位置左上角頂點(diǎn)X橫坐標(biāo)文本水印起始位置左上腳頂點(diǎn)Y縱坐標(biāo)isAbsPos False/truehorFrom LEFT/RIGHT/CENTER

是否使用起始位置坐標(biāo)確定坐標(biāo)表示,當(dāng)false相對(duì)偏移位置坐標(biāo)表示方法;當(dāng)數(shù)值為trueX/Y的坐標(biāo)表示水印文本內(nèi)容起始位置,在水平方向上的LEFT/RIGHT/CENTER,分別表示紙張左邊界/右邊界/紙張介質(zhì)中心點(diǎn)hoffsetverFrom

0TOP/BOTTOM/CENTER

水印文本內(nèi)容起始位置,在水平方向上,距離指定基準(zhǔn)點(diǎn)的偏移量,單位為像素水印文本內(nèi)容起始位置,在垂直方向上的voffsetvoffset0RangeALL分別表示紙張頂邊界/底邊界/紙張介質(zhì)中心點(diǎn)水印文本內(nèi)容起始位置,在垂直方向上,距離指定基準(zhǔn)點(diǎn)的偏移量,單位為像素應(yīng)用當(dāng)前文本水印的頁(yè)碼范圍,默認(rèn)為PDF文件的全部頁(yè)面WatermarkObj類中定義,其構(gòu)造和函數(shù)定義如以以下圖所示:WatermarkObjWatermarkObjPublicvoidsetWatermarkName(Stringname)PublicvoidsetWatermarkType(Stringtype)PublicvoidsetFontName(Stringfontname)PublicvoidsetFontSize(intfontsize)PublicvoidsetFontColor(Colorcolor)PublicvoidsetContent(Stringcontent)PublicvoidsetImageLocation(Stringlocation)PublicvoidsetImageScale(intscale)PublicvoidsetRotation(intdegree)PublicvoidsetOpacity(intopacity)PublicvoidsetAbsPosFlag(booleanisAbsPos)PublicvoidsetAbsPos(Stringstr);PublicvoidsetRelPosX(Stringfrom,intoffset)PublicvoidsetRelPosY(Stringfrom,intoffset)PublicvoidsetRange(Stringrange)PublicvoidcalculPosX(intwidth,intheight)PublicvoidcalculPosY(intwidth,intheight)PDF打印文件時(shí),需要經(jīng)過(guò)數(shù)據(jù)計(jì)算和替換,主要包括文本內(nèi)容變量計(jì)算和替換、圖片水印圖片處理、水印顯示位置坐標(biāo)計(jì)算與替換等。具體的函數(shù)實(shí)現(xiàn)包含在文本水印對(duì)象類和圖片水印對(duì)象類中。水印對(duì)象數(shù)據(jù)集構(gòu)造設(shè)計(jì)以上章節(jié)介紹的是單一文本水印對(duì)象數(shù)據(jù)構(gòu)造或者單一圖片水印對(duì)象數(shù)據(jù)構(gòu)造的定義和構(gòu)造類設(shè)計(jì)。實(shí)際狀況下,一般會(huì)定義多個(gè)不同的水印對(duì)象,因此在水印配置信息WatermarkCfg.xml文件中,可能包含多個(gè)不同類型的水印對(duì)象節(jié)點(diǎn)項(xiàng),每個(gè)水印對(duì)象節(jié)點(diǎn)有各自的不同名稱和類型參數(shù)數(shù)值。在添加水印時(shí),用戶選擇某個(gè)或者幾個(gè)已有的水PDF文件上。多個(gè)不同名稱和類型的水印對(duì)象,組成一個(gè)水印對(duì)象數(shù)據(jù)集,這里水印對(duì)象集在Watermarks類中定義,其中包含了以下的函數(shù)和構(gòu)造:WatermarksWatermarksPublicvoidinit(StringconfigPath)PrivatevoidinitNames(HashMap<String,WatermarkObj>map)PublicHashMap<String,WatermarkObj>getAllWatermarksPublicVector<String>getAllWatermarkNamesPublicvoidinsertWatermarks(NoderootNode)PublicbooleancontainsByName(StringmarkName)PublicWatermarkObjgetWatermarkObjByName(StringmarkName)水印選擇WatermarkCfg.xml數(shù)據(jù)。在PDF文件的打印要求界面,可以添加一個(gè)編輯器和選擇對(duì)話框,默認(rèn)狀況下水印對(duì)象輸入框?yàn)榭?,選擇對(duì)話框列出全部可供選擇的水印對(duì)象的屬性數(shù)據(jù),供打印申請(qǐng)人選擇,中選擇多個(gè)水印對(duì)象時(shí)名稱使用逗號(hào)分隔。水印選擇的實(shí)現(xiàn)包括一個(gè)水印選擇編輯器SelectWatermarkEditor類和一個(gè)水印對(duì)象類。水印內(nèi)容數(shù)據(jù)計(jì)算在水印配置定義中會(huì)存在程序不能理解的變量、參數(shù)、文本、自定義數(shù)據(jù)等,這些水印配置屬性內(nèi)容需要編寫(xiě)程序代碼,進(jìn)展數(shù)據(jù)計(jì)算和轉(zhuǎn)換,成為程序可以識(shí)別的正確水印內(nèi)容,水印內(nèi)容數(shù)據(jù)的計(jì)算包括以下的功能:文本水印中文本變量的計(jì)算和替換;圖片水印中的圖片實(shí)體文件獵??;水印對(duì)象應(yīng)用到的頁(yè)碼范圍推斷,給定的頁(yè)碼是否在給定的水印應(yīng)用頁(yè)碼范圍內(nèi);MarkContentProvider以以下圖所示:MarkContentProviderMarkContentProviderPublicstaticStri

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論