關於部落格
除了忙與盲之外,也要停下來想一想、看一看... 建議使用 FireFox 或 IE7 以上版本瀏覽。
使用 IE6 若看不到網頁請留個言唷








☞ 網誌分類列表 ☜

※ 網誌分類列表 ※
  自製軟體
  程式語言
  ├ 程式語言.BCB
  └ 程式語言.C#
  應用軟體
  └ MSN
  網站架設
  └ 部落軌道
  Ubuntu
  電腦硬體
  遊戲育樂
  日常生活
  └ 乾癬
  網路硬碟
 ◎不分類網誌列表◎ 





jQuery(document).ready(function(){
jQuery("#boxVisit a[class!='boxVisitSelf'],#boxRecommend a,#boxRecommended a").unbind('click');
jQuery("#boxVisit a[class!='boxVisitSelf'],#boxRecommend a,#boxRecommended a").click(function(){
window.open(this.href);return false;
}).attr('target','');
});



function toggle() {
var ele = document.getElementById("chromemenu");
var text = document.getElementById("displayText");
if(ele.style.display == "block") {
ele.style.display = "none";
text.innerHTML = "☞ 顯示工具列 ☜";
}
else {
ele.style.display = "block";
text.innerHTML = "☞ 隱藏工具列 ☜";
}
}


☞ 顯示工具列 ☜
  • 756158

    累積人氣

  • 6

    今日人氣

    14

    追蹤人氣

解除 PDF 複製列印限制


原 PDF Unlocker 作者使用 Ghostscript 這套開放原始碼工具,將 PDF 讀入再匯出另存,以取消 PDF 原本的限制。因為 Ghostscript 本身就可以解讀及產生 PDF 檔,並且提供命令列程式,於是 PDF Unlocker 作者就寫一個批次檔將轉檔參數設定好,讓使用者把檔案丟給它,它就自己產生出解好的 PDF 檔。
PDF Unlocker 1.0.4 批次檔 unlockpdf.cmd 內容如下:
@echo off 
echo.
echo.
echo    This may take a minute, please wait.
echo.
echo.
echo.
echo.
set ttt=%1
set tt=%ttt:~0,-5%
gswin32c  -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite  -sFONTPATH=%windir%/fonts;xfonts;. -sPDFPassword= -dPDFSETTINGS=/prepress -dPassThroughJPEGImages=true -sOutputFile=%tt%_noPW.pdf"  %1

'Written by SMTguru
其中,
第 9 行的 %1 在執行時,會是您傳給它的檔案路徑全名
第 10 行則是將檔案路徑全名的後 5 個字元去除
第 11 行就是最主要的轉換指令含參數,並且把輸出檔名加上 _noPW.pdf" 字樣
眼尖的您是否發現,那個 " 怎麼只有一個?大部分在使用 " 號時,都會是雙數個,而這也正是問題所在!!

我猜想,原作者假設您所丟入的檔案是長檔名的機率很高,所以,以上的批次檔案中,第 10 行去掉檔案路徑全名的後 5 個字,就是要把整個副檔名含 " 都去除,這樣在第 11 行時,就可以順利在主檔名後作修改,並加上 pdf 的副檔名。不過,如果您丟入的是短檔名,那... 它就誤刪到主檔名了。

舉例來說,在 C: 磁碟下,有個 OO XX.pdfABCD.pdf兩個檔案,其中 OO 與 XX 之間是有一個空白。
若把 C:OO XX.pdf 這個 pdf 檔丟給 PDF Unlocker,則
%1 = "C:OO XX.pdf"
為了使它像是一個檔名,而不是兩段文字,前後的 " 是 Windows 幫我們加上去的。
%1 去掉後 5 個字,成為 tt = "C:OO XX
最後產出時加上 _noPW.pdf" 就成了完整的 "C:OO XX_noPW.pdf"
因此,像 C:OO XX.pdf 這類的檔案,在檔名或目錄中包含空白或特殊字元的 pdf 檔案,原本的 PDF Unlocker 就可以正常處理。

若把 C:ABCD.pdf 這個 pdf 檔丟給 PDF Unlocker,則
%1 = C:ABCD.pdf
因為檔名短或不含空白,Windows 並不會幫我們加前後加 "
%1 去掉後 5 個字,成為 tt = C:ABC
最後產出時加上 _noPW.pdf" 就成了 C:ABC_noPW.pdf"
如此,不但主檔名被吃掉一個字,連 " 號也不對稱了。

說了這樣多,不解的想必還是不解。不過,沒關係,這些並不需要知道(那說怎麼多幹麼?!),來到這兒,只需要學會下載 COPY 就好
以下是修改後的批次檔 unlockpdf.cmd
@echo off
echo.
echo.
echo    This may take a minute, please wait.
echo.
echo    這可能需要一些時間,請稍後...
echo    如果轉換成功,DOS 視窗會自動關閉,
echo    如果轉換失敗,會顯示錯誤訊息。
echo.
rem =========================================================================
rem Modify by dllee (http://blog.yam.com/dllee) 2008-10-24
rem 2008-10-24 BugFixed: old version only support "long file name"
rem                      this version support both short & long file name.
rem 2008-10-24 Add: when convert error, paused the DOSBox for checking errors
rem 2008-10-24 Add: Chinese BIG5 messages
rem =========================================================================

set ttt=%1
set tttt=%ttt:~-4%
set t1=%tttt:~0,3%
if '%t1%' == 'pdf' goto Lname

:Sname
set tt="%ttt:~0,-4%_noPW.pdf"
goto RUN

:Lname
set tt=%ttt:~0,-5%_noPW.pdf"

:RUN
rem gswin32c -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sFONTPATH=%windir%/fonts;xfonts;. -sPDFPassword= -dPDFSETTINGS=/prepress -dPassThroughJPEGImages=true -sOutputFile=%tt%_noPW.pdf" %1
gswin32c -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sFONTPATH=%windir%/fonts;xfonts;. -sPDFPassword= -dPDFSETTINGS=/prepress -dPassThroughJPEGImages=true -sOutputFile=%tt% %1

if errorlevel 1 goto ErrStop
goto EXIT

:ErrStop
pause

:EXIT

'Written by SMTguru
在修改時,我判斷了檔名是否前後有 " 號?如果有,就如同原方式,去掉後 5 個字,如果沒有,只需要去掉後 4 個字。為了方便,把整個輸出檔名先整理好,並且把 " 號的問題一併解決,最後再叫用 ghostscript 完成轉換。

您只需下載附件: unlockpdf.cmd.zip,把解壓的出來的 unlockpdf.cmd 蓋寫到 PDF Unlocker 的目錄即可。

在 PDF Unlocker 的目錄內您可以找到 History_of_Freeware_PDF_Unlocker.pdf 這份文件,文件中指出,作者在 2003 年時,已完成此工具,在 2004 年時,還找不到免費或商業的軟體可以解開 PDF 的限制,但在 2005 年,有一些商業軟體要價 30~50 美金,其作法卻與 PDF Unlocker 相同,在 2007 年,作者就把 PDF Unlocker 包裝成安裝套件。

附件: unlockpdf.cmd.zip

● 延伸閱讀及相關連結:
yal's blog 2008/06/20 「PDF unlocker:移去 PDF 檔的保護限制
Ghostscript 官網
PDF Unlocker 1.0.4 下載頁(找不到作者網站呀 )

2010-12-12
更新 PDF Unlocker 下載頁連結,由原本的
http://www.freewarefiles.com/downloads_counter.php?programid=27137 改成
http://freeware-pdf-unlocker.en.softonic.com/
相簿設定
標籤設定
相簿狀態