Daniel Vincent's profile

Rampage Client Features and UI

In Rampage 11, PDF preflight was introduced via integration with Callas PDF Toolbox. This began as checking for common problems in PDF files, and in version 12 it turned into fixing up those problems. I inherited the project in version 12's development cycle, being responsible for the development of the features in the library that would turn into end-user functionality. Aside from creating and maintaining the XML files that instructed the library what to do, I developed particular features for preflight and how the user would interact with them.
 
The library has tons of options and we wound up picking the most common and useful ones for our users. I was the go-between for the back-end developer, who wrote the library's integration on the back end of our software, and our client developer who wrote the end user's client. Often I had to determine exactly what options would be displayed to the user, what the results would be, and how they'd customize their fixup.
Part of PDF Preflight was replacing Rampage's antiquated color lookup table system with Color Policy, a comprehensive color management system. Instead of fixed lookup tables that were generated in a convoluted manner, Color Policy was made to expose common ICC profile based management to users who had experience with Photoshop's color management. We included extra features like stripping of source profiles and a special Microsoft Office profile for Word/Publisher doucments.
In Rampage 13 I pioneered two new features for Preflight from the ground up. Fix Bad Blacks and Map Process Colors are designed to be powerful and flexible tools to combat common problems with specific colors in PDF files. Fix Bad Blacks converts problem blacks (e.g. objects contaminated with a small amount of CMY, or poorly formed Superblacks) to either pure black or a special Super Black color. Map Process Colors will convert arbitrary color values to another and even change them to a spot color (e.g. a Pantone). I developed the exact criteria and methodology for these conversions, implemented them in Callas, worked with the back-end dev to allow Rampage to parse the instructions, and teamed with the client developer to create this user interface.
PDF Preflight is very important, because it fixes mistakes in files before they get to press. Any mistake that is missed is a costly one for my customers at the time. The library creates a results XML which must be parsed and displayed to the user.
As part of making sure that Preflight works correctly, I developed a comprehensive test suite designed to find flaws in the implementation and make sure that it would not fail in the future. If any aspect differed either in the XML results tally or in a visual difference, we would need to investigate. Two separate suites were needed for the ROOM (rasterize once, output many) and NORM (normalize once, render many) workflows which had different code paths and feature sets for PDF preflight.
Here is an example file I created for the test suite, which tests about eighteen common features in one test file. If a TIFF comparison was off due to a feature failing to run or a change in the back-end library, we would be notified immediately. I also created test files for complex features like Color Management, Fix Bad blacks, and map process colors.
Another key feature that I worked to implement was Archving in the Rampage client. In the past, archiving was handled by a separate utility, Rampage Pathway. This utility was cumbersome and buggy. We rewrote the feature from scratch in the Rampage client, implementing compressed archives (via RAR) and timed archiving at the same time. This straightforward archiving dialog was developed in conjunction with the client developer after we decided what needed to be implemented and what would be cast aside when Pathway was retired.
As part of archiving, we also implemented Importing into the client. At first importing only did one job at a time, but I redesigned the interface to allow for the importing of multiple jobs as well as renaming of the jobs and their contaning pages during the import process. A user could add multiple jobs and see whether they would be renamed or not. The client developer implemented my design along with the existing renaming system for live jobs.
Rampage Client Features and UI
Published:

Rampage Client Features and UI

Some features (and interfaces for them) that I was responsible for in the development of Rampage.

Published:

Creative Fields