Fluid printing used wrong colors under Windows (STR #2195)

git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6784 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
Albrecht Schlosser 2009-04-27 15:51:21 +00:00
parent db7af4a8eb
commit 5a8e28d30b
2 changed files with 9 additions and 0 deletions

View File

@ -1,5 +1,6 @@
CHANGES IN FLTK 1.3.0 CHANGES IN FLTK 1.3.0
- Fluid printing used wrong colors under Windows (STR #2195)
- Updated documentation for Fl_Input_ - Updated documentation for Fl_Input_
- Fixed fl_draw_image to obey the alpha channel, hoping that - Fixed fl_draw_image to obey the alpha channel, hoping that
this has no adverse effect on existing software (OS X only) this has no adverse effect on existing software (OS X only)

View File

@ -1018,6 +1018,14 @@ void print_menu_cb(Fl_Widget *, void *) {
win = (Fl_Window *)(windows[winpage]->o); win = (Fl_Window *)(windows[winpage]->o);
pixels = windows[winpage]->read_image(w, h); pixels = windows[winpage]->read_image(w, h);
// Swap colors: FLTK uses R-G-B --> Windows GDI uses B-G-R
{ uchar *p = pixels;
for (int i=0; i<w*h; i++, p+=3) {
uchar temp = p[0]; p[0] = p[2]; p[2] = temp;
}
}
// Figure out the window size, first at 100 PPI and then scaled // Figure out the window size, first at 100 PPI and then scaled
// down if that is too big... // down if that is too big...
ww = w * xdpi / 100; ww = w * xdpi / 100;