const char * UsageLines [] = {
"Usage: p6contrast (contrast factor)",
"Reads P6 PPM from standard input.",
"For contrast factor > 1, contrast is increased at midrange",
"brightness, reduced near black and white.",
"For contrast factor < 1, contrast is reduced at midrange",
"brightness, increased near black and white.",
"Contrast factor is the slope of the brightness transfer curve",
"at midrange.",
"1.0 results in output same as input.",
"Passes each color component (normalized to the range 0 <= x <= 1)",
"through the transfer function:",
"\t1/(1 + (1/x - 1)**(contrast factor) )",
"This has the additional effect of intensifying color at midrange",
"brightness (for contrast factor > 1).",
"Writes same dimensions PPM to standard output.",
"Example of usage in pipeline to convert scanned document (3600x2700)",
"from jpeg to a one-page pdf:",
"\tdjpeg \\",
"\t| p6contrast 5 \\",
"\t| pnmtops -equalpixels -dpi 360 \\",
"\t| ps2pdf -dAutoFilterColorImages=false -sPAPERSIZE=letter - -",
"March 8, 2009. Newest is at gopher -p users/julianbr sdf.org",
};
const int NumUsageLines = sizeof (UsageLines)/sizeof (UsageLines [0] );