質問

CFPDFは直接バイナリデータベース列を読み取ることができますか?

現在列を取得するためにクエリを実行する場所にあります。

CFILEを使用してファイルをディレクトリに書き込む

CFPDFで読み取るので、私は解凍することができます。

CFFILE書き込みを行わずにこれを行うことは可能ですか?

もしそうなら、私は例を得ることができます。

役に立ちましたか?

解決

どのバージョンを使っていますか?以下はCF9 / MS SQL(varbinary column)

で私のために働いた。
<cfquery name="getPdf" ....>
    SELECT Data 
    FROM   someTable
    WHERE  ID = 123
</cfquery>

<cfset pdfBinary = getPdf.data[1]>
<cfpdf action="extractText" source="pdfBinary" name="result">
<cfdump var="#result#">
.

編集:明確にするために、 "source"としてqueryName.columnNameを使用するとコンサル化します。CFPDFがクエリの最初の行での値を自動的に掴むのではなく、クエリ列 object を見るのではなく、queryName.columnName[ 1 ]を疑うのです。回避策はそれへの参照を作成し、代わりに他の変数を使用することです。

他のヒント

私は100%確実ではありませんが、あなたはこのようなことをすることができるはずです:

<cfset myPDF = binaryEncode(binaryData,'base64')>

<cfpdf action="read" source="myPDF" name="PDFObj">
.

これを行うための簡単な方法を見つけました:

<cfheader name="Content-Disposition" value="inline; filename=test.pdf">
<cfcontent type="application/pdf" variable="#qGetFile.uploaded_file#">
.

これはすでに私が継承されたコードにありましたが、それは働いていませんでした。私は問題がデータソースであり、コードではありませんでした。ブロブを受け入れるように設定されていません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top