我有一個內部應用程序,可以為不同的報告產生 PDF 文件。現在,根據報告類型,PDF 文件由 2 個不同的應用程式產生 - 第一個是nevia 文件創作者另一個是甲骨文報告。
如果我使用 Adobe Acrobat reader 開啟任一 PDF 文件,然後發出列印命令,則這兩個文件都會正確列印,並保留所有格式。
但是,如果我將文件直接複製到印表機(印表機在網路上共享,我所說的複製文件是指問題copy <file> \\share_name
),則 neevia Doc Creator 創建的 PDF 文件可以正常列印,並保留格式。
如果我對使用 Oracle Reports 建立的 PDF 檔案執行相同的操作,則列印將關閉,格式也不會保留。
起初,我以為這是字體替換問題,結果發現Oracle報告產生的PDF中沒有嵌入字體。所以我做了一些更改,現在正在嵌入字體 - 但列印仍然不匹配。
為什麼會這樣呢?我錯過了什麼?有什麼方法可以確定其他 PDF 有何不同導致其格式遺失?
這是從 Adobe 列印時的列印效果:
這是直接列印(即影印)時列印的外觀
這台印表機是 HP Color LaserJet 4700 PS,連接到在 Windows Server 2003 上執行的專用列印伺服器。
答案1
PDF 中是否嵌入了字體?我寫了一篇部落格文章解釋http://www.jpedal.org/PDFblog/?p=635
答案2
您的印表機似乎有 2010 年 7 月發布的新韌體版本。
如果適用的話,也要在 Win2K3 盒子上安裝最新的驅動程式。
答案3
有幾個PDF 格式的版本。也許 neevia Doc Creator 創建的檔案適合列印伺服器上的驅動程式支援的舊版本,而 Oracle Reports 使用驅動程式無法理解的新版本的某些功能。當您使用 Acrobat Reader 進行列印時,它會產生要傳送到印表機的 PostScript 檔案(並且毫不奇怪地可以毫無問題地處理所有版本的 PDF)。