關於這個工具
房東傳來的租約要簽名、填日期再傳回去;公司的請款單、申請表是可以填的 PDF 表單;學校的同意書印出來簽、再掃描回去實在太麻煩。這頁會把 PDF 打開、逐頁顯示,找到的表單欄位直接在畫面上填,簽名、文字、今天的日期、勾選記號、姓名縮寫想放哪一頁的哪個位置都行,填完就下載。頁面是邊捲動邊畫、只畫看得到的那幾頁,一百頁的文件也不會卡;375px 的手機寬度也能用,因為在手機上簽名本來就是這頁最主要的情境之一。
簽名有三種做法
第一種是手寫:滑鼠、手指、觸控筆都可以,筆會回報壓力的話,壓得越重線條越粗。手寫的簽名是以向量路徑寫進 PDF 的,放到多大都不會糊。第二種是打字:從三種手寫風格的字型(Caveat、Dancing Script、Great Vibes,都是 SIL Open Font License)挑一個,打字簽名會先用放置尺寸四倍的解析度畫成圖片再嵌進去。第三種是拍下你已經簽在紙上的簽名:這頁會把墨水的部分抓出來、背景變透明、沿著筆跡的外框裁切,變成一張能乾淨貼到文件上的 PNG。放上去的簽名在下載之前都能拖動、等比縮放、刪除。勾選「在這台裝置記住」會把簽名存進這個瀏覽器的 IndexedDB,下次打開直接拿來用;這個選項預設不勾,頁上有「刪除已存簽名」按鈕可以清掉。
表單欄位:攤平,或是保留可填
如果 PDF 帶有 AcroForm——文字框、核取方塊、單選鈕、下拉選單——這頁會偵測出來,直接在頁面上原本的位置疊成輸入框,在哪裡就在哪裡填。下載有兩個按鈕。「攤平」會把欄位的值和你放上去的所有東西寫成頁面內容本身,收件人看到的就是你看到的,而且改不掉。「下載可填版」只寫入值、欄位還活著,適合接下來還有別人要填的表單。第二種模式有一點要注意:欄位裡填的是中文、日文這類基本拉丁字母以外的文字時,PDF 只存值,外觀交給打開檔案的那個閱讀器自己畫,所以在 Acrobat、Chrome、macOS 預覽程式裡看起來可能不一樣。要在哪裡打開都長一樣,就選「攤平」——這頁會自己把文字畫進頁面裡。XFA 表單(一些政府機關和保險公司的舊表格)沒辦法原生填寫,只能在頁面上疊加文字;輸出時會把 /XFA 拿掉,閱讀器才會顯示一般的表單加上你填的內容,而不是舊的 XFA 畫面。
這是視覺簽名,不是數位簽章
這頁加上去的是視覺簽名——把你的簽名畫在頁面上。它不是數位簽章。它不能證明文件簽名之後沒被改過,也不能證明是你本人簽的。需要法律效力或憑證簽章的文件,請用對方指定的簽署方式。反過來也一樣:原本就帶有數位簽章的 PDF,只要加上任何東西——一個簽名、一個日期、填一格——那個簽章就會失效,任何 PDF 編輯工具都是如此,不是這一頁弄壞的。開檔時只要偵測到簽章欄位,就會在你動手改任何東西之前先警告。
加密的 PDF、有權限限制的 PDF 在這裡打不開;這頁不會問密碼、不會猜密碼,也不會拆密碼——先在設密碼的那個程式裡解除,再回來。其他所有事都發生在這個分頁裡:檔案用 File API 讀進來,頁面繪製和簽完的 PDF 都是用 JavaScript 組出來的,下載檔是瀏覽器在記憶體裡建的。頁面背後沒有伺服器,文件不會被上傳。簽好的頁面要跟別的檔接在一起、只想寄其中幾頁,或是想看看這個檔自己帶了哪些資訊?PDF 合併、PDF 分割、移除 PDF 中繼資料都是同一套做法。