A PhotoShop plugin to automate Mat Cutting

Client

Our Client is one of the market leaders when it comes to selling computerized mat cutters (CMCs). The company began operations in the early 90s of the 20th century and has now earned the reputation of having one of the largest customer bases of more than 10,000 CMC customers worldwide. The company is dedicated to providing innovative and affordable solutions to the custom framing industry.

Industry

Manufacturing

Business Challenge

The Client sells a machine and a software that allows picture framers to implement complex designs by cutting various holes and shapes in matboard (a thick material used frequently in most picture framing business) including fonts and CutArt (cutable clip-art).

In order to extend the feature set of their product, client wanted a plug-in to be developed for Adobe Photoshop. A plug-in that read a design file exported from the Frameshop software and used the dimensions and vectors in that file to resize and mask out areas in the user’s Photoshop design.

In addition the designed software allows the user to decorate the surface of the matboard with printable graphic elements. These printable designs can then be printed by the user onto the surface of a white matboard using a high-end inkjet printer that accepts thick media.

This function however presents several challenges that are difficult to normally address:

  • Color matching and color profiling are very important as the users are quite specific about exact shades of color
  • Large images and graphics require sophisticated memory management techniques in software so that the applications doesn't crash and have relatively acceptable performance

Solution

Abode’s Photoshop software is one of the premiere tools used by graphics professionals. In order to extend the feature set of their product, Adobe provides a mechanism for developers to write their own tools that “plug in” to their software.

We at Volga designed and developed a plug in for Adobe Photoshop that

  • On startup interacts with Photoshop to retrieve a copy of the current layer information, including resolution (pixels per inch), and displays it in a preview control
  • Allows the user to browse for and load a Wizard design file from the user’s computer
  • Parses the design file and verifies that it is a valid format
  • Reads the outside dimension data (total size) and the vector data from the design file
  • If possible, resizes the Photoshop image to the design outside dimension.
  • Iterates through the vector data and rasterizes each vector path onto the layer copy image using a solid white fill operation
  • Displays the updated layer image in the preview control
  • Allows the user to commit changes and modify the actual current layer in Photoshop, or cancel changes and close the plug-in

Benefits

The This Photoshop plug-in allows the users to print out their own custom matboard surface decoration while reducing their ink usage by ignoring the areas that are intended to be cut out using a Wizard computerized mat cutter. The other benefit is that other graphics software applications, such as Corel Paintshop Pro have also adopted Adobe’s plug-in API.

Technology Used

Operating System Windows
Development Tool Visual Studio 2012
SDK Adobe Photoshop CC SDK(32-bit & 64-bit)
Language C++, Win32 Programming
Software Adobe Photoshop CC to test the plug-in