2012-07-11 25 views
2

我需要在unix工具中,獲取多頁tiff和pdf中每個頁面的信息。一些解決方案給予pdf_info.ps(我在this topic中回答),但它僅適用於pdf。請幫幫我。如何在unix中使用ghostscrpt或其他解決方案獲取多頁tiff和pdf的頁面大小?

另外我怎麼能不打印大於A4格式的文件? 謝謝!

解決方案TIFF:

  • 對於TIFF(也多頁TIFF)使用tiffinfo LIB(的libtiff的一部分)
+0

你在尋找一個命令行工具還是代碼庫? – BitBank 2012-07-11 15:44:58

+0

任何東西,因爲我需要的結果)) – MikeLP 2012-07-12 09:35:48

+0

'tiffinfo'不是Poppler設備的一部分。它是LibTIFF的一部分(與Poppler無關)。 – 2012-08-11 21:32:42

回答

1

您可以從ImageMagick軟件包使用identify命令來獲得頁面大小。它可以一次性消費不同的文件(甚至是不同的文件類型):

identify multipage.* 

輸出示例:

multipage.pdf[0] PDF 421x595 421x595+0+0 16-bit Bilevel DirectClass 31.6KB 0.000u 0:00.000 
multipage.pdf[1] PDF 421x595 421x595+0+0 16-bit Bilevel DirectClass 31.6KB 0.000u 0:00.000 
multipage.pdf[2] PDF 421x595 421x595+0+0 16-bit Bilevel DirectClass 31.6KB 0.000u 0:00.000 
multipage.pdf[3] PDF 421x595 421x595+0+0 16-bit Bilevel DirectClass 31.6KB 0.000u 0:00.000 
multipage.tif[0] TIFF 1728x2156 1728x2156+0+0 1-bit Bilevel DirectClass 3.02KB 0.000u 0:00.000 
multipage.tif[1] TIFF 1728x2156 1728x2156+0+0 1-bit Bilevel DirectClass 3.02KB 0.000u 0:00.000 
multipage.tif[2] TIFF 1728x2156 1728x2156+0+0 1-bit Bilevel DirectClass 3.02KB 0.000u 0:00.000 

有1個PDF,4頁(每頁大小的A5 == 421x595 PT) ,和一個3頁的TIFF(1728x2156像素的迴音頁)。

你甚至可以自定義identify輸出格式,以滿足您的需求:

identify -format "%f: Page-Number: %p -- Width: %W -- Height: %H\n" multipage.* 

現在輸出:

multipage.pdf: Page-Number: 0 -- Width: 421 -- Height: 595 
multipage.pdf: Page-Number: 1 -- Width: 421 -- Height: 595 
multipage.pdf: Page-Number: 2 -- Width: 421 -- Height: 595 
multipage.pdf: Page-Number: 3 -- Width: 421 -- Height: 595 
multipage.tif: Page-Number: 0 -- Width: 1728 -- Height: 2156 
multipage.tif: Page-Number: 1 -- Width: 1728 -- Height: 2156 
multipage.tif: Page-Number: 2 -- Width: 1728 -- Height: 2156 

只要注意,對於頁/圖像編號的默認輸出爲0〜根據。


更新:

我應該在這個答案的第一個版本已經提到:

  1. identify可以當它涉及到返回的PDF頁面信息進行相當緩慢(對於多頁TIFF,這是可以的)。

  2. 對於PDF頁面信息,您最好用pdfinfo -f 1 -l 33 file.pdf。這將返回有關PDF的各種元數據,以及範圍從1到33的各個頁面編號(如果您使用最新版本的Poppler的pdfinfo - 不是XPDF的!),那麼您甚至會得到旋轉頁面狀態)。

所以:使用了合適的工具:多頁TIFF這是identify,對於PDF文件是pdfinfo

+0

感謝您的好主意!我會盡量使用它!但不幸的是,我的硬件資源有限(使用pbx),我需要使用imagemagic測試CPU花費的數量。 – MikeLP 2012-07-12 09:33:31

+0

@MikeL:只要你使用'identify',它不應該是CPU的大負載。但是,要安裝ImageMagick,它可能會吸引很多依賴項,以便它可以運行...因此,可能磁盤空間可能會成爲您的關注點。假設大約有100多MB ... – 2012-07-12 10:59:39

相關問題