OpenOrienteering / mapper

OpenOrienteering Mapper is a software for creating maps for the orienteering sport.
https://www.openorienteering.org/apps/mapper/
GNU General Public License v3.0
402 stars 106 forks source link

Color adjustment of spot color overprinting simulation #193

Closed dg0yt closed 9 years ago

dg0yt commented 11 years ago

dg0yt reported on Sourceforge [tickets:#193]:

While overprinting can basically be simulated by a sequnece of Multiply blend operation of spot color layers, it gives undesired results for orienteering maps, such as a small fountain or well (Blue 100%) in open land (Yellow 100%) being rendered green.

In Mapper 0.5.0 this was solved by additionally alpha-blending each spot color layer after the multiply operation, adjusting the resulting color towards the covering spot color. But unlike the multiply operation, this also adds the brightness of the covering spot color, which is acceptable for the small fountain or well in open land, but not for the area with forbidden access (Green 50% on Yellow 100%).

In the master branch, I now added implementation which does not reapply each spot color layer, but alpha-blends the "normal" (i.e. non-overprinting) output on top of the pure multiply-blended output. This adds one extra rendering pass (normal output), but has several advantages:

This mode of operation requires that normal output and spot color output are quite similar. This should normally be the case (and is the case for Mapper's symbol sets). But maybe unexperienced user could get undesired effects when introducing new colors.

I attach a picture which illustrates the different modes of operation.

For the moment the selection of the mode is by a preprocessor macro only. If we decide to make this customizable, it should be per map (i.e. color set/symbol set), not globally.

Attachments (on Sourceforge):

dg0yt commented 11 years ago

Here are the Yellow/Green/Blue/Black separations for the illustration picture. (Yes, it's tiny, but you can zoom in.)

Attachments (on Sourceforge):

dg0yt commented 11 years ago