pdfcoldfusionbinarycfpdf

Coldfusion CFPDF reading a binary database column


Can cfpdf read a binary database column directly?

I currently have it where I run a query to get the column.

Use cffile to write the file to a directory

Then read with cfpdf so I can extracttext.

Is it possible to do this without the cffile write and read the binary file directly?

If so, could I get an example.


Solution

  • What version are you using? The following worked for me with 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#">
    

    Edit: To clarify, cfpdf complains when you use queryName.columnName as the "source". I suspect cfpdf sees it as a query column object instead of automatically grabbing the value in the query's first row ie queryName.columnName[ 1 ]. The work-around is to create a reference to it, and use the other variable instead.