Entries Tagged as 'Adobe'
Tis a Sad Day - Sr. CF Product Mgr Laid Off w/ Silver Lining
Adobe , Human Resources , ColdFusion No Comments »As many of you guys know by now, Jason Delmore was among the 600+ laid off by Adobe recently. While I don't know if anyone else in the CF team was affected, I do know that Jason was a tremendous asset to the team.
Reading this in the blogosphere, I was hoping to find some good news. Well, it just so happens that Jason Delmore's resume has an interesting tid bit, a silver lining for all of us CF people.
As you know, Adobe is always hush hush about sales number when it comes to CF. But if you look at the resume, you'll see:
"Product revenue increased 50% Year over Year with 84% Quarter over Quarter at release." That's great news for CF, and a testament to what Jason's helped with.
Just thought to share that with all the bad news going around.
Ok, trying to be as dramatic as I can be in my title about a new undocumented method in CF8 called "getValueWIthoutChange".
You've seen me post before on how hard is to get underlying session information from CF.
When I saw this blog post by Terry Palmer, I almost had to blink twice. If you don't know what I'm talking about, well, his blog entry has all the details.
I'll be looking at the code closer and seeing if we can't do some interesting stuff with it. For now, read on, and enjoy!
Anyone have experience with Adobe Presenter 7?
We're running quizzes, and have URLs we define for success/failure. I'm not sure how to have it execute any Javascript, which would be ideal. But even when we hard code URLs, one opens a new window, and the other works in the current window despite setting and selecting everything correctly.
Is it just me, or is Presenter WAYYYYYYY buggy?!
Filling PDF Forms with CF8 to Create a Cert - Gotchas & Tips
Adobe , Product Development , ColdFusion 4 Comments »Ok, so in my previous post on PDF forms with CF8, I tried really hard to figure why I couldn't simply create a form in Acrobat, fill it out using CF, and make what I filled out like the other static text, so that the user can't change the form.
Turns out CF8 CANNOT do this natively. Its a simple use case. In our case, we are creating nice certificates for our users when they complete and pass an exam.
To make things worse, the CF8 docs make it seem like its doable. With words like "flatten" make you think everything's going to be all right. But it aint. Flattening obliterates all the fields, removing them all together, while the documentation says : removes interactivity. Hell yeah, its no longer interactive!
But there is hope. With a little iText (dont be scared, its simple) and Javaloader magic, I was able to get it to work.
Let's run through the code, shall we?
Step 1:
Download Mark Mandel's JavaLoader from RiaForge and iText (latest version).
Step 2:
Follow the code below. And that is it!
// First we load the latest iText JAR using JavaLoader. Adjust paths as necessary.
paths = arrayNew(1);
// Latest iText JAR
paths[1] = expandPath("iText-2.1.3.jar");
// Use Mark JL
loader = createObject("component", "javaloader.JavaLoader").init( paths );
// I've already named the blank cert form and the new populated cert previous. Adjust as you see fit.
newFile=expandPath(local.newPDFFile);
pdfFile=expandPath(local.PDFFile);
// Then some iText Magic
fos=createObject("java","java.io.FileOutputStream").init(newFile);
reader = loader.create("com.lowagie.text.pdf.PdfReader").init(pdfFile);
pdfStamper = loader.create("com.lowagie.text.pdf.PdfStamper").init(reader, fos);
// add some data to the form
pdfForm=pdfStamper.getAcroFields();
// We have 3 fields, first_last, orgCity_orgState, and date
// Here we are using the form scope, adjust as necessary.
pdfForm.setField("First_Last", trim(form.First_Last));
pdfForm.setField("OrgCity_OrgState", trim(form.OrgCity_OrgState));
pdfForm.setField("Date", trim(form.Date));
// Lets do a REAL flatten.
pdfStamper.setFormFlattening(true);
// Close out!
pdfStamper.close();
reader.close();
Step 3:
Last, serve up the file!
<cfcontent type="application/pdf" reset="true" file="#ExpandPath(local.newPDFFile)#" >


12-11-2008
12-8-2008
11-18-2008
11-18-2008
11-4-2008