2010-10-04 33 views
6

從InDesign CS 5開始,有一種稱爲IDML的新格式,它定義了要由InDesign渲染的文檔。我正在尋找一種方法來查看這種格式,而無需打開InDesign(這太過重了)。最佳解決方案是一個小程序/閃存庫/可以呈現網頁內容的東西(事實上,即使生成的圖像可能是一個有趣的起點)任何種類的外部IDML查看器

我知道有一個(支付)Java library讀/寫這種格式是否可以擴展以開發查看器?

+1

這將是CS 4及以上,順便說一句。 – 2010-10-04 12:58:36

回答

1

IDMLlib能夠提取IDML內的任何信息。您不以任何方式將此信息轉換爲其他信息。例如,您可以使用java2d來渲染IDML中的點差,或者您可以使用PDF庫從IDML文檔創建PDF。回答你的問題:是的,IDMLlib爲開發IDML查看器提供了基礎。

最佳,

安德烈亞斯

附: 的IDML格式可用,因爲CS4

編輯:

iText的是一個PDF庫另一個是www.pdflib.com這是一個非常快速的庫創建任何類型的PDF,但也是一個商用。從「有可能」的角度來看,pdflib能夠渲染很多東西,沒有太多麻煩,但是很難做到的是像軟陰影和圖像混合等東西。您還需要額外的軟件將EPS轉換爲pdflib可以使用的某些內容(PDF可能),因爲pdflib不支持EPS文件。如果您的idml文檔使用Mac字體(字體手提箱,.dfont),字體也可能是一個炫目的。所有其他字體都支持得很好(Truetype字體,OpenType字體,PostscriptFonts)。我不認爲有可能創建一個可以渲染每個文檔100%準確的查看器,但是可以創建一個可以渲染大量文檔非常準確的查看器。但一如往常里程可能會有所不同,最好的辦法是從兩個庫中獲得一個eval並試一試。

+0

是的,我知道IDML lib提供了基礎,但是我最好弄到牆:-)另外,你可以更精確地使用這個「PDF庫」的方式(我想你會談論iText或什麼的那樣,不?) – Riduidel 2010-10-04 12:44:38

6

你想從IDML到Web?

我自己也處於類似的情況。 我認爲InDesign Server具有我們想要的功能,但它看起來過於昂貴。 如果您的IDML一致,您可以編寫自己的流程。這是我目前正在做的。

+0

我也是這麼做的。 我將IDML文檔保存在Jackrabbit存儲庫中,因此每一個XML都通過Java REST API公開。 – 2013-04-26 17:40:41

0

我也和米哈伊爾一樣。 我將IDML文檔保存在Jackrabbit存儲庫中,因此每個XML都通過Java REST API公開。

然後將IDML加載到FLEX應用程序中,該應用程序進行實際渲染。我還使用Paul Taylor編寫的優秀TinyTLF庫的重大修改版本,其中我將大部分IDML文本標記實現爲獨立的IDML渲染器。 也許有一天我會把它改寫成HTML5/Javascript。

-1

我被困在相同的問題很長一段時間了,我發現這是 不可能 非常困難。使用IDML,您無法輕鬆呈現文檔,因爲您可以使用源INDD文件進行渲染。

這是因爲IDML文件是一個視圖而不是一個模型,它沒有包含足夠的信息來正確呈現。

我被阻止的問題是當IDML文件有文本+圖形時。由於所有的TextFrame都指向同一個故事,因此無法正確呈現它,並且IDML中無法找出文本框中有多少文本適合。所以,你基本上無法弄清楚放置圖像的位置,即在多少文本之後。

至於IDMLLib,我嘗試了一個評估產品,這些人剛剛提供了一些類似於SDK的東西,您可以從中抽取IDML中的所有信息。這個信息是不夠的!

+0

這是不正確的。我們已經使用Flash和HTML呈現了IDML,包括進行關於線程幀的計算。它非常容易,但是您需要的所有信息都在那裏(如果您在所選字體中包含可用指標)。 – JcFx 2013-05-22 10:32:49

+0

我的意思是,你將不得不編寫一個單獨的引擎來計算文本框架中有多少文本適合 - 該信息在IDML文件中無處可用。猜猜是誰告訴我的?埃裏克門寧娜先生本人! – divyanshm 2013-05-22 10:40:09

+0

@JFFx - 我明白你是IDML傢伙,你創建了標籤並回答了我的所有疑問。但是我確實有足夠的信息宣稱IDML不完整。 InDesign SDK + INDD - 從打開的應用程序中獲取大量信息,這不是IDML文件格式的一部分。 – divyanshm 2013-05-22 10:43:00