Building a PDF to Image Converter

The Confident Change Management course was a major effort for us. The result is 800 pages of content and over 11 hours of video. It also required over 1,000 hours of time directly and the creation of four different pieces of technology to help us manage the process. This post is about the tool we built to convert PDF documents into images that we could use in videos.

PDFs for Exercises

There are lots of ways to build exercises for students. Just in the question and answer arena, you’ve got Word, PDF, online form builders, and whatever your LMS supports. Each of them has their benefits and limitations. We ended up deciding that, for our course, we could get to the best overall experience for most students by using fillable PDF forms, but we start with Word forms.

In truth, all the content we build starts in Microsoft Word or Microsoft PowerPoint. We’ll do note-taking in Microsoft OneNote and outline with MindJet MindManager, but the bulk of our content, including the things that we produce the courses from, are from Microsoft Office products. Word has a built-in forms technology, so why don’t we leverage that for prompting students to enter information?

The largest answer is that not everyone has Microsoft Word available to them in general or while taking the course. The largest common denominator is PDF, since everyone has or can get a PDF reader for free. There’s an issue getting the Word fields into PDF fields, but I’ll leave that for another post. For now, know the decision between Word and PDF largely came down to accessibility and ease for the students.

The question then becomes why not put this into some sort of electronic form and use that? The short answer is that it necessarily precludes someone from working offline. Given the nature of the course and our desire for the students to really reflect on the questions and dig deeply, we wanted to give them the option of escaping the onslaught of email and the ever-present interruption. With that in mind, PDF was the right answer.

Connecting Video Introduction and Exercises

To help orient the student, we wanted to record a video introduction to the exercise as well as providing written instructions. We felt that layering the two different communications approaches would give us the best coverage and retention of the intent of the exercise. The problem with that was how to connect the video component to the exercises.

Initially, we wanted to use a jib with an overhead shot, a leather three-ring binder, and some dual-mode front and overhead shots. When we did that, we realized that it just wasn’t coming together. You could either see what I was saying or the exercise, not both. That left us with the video overlay option. That’s what we do with slides and instruction anyway, so it seemed natural. That was until we realized the exercises were multiple pages, and sometimes I’d want to talk between the pages – and that would be awkward.

The solution was to create a single linear image of the exercise. We did this by outputting the Microsoft Word document to PDF, and then we built a tool to convert the PDF to images. The actual rendering part of the PDF wasn’t that hard, because we had a license to a PDF tool. What was interesting was addressing the gutter problem.

The Gutter Problem

Gutter margins are added to the inside edge to allow for binding. It’s used for 3-ring binding and every book you’ve ever read. The inside margin is larger than the outside. When you line up images for the different pages, you’ll notice the sawtooth effect, as the pages jump right then left. As a result, we detected the edges and added padding to the top, bottom, left, and right of the image we detect, so we could remove the whitespace then add back just enough of our own.

Resolve Change Problems

The Result

The result is a single linear image that we can scroll through in the video as I’m talking about each aspect of what the student will do in the exercise. Visually, they can connect what I’m talking about with what the pages look like. The result is lower cognitive load and better performance on the exercises.

Cognitive Load

In instructional design, I’m always trying to minimize cognitive load and free up more resources for the student to be able to focus on the work of learning the material. That means choosing words carefully, designing exercises and instruction that are progressive – in the sense that it uses very many small steps – and finding ways to make it clear what I’m talking about. I didn’t expect to need to use programming and image processing skills to make it a bit easier for students to learn – but I did. If you’re interested in what I built, reach out to me. I’m not going to post it publicly, but I’ll share it with folks who ask for it.