Author: pbartok
Date: 2005-11-01 20:15:39 -0500 (Tue, 01 Nov 2005)
New Revision: 52463
Modified:
trunk/libgdiplus/src/ChangeLog
trunk/libgdiplus/src/graphics.c
trunk/libgdiplus/src/pen.c
Log:
2005-11-01 Peter Dennis Bartok <[EMAIL PROTECTED]>
* graphics.c: Implemented smoothing mode support. Now defaulting
to non-antialiased drawing
2005-11-01 Jonathan Chambers <[EMAIL PROTECTED]>
* pen.c: LineCapFlat needs to translate to square cairo line caps
in order for line lengths to be correct when not aliased
Modified: trunk/libgdiplus/src/ChangeLog
===================================================================
--- trunk/libgdiplus/src/ChangeLog 2005-11-01 22:03:40 UTC (rev 52462)
+++ trunk/libgdiplus/src/ChangeLog 2005-11-02 01:15:39 UTC (rev 52463)
@@ -1,3 +1,13 @@
+2005-11-01 Peter Dennis Bartok <[EMAIL PROTECTED]>
+
+ * graphics.c: Implemented smoothing mode support. Now defaulting
+ to non-antialiased drawing
+
+2005-11-01 Jonathan Chambers <[EMAIL PROTECTED]>
+
+ * pen.c: LineCapFlat needs to translate to square cairo line caps
+ in order for line lengths to be correct when not aliased
+
2005-10-23 Jonathan Gilbert <[EMAIL PROTECTED]>
* image.c: Renamed gdip_FlipX() and gdip_rotate_180_FlipX() to
Modified: trunk/libgdiplus/src/graphics.c
===================================================================
--- trunk/libgdiplus/src/graphics.c 2005-11-01 22:03:40 UTC (rev 52462)
+++ trunk/libgdiplus/src/graphics.c 2005-11-02 01:15:39 UTC (rev 52463)
@@ -67,10 +67,11 @@
graphics->composite_quality = CompositingQualityDefault;
graphics->composite_mode = CompositingModeSourceOver;
graphics->text_mode = TextRenderingHintSystemDefault;
- graphics->draw_mode = SmoothingModeNone;
graphics->pixel_mode = PixelOffsetModeDefault;
graphics->saved_status = NULL;
graphics->saved_status_pos = 0;
+
+ GdipSetSmoothingMode(graphics, SmoothingModeNone);
}
GpGraphics *
@@ -458,11 +459,11 @@
graphics->scale = pos_state->scale;
graphics->interpolation = pos_state->interpolation;
graphics->page_unit = pos_state->page_unit;
- graphics->draw_mode = pos_state->draw_mode;
graphics->text_mode = pos_state->text_mode;
graphics->pixel_mode = pos_state->pixel_mode;
graphics->saved_status_pos = graphicsState;
+ GdipSetSmoothingMode(graphics, pos_state->draw_mode);
return Ok;
}
@@ -3342,6 +3343,23 @@
graphics->draw_mode = mode;
+ switch (mode) {
+ case SmoothingModeAntiAlias:
+ case SmoothingModeHighQuality: {
+ cairo_set_antialias(graphics->ct,
CAIRO_ANTIALIAS_DEFAULT);
+ break;
+ }
+
+ case SmoothingModeNone:
+ case SmoothingModeDefault:
+ case SmoothingModeHighSpeed:
+ default: {
+ cairo_set_antialias(graphics->ct, CAIRO_ANTIALIAS_NONE);
+ break;
+ }
+
+ }
+
return Ok;
}
@@ -3779,7 +3797,7 @@
static int called = 0;
if (!called) {
- printf("NOT IMPLEMENTED YET:GdipTransformPoints (GpGraphics
*graphics, GpCoordinateSpace destSpace, GpCoordinateSpace srcSpace, GpPointF
*points, int count)\n");
+ printf("NOT IMPLEMENTED YET:GdipTransformPoints (GpGraphics
*graphics, GpCoordinateSpace destSpace %d, GpCoordinateSpace srcSpace %d,
GpPointF *points, int count %d)\n", destSpace, srcSpace, count);
}
/* return NotImplemented; */
return Ok;
Modified: trunk/libgdiplus/src/pen.c
===================================================================
--- trunk/libgdiplus/src/pen.c 2005-11-01 22:03:40 UTC (rev 52462)
+++ trunk/libgdiplus/src/pen.c 2005-11-02 01:15:39 UTC (rev 52463)
@@ -89,13 +89,13 @@
{
switch (cap) {
+ case LineCapFlat:
case LineCapSquare:
return CAIRO_LINE_CAP_SQUARE;
case LineCapRound:
return CAIRO_LINE_CAP_ROUND;
- case LineCapFlat:
case LineCapTriangle:
case LineCapNoAnchor:
case LineCapSquareAnchor:
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches