18.3 Plotter selection

The first section of the file deals with the plotters that are to be built into MuPDF.

/* 
   Enable the following for spot (and hence overprint/overprint 
   simulation) capable rendering. This forces FZ_PLOTTERS_N on. 
*/ 
#define FZ_ENABLE_SPOT_RENDERING

If this is enabled (i.e. if spot rendering capabilities are required) then all the plotters in the following section are implictly enabled. For people that do not need spot rendering (i.e. anyone dealing with on screen display where overprint simulation is not required) can turn this off, and further configure the next options:

/* 
   Choose which plotters we need. 
   By default we build the greyscale, RGB and CMYK plotters in, 
   but omit the arbitrary plotters. To avoid building 
   plotters in that arent needed, define the unwanted 
   FZ_PLOTTERS_... define to 0. 
*/ 
/* #define FZ_PLOTTERS_G 1 */ 
/* #define FZ_PLOTTERS_RGB 1 */ 
/* #define FZ_PLOTTERS_CMYK 1 */ 
/* #define FZ_PLOTTERS_N 0 */

The plotter selection built into MuPDF will determine which formats can be rendered too. If, for instance, you are using MuPDF to target a greyscale only device (say, an e-ink screen for a greyscale ebook reader) then there is no need to ever render in color, and the RGB and CMYK options can be disabled.

Similarly, if you know you are targeting screen display, then the greyscale and CMYK plotters can be omitted.

The N plotters are generic plotters capable of coping with any color depth, but are not as optimised for rendering to G, RGB or CMYK as the specific sets of plotters for those depths. You may find that you can trade some speed for space by enabling the N plotters and disabling the other plotters.

If you wish to render to colorspaces other than G, RGB or CMYK, you must enable the N plotters.

At least 1 plotter family must be defined in any build. If all the plotters are specifically disabled, then the N plotters will be enabled.