[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] /srv/bzr/gnash/trunk r11985: Prevent rounding errors that
From: |
Bastiaan Jacques |
Subject: |
[Gnash-commit] /srv/bzr/gnash/trunk r11985: Prevent rounding errors that were causing some rendering artifacts that |
Date: |
Fri, 05 Mar 2010 18:58:43 +0100 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 11985
committer: Bastiaan Jacques <address@hidden>
branch nick: trunk
timestamp: Fri 2010-03-05 18:58:43 +0100
message:
Prevent rounding errors that were causing some rendering artifacts that
occurred as a result of anti-aliasing.
modified:
backend/Renderer_cairo.cpp
=== modified file 'backend/Renderer_cairo.cpp'
--- a/backend/Renderer_cairo.cpp 2010-03-05 04:19:28 +0000
+++ b/backend/Renderer_cairo.cpp 2010-03-05 17:58:43 +0000
@@ -575,7 +575,6 @@
set_color(bg_color);
}
- cairo_set_matrix(_cr, &_stage_mat);
for (size_t rno=0; rno < _invalidated_ranges.size(); rno++) {
const geometry::Range2d<float>& range =
@@ -587,6 +586,7 @@
cairo_paint(_cr);
// reset any rectangles that might have been added to the path...
cairo_new_path(_cr);
+ cairo_set_matrix(_cr, &_stage_mat);
return;
}
@@ -595,16 +595,19 @@
maxx = range.getMaxX(),
maxy = range.getMaxY();
- snap_to_pixel(_cr, x, y, false);
- snap_to_pixel(_cr, maxx, maxy, true);
+ // Transform to pixels.
+ cairo_matrix_transform_point(&_stage_mat, &x, &y);
+ cairo_matrix_transform_point(&_stage_mat, &maxx, &maxy);
- cairo_rectangle(_cr, x, y, maxx - x, maxy - y);
+ cairo_rectangle(_cr, rint(x), rint(y), rint(maxx - x), rint(maxy - y));
}
cairo_clip(_cr);
// Paint the background color over the clipped region(s).
cairo_paint(_cr);
+
+ cairo_set_matrix(_cr, &_stage_mat);
}
void
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] /srv/bzr/gnash/trunk r11985: Prevent rounding errors that were causing some rendering artifacts that,
Bastiaan Jacques <=