檔案 · PDF 工具包
MediaBox、CropBox 和 /Rotate: PDF 如何定義其頁面
· 背景
pdf 頁面幾何 旋轉
PDF 頁面在日常意義上沒有固定的「大小」;它有觀眾解讀的方框、單位和旋轉值。這篇文章解釋了這些屬性以及當您合併、旋轉或為不同形狀的頁面添加浮水印時它們的含義。
為什麼合併的檔案具有兩種尺寸的頁面 - 混合 A4 和 Letter 檔案並在結果中看到兩種形狀
合併 A4 和 US Letter 來源不會強制每張紙都變成一個長方形。 ToolAcre 會複製每個頁面的現有尺寸和旋轉,因此輸出可以明顯地改變尺寸。此行為會保留來源幾何圖形,而不是將內容拉伸到公共工作表。
混合尺寸影響列印、縮圖佈局、浮水印位置和光柵輸出。檢查頁面邊界處的合併檔案並仔細選擇印表機縮放比例。合併不是標準化工具,檔案為 PDF 並不表示每個頁面都具有相同的寬度或高度。
此工具包使用 PDF 點,但不提供一般單元歷史課程
影像到 PDF 操作公開了應用程式程式碼實際使用的單位:邊距以點為單位測量。適合的圖片頁面可以匹配嵌入圖片尺寸加上兩倍的邊距,而預設紙張使用配置的點寬度和高度。消息來源並未建立該單位更廣泛的歷史。
像素進入不同的路徑。 PDF-to-image 向 pdf.js 請求選定比例的視口,並從這些像素尺寸分配畫布。因此,頁面可以具有穩定的 PDF 幾何形狀,同時根據比例和記憶體保護產生更大或更小的光柵。點和輸出像素不是可互換的設定。
此介面未公開 MediaBox 與 CropBox 的差異
工作簿區分 MediaBox 和 CropBox,但此介面不會顯示、編輯或讓使用者在這些方塊之間進行選擇。應用程式操作向庫頁面物件詢問寬度和高度,並以提供的方式複製頁面。詳細的框優先級解釋需要這些來源之外的直接規範證據。
實際指引是檢查可見結果。如果來源檢視器裁切標記或顯示意外的空白,則合併會保留頁面而不是修復其方塊。水印放置使用庫顯示的尺寸,PDF-to-image 渲染 pdf.js 提供的視窗。
此工具讀取並新增頁面旋轉,而不斷言繼承節點行為
旋轉儲存為操作透過 pdf-lib 讀取的頁面角度。 ToolAcre 新增請求的四分之一圈並將結果標準化為 0、90、180 或 270。它不會暴露輸入值是直接源自頁面還是透過繼承的內部結構。
此省略並不會削弱使用規則:輪替是相對的。將 90 度套用至目前在 270 處報告的頁面會產生 0。該工具保持儲存的尺寸不變,並不轉換內容流。第二遍再次添加,因此在選擇另一回合之前請檢查當前輸出。
縱向和橫向 - 為什麼方向是盒子尺寸和旋轉共同的結果,而不是單獨的標誌
縱向和橫向是頁面尺寸、內容和應用旋轉的結果,而不是此介面中的單獨控制項。 0 度的寬頁面和旋轉 90 度的高頁面都可以顯示為橫向。該工具包不會重新標記方向;它根據所選操作複製尺寸或更新旋轉。
這解釋了為什麼混合掃描需要特定於頁面的處理。根據可見內容而不是猜測的方向標誌來選擇物理位置。對於圖片到 PDF 預設,縱向和橫向是明確的紙張尺寸,而「匹配每個圖片」會根據每個圖片本身的寬度和高度建立頁面。
頁面層級工具的後果 - 合併保留每個頁面自己的框,並必須相對於每個頁面的框放置浮水印
合併保留每個頁面自己的尺寸和旋轉。水印根據每個頁面的寬度和高度計算位置,將圖片標記縮放為頁面寬度的一部分,並在選定的錨點處繪製文字。因此,固定的文字大小在小紙張和大繪圖上可能會感覺不同。
有角度的標記圍繞其錨點旋轉,並根據未旋轉的標記測量值進行定位,因此對角線標記可能不會佔據直觀中心。測試混合頁面大小和現有旋轉。當來源頁面不同時,即使在一個選取的比例下,PDF-to-image 同樣會產生混合像素尺寸。
印前框和統一頁面縮放不在此工具包之外
BleedBox、TrimBox、ArtBox、印前拼版和統一頁面縮放此處未實現選項。此工具包也不會在合併期間將頁面裁切到選取的方塊或調整複製頁面的大小。這些工作流程需要明確記錄幾何控制和輸出保證的軟體。
避免將成功的合併描述為列印規範化。對於專業生產,請在頁面工作後使用印前工具檢查盒子並縮放。 ToolAcre 適用於在其規定的行為下進行複製、排序、四分之一轉動、標記和轉換,而不是用於驗證可印刷的頁面定義。
每頁尺寸與附加旋轉預測出貨操作
最有用的幾何模型是基於來源的:每個頁面都帶有尺寸和當前旋轉;合併複製它們,旋轉添加到角度,水印讀取放置尺寸,光柵轉換將渲染的視口轉換為像素。這些事實預測了用戶會看到什麼。
他們也確定什麼不會自動發生。頁面不統一,框不暴露以供編輯,並內容在旋轉期間不重新繪製。在最終檢視器中檢查混合尺寸輸出,保留原件,並在作業超出這些頁面層級操作時使用專門的幾何工具。對於列印,請單獨檢查縮放設置,因為在 PDF 工具包忠實保留混合來源尺寸後,印表機可以強加自己的適合行為。列印預覽可以顯示由目標設定而不是本地頁面副本本身引起的剪裁或意外居中。在列印整個混合資料包之前,對最大和最小紙張的額外檢查通常會暴露縮放假設。