Technologies and tools: Servlets, JSP, AJAX, ImageMagick, iText
Workload: 14 MM
ProblemOur customer develops cross-media editorial system. It allows creation and modification of content with further delivery to the audience. Adding images to news and other content is always of key importance. Selection of suitable images for an article is complicated and laborious. PR solves the first problem on this way - making the process of photos’ delivery from the photographer to the editor easy and comfortable.
We developed PhotoReporter system for alfa Media. It implements the initial stage of image travel from its author to the editor. PhotoReporter helps photographers to describe their materials, to validate them and to put into storage. Editors get access to the storage via other alfa Media products: MediaSuite, AdSuite, and others.
Stored images must be described by specifying meta-information to speed up further selection process. Part of meta-information is taken directly from image files. We developed a module that reads and writes data from EXIF, IPTC, and XMP blocks. The photographer can modify this information and append more. When saving data modified meta-information is written back to image files.
Meta-information can be entered and edited for a single file, as well as for a bunch of photos. A configurable form is used for this purpose. Field values can be represented in very different ways, including trees for hierarchical values. Value templates are also supported: template data can be saved once and later be applied to another images.
Image previewer supports image scaling and rotation. Rotation can be done both manually and automatically: according to EXIF data.
At the final stage photographer sends processed images to the repository. Before sending photos PhotoReporter may perform their testing and/or post-processing. Post-processing script is designed by media-company that uses PhotoReporter according to its workflow requirements for images. Different ways of image transfer to the storage are supported, including cooperation with webservices.