cfpdf可以直接读取二进制数据库列吗?
我目前在运行查询来获取列的地方有它。
使用cffile将文件写入目录
然后用cfpdf阅读,这样我就可以提取文本了。
有没有可能在没有cffile写入和直接读取二进制文件的情况下这样做?
如果是的话,能给我举个例子吗?
发布于 2012-05-22 05:18:27
您使用的是什么版本?下面的代码适用于我的CF9 / MS (varbinary列)
<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#">编辑:澄清,当你使用queryName.columnName作为“源”时,cfpdf会抱怨。我怀疑cfpdf将其视为查询列对象,而不是自动获取查询的第一行中的值,即queryName.columnName[ 1 ]。解决方法是创建一个对它的引用,并使用另一个变量。
发布于 2012-05-22 03:15:12
我不是百分之百确定,但你应该能够这样做:
<cfset myPDF = binaryEncode(binaryData,'base64')>
<cfpdf action="read" source="myPDF" name="PDFObj">发布于 2012-06-22 06:38:57
我找到了一个简单的方法来做到这一点:
<cfheader name="Content-Disposition" value="inline; filename=test.pdf">
<cfcontent type="application/pdf" variable="#qGetFile.uploaded_file#">这已经在我继承的代码中了,但是它从来没有工作过。我发现问题出在数据源,而不是代码;它没有设置为接受BLOB。
https://stackoverflow.com/questions/10690548
复制相似问题