2015-05-29 61 views
0

我有代碼將jpgs解壓縮成適用於JPEG文件的位圖,但是當我將代碼提供給JPEG時,我直接從PDF中剝離了XObject我收到了錯誤。解碼從PDF文件內部剝離的JPEG圖像

Adob​​e閱讀器顯示的圖像很好,所以我不認爲它已損壞。我已閱讀JPEGPDFs文檔,並且未發現任何明顯問題。

我的問題是,這是否有什麼不同的嵌入在一個PDF流和一個正常的JPEG內的「JPEG」?如果是的話,它是什麼?

:我可以手動打開PDF文件,複製圖像,粘貼到油漆,並保存...當我做這一切工作....我的問題是我需要這個自動化。

當我的代碼解析PDF時,去掉圖像流,將二進制文件轉儲到一個文件,然後嘗試打開這個文件,它不起作用。我錯過了什麼?

我的錯誤似乎發生在霍夫曼解碼過程中,cdtHuffman表似乎正常讀取。

+0

我寫的代碼可以做同樣的事情。你可以發佈樣本圖片,我會在我的鑽機上進行測試。 – BitBank

+0

也許你可以使用'pdfimages' ... http://en.m.wikipedia.org/wiki/Pdfimages –

+0

我不能發佈一個示例圖像,但我用來解壓縮圖像的代碼來自這裏:http ://www.xbdev.net/image_formats/jpeg/jpeg_decoder_source/BuildHuffmanTable – Joe

回答

0

原諒我使用了應答部分,但我溢出的註釋部分:

我的問題:1。 的代碼是什麼失敗的JPEG解碼?你說你「有代碼」,但是從哪裏來的?你爲什麼認爲這是可靠的?

  1. 什麼是JPEG流的文件格式? JFIF,ADOBE,EXIF,沒有指定?

難道你的解碼器無法處理文件格式的東西嗎?您的編碼器是否檢查不同類型的APPn標記?

  1. 什麼是JPEG格式?什麼類型的SOS標記?

此編碼器源是否處理所有正常格式?基線,擴展,連續,漸進?如果您的漸進式JPEG和編碼器只有基線,那麼您將遇到問題。

  1. JPEG流有多少個組件?

一些Adobe文件有4個部件和解碼器可能僅能夠處理1或3