<cfscript> permPath = expandPath( "./image.jpg" ); tempPath = expandPath( "./temp.jpg" ); // Here, we are going to copy the binary file to a temp location for purposes that // are beyond the scope of this exploration. But, notice that after we copy the PERM // file, we read it in as a ColdFusion image object and then delete the TEMP file. fileCopy( permPath, tempPath ); image = imageRead( tempPath ); fileDelete( tempPath ); // After we delete the underlying TEMP file, we are still able to access most // properties of the image object, such as its pixel data and its dimensions. width = imageGetWidth( image ); height = imageGetHeight( image ); writeOutput( "Dimensions: #width# x #height#." ); // BUT, an attempt to read the EXIF data from an image object with no physical // file backing, results in a ColdFusion error. writeDump( imageGetEXIFMetadata( image ) ); </cfscript>