Visit the ColdFusionProNews Directory
Beginners
Installation, Coding Techniques, Data Structures...
CF Powered Sites
Stores, Directories, Universities...
Developers
Developers, Designers, Experts...
E-commerce
Shoes, Food, Music...
Education
Books, Online Resource, Languages...
Expert
LiveChat , CFX XMLParser , User Defined Function Library...
Hosting
Dedicated Servers, Virtual Server, Multi-user...
Intermediate
AutoResize , DataSource Encryption, Guestbook...

Submit your site for FREE

ColdFusion 8: Working With PDFs


Raymond Camden By: Raymond Camden

Ok, time for a little revelation. This may prevent me from ever working for Adobe, but I have to be honest.

PDFs are boring.

Ok, ok, I get it. They look nice. They are powerful. But… outside of that, when I hear folks talk about PDF as a technology, I have to stifle a yawn. Not because I don’t like PDFs. I like them just fine. But to me they are about as exciting as, well, other file formats. As long as they work, I’m not too bothered to really care about the internals.

That’s one reason why when I discovered all the new PDF stuff in ColdFusion 8 I didn’t really pay much attention. But as I started to play around with the new tags, something odd occurred. I actually got excited about PDFs again! The amount of customization/modification/etc that you can do with PDFs in ColdFusion 8 is incredible. (See my article on URL Thumbnails for an example.)

So with that in mind, this week I’m going to take a look at some of the new PDF-related features in ColdFusion 8. Today I’m going to start with the simplest of features - checking to see if a file is a valid PDF.

For that feature ColdFusion 8 adds two simple functions: isPDFFile and isPDFObject. Let’s start with the first one. As you can probably guess, isPDFFile tells you if a file is a PDF. Consider this example:

<cfif isPDFFile("menu.cfm")>

  menu.cfm is a PDF!<br/>

</cfif>

<cfif isPDFFile(”book.pdf”)>

  book.pdf is a PDF!<br/>

</cfif>

I have two checks here. The first checks a CFM file and the second checks a PDF. When run, you will only see: book.pdf is a PDF!. Like some of the other new ColdFusion 8 functions, you finally are allowed to use relative file paths. No more expandPath to convert a file in the same folder to a full path. (Thank you Adobe!) You can use a full path if you want, but you do not need to.

If you already have a variable and want to see if it contains a PDF, then you use isPDFObject. I’m not sure why they didn’t use isPDF, but the function to use is isPDFObject. An example:

<cfif isPDFObject(mypdf)>

  mypdf is a PDF<br />

</cfif>

<cfif isPDFObject(request)>

  the request scope is a pdf.<br />

</cfif>

Tomorrow I’ll be talking about the CFPDF tag, but for now, assume mypdf is a native PDF variable. Running this code you will only see “mypdf is a PDF”.

Pretty simple stuff. As I said, my next entry will expand on this and start talking about the powerful CFPDF tag.

About The Author

Raymond Camden, ray@camdenfamily.com http://ray.camdenfamily.com Raymond Camden is Vice President of Technology for roundpeg, Inc. A long time ColdFusion user, Raymond has worked on numerous ColdFusion books and is the creator of many of the most popular ColdFusion community web sites. He is an Adobe Community Expert, user group manager, and the proud father of three little bundles of joy.

Leave a Reply