2012-03-27 13 views
0

私はColdFusion 8を使用しています。PDF生成で画像が正しくレンダリングされない原因は何ですか?

私はPDFに変換する完全な形式のHTMLページを持っています。このコンテンツを作成するには約250ミリ秒かかります。このコードは、PDFを作成する場合を除いて、問題なくあらゆる点で試されています。

は、私はこのようなPageContent変数を作成します。

<!--- CREATE PAGE AS CONTENT ---> 
<cfsavecontent variable="PageContent"> 
<html> 
<head></head> 
<body> 
<cfoutput> 
    // PAGE CONTENT IS HERE 
<cfoutput> 
</body> 
</html> 
</cfsavecontent> 

私は、ブラウザにHTMLとして完全にこのPageContentを表示するWordやExcelで開くことができます。

<cfdocument format="pdf"> 
<cfoutput> 
    #PageContent# 
</cfoutput> 
</cfdocument> 

ページのコンテンツには、インラインスタイル、画像、div、および表があります。空の文字列でイメージパスとファイルを削除すると、ドキュメントが機能します。ここには

私はパスが私には完璧に見え、他の場所ではうまくレンダリングしますが、PDFジェネレータはイメージパスを塞ぐと思います。 imgタグに完全なHTTPパスが入力されていますが、これは完全に有効です。

http://dev.iqcatalogs.com/avcat/IMAGES/products/spotlight/ef17_40_4lu_c2_186x279.gif 

画像がPDFで正しくレンダリングされない原因は何ですか?

+0

'localUrl =" yes "'を使用し、ローカルパス、つまり '/ avcat/images/...'をフルURLとして使用すると、変更されますか? – Leigh

+0

@Leigh、これは試してみるべきもののリストです。私がやりたいことではありません。しかし、他には何も働いていないようです。 –

+0

ええ、私はそれがあなたが最終的に望んでいたものではないと考えましたが、それはあなたのトラブルシューティングに役立つかもしれません。私はあなたが[通常の容疑者](http://coldfused.blogspot.com/2005/11/missing-images-in-cfdocument.html)を既に見ていると思いますか? – Leigh

答えて

4

私はあなたがすでにusual suspectsに見ている推測していますか?

ie 2)サーバーがファイアウォールの内側にある場合。先に述べたように、CF サーバは画像のHTTPリクエストを送信する必要があります。ファイアウォール がサーバーからの発信接続を妨げる場合、CFは を検索できず、代わりに赤色のxが表示されます。サーバーがHTTP 要求を自分自身に送信できるようにファイアウォールを設定するには、 が必要です。

+0

あなたの提案にスポットがありました。私たちのサーバーは電話をかけることができませんでした。ドメイン名の使用からIPアドレスの使用に変更しても問題ありません。ありがとう! –

4

Cfdocumentを動作させるには、がブラウザでイメージをプルアップできるかどうかは関係ありません。 サーバがそれを引き上げることができる場合のみ重要です。この原因としては、サーバーが正しいIPアドレスを取得できないドメインの解決、またはコンテンツの取得がブロックされていることなどがあります。このポストを参照してください。 (上記のコメントから)

resolution and cfdocument

+0

+1。まあまあ。 – Leigh

+0

あなたはスポットにいます。ありがとう! –

+1

リー - あなたは誰のために働いていますか?あなたはそこで幸せですか? :) –

関連する問題