需要基本幫助來提取 .rtf 標頭,然後將標頭寫入 .wmf

需要基本幫助來提取 .rtf 標頭,然後將標頭寫入 .wmf

任務:

我有數百個二進位 rtf 檔案和數千個 wmf 文件,因此 ^c 用於 rtfs 中的這些圖片,然後,圖形程式(如 IrfanView)中的 ^v 可以工作,但需要幾個月的時間。

透過 Autohotkey 腳本,理論上我可以打開二進位 rtf 文件,理論上我可以為每個這樣的圖片提取 {\pic ...} 部分(我認為沒有打開“{”和關閉“}”),然後將在剩餘的圖片字串之前添加必要的標題(為了使它們有效的“可放置的wmf 文件”),然後將這些“正式完成的”字串保存為文件,然後可以在某些圖形程式(如IrfanView)中開啟或批次轉換它們回到 jpg(這是簡單的部分,因為有相應的工具;在第一種情況下它們都是 jpg,並且在匯入時已被 rtf 程式轉換為 wmf)。

問題:

我需要知道必須作為核心圖片資料檢索的字串到底是什麼。我得到的是,

{\pict\wmetafile8\picw23492\pich13227\picwgoal13318\pichgoal7499 010009000003c8290a000000b2290a00000005002000 290a00430f2000cc000000f401780300000000ab33c45b000000002800000078030000f401000000100180000 0000000001e1a1 這裡有數百萬個相似的字符,然後:3b68761a77b52a77d53030000000000}

所以我想我必須刪除前面的“{”和後面的“}”,然後必須在剩餘的字串之前放置一個有效的標頭。

我不知道該標頭是什麼,網絡資訊對我來說太複雜了,無論如何,我認為該標頭對於任何此類結果圖片文件都是相同的?

或者,我需要從 \wmetafile8\picw23492\pich13227\picwgoal13318\pichgoal7499 讀取這些值,然後刪除此子字串,然後單獨寫入相應的標頭,考慮到這些值?

另外,上面顯然不是十六進位表示,儘管據說rtf內的此類wmf圖片是十六進位「格式」;在十六進位編輯器中,我看到兩種表示形式,所以我想我必須知道要刪除什麼和要添加什麼,以上面的可讀格式(Ansi),然後再將其全部轉換為十六進制?

另外,我對必要的(十六進位)字元位置存有疑問,因為在十六進位編輯器中,由於我在圖片資訊開始之前丟棄了所有字串,因此\infos“在頂部”和“在頂部”之間存在間隙“真實”wmf 圖片描述代碼。

rtf 程式具有純文字和 html 的匯出功能;在這兩個結果中,圖片或其程式碼字串都沒有出現,因此沒有解決方案。

沒有(商業或免費)工具可以提取 wmf 字串,更不用說它們會創建必要的標頭以使這些字串本身成為有效文件。

理論上,可能有一些工具或例程只獲取上述 wmf 字串(不添加標頭)並將它們轉換為有效的 jpg 檔案(帶標頭);如果可用,我就不需要取得中間獨立的 wmf 檔案。

我已經嘗試(部分)解決這些問題大約15個小時,通過閱讀/嘗試(我還嘗試從網絡上分析wmf文件頭,但徒勞),所以我希望在這裡獲得更多信息,即使是部分問題。

相關內容