2

cfcontent を使用して、Web ルートの外部から画像をストリーミングしています。さまざまなページがブラウザーで直接呼び出されると画像が正しく表示されますが、生成された pdf 内で画像に赤い X が表示されます。エクスポート ページで:

<cfsavecontent variable = "gridCode">
    <cfinclude template="pathToGeneratedPage.cfm" >     
</cfsavecontent>
<cfdocument format="pdf" filename="#filename#" overwrite="yes" localUrl="yes">
    <cfdocumentsection >
        <cfoutput>#gridCode#</cfoutput>     
    </cfdocumentsection>
</cfdocument>

コンテンツが生成されるページで:

<img src="pathToDisplayPhoto.cfm?image=#someImage#" />

displayPhoto.cfm ページ:

<cfcontent type="image/*" file="#pathToUploadFolderOutsideWebRoot##url.image#" deleteFile = "No">

デフォルト (no) が機能しなかったため、cfdocument 属性 localUrl="yes" を含めました。明示的に「いいえ」に設定しても機能しません。

助言がありますか?

4

2 に答える 2

1

「localUrl」を yes に設定すると、Coldfusion が画像内のファイル パスを調べて、HTTP または HTTPS 呼び出しを行わずにハード ドライブ上でそれらを見つけようとするため、「pathToDisplayPhoto.cfm?image=」を開こうとしています。 #someImage#' をイメージとして使用しますが、これは HTTP 要求ではないため、CFML を処理しません。

loclUrl を No に設定すると、問題が解決するはずです。

cfdocument ref - params リストで localUrl を探します。

于 2012-08-15T13:48:50.047 に答える