ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/Client.xs
(Generate patch)

Comparing deliantra/Deliantra-Client/Client.xs (file contents):
Revision 1.105 by root, Mon Jun 5 03:33:09 2006 UTC vs.
Revision 1.106 by root, Mon Jun 5 03:48:49 2006 UTC

86 86
87static void 87static void
88substitute_func (FcPattern *pattern, gpointer data) 88substitute_func (FcPattern *pattern, gpointer data)
89{ 89{
90 FcPatternAddBool (pattern, FC_HINTING , 1); 90 FcPatternAddBool (pattern, FC_HINTING , 1);
91#ifdef _WIN32
91 //FcPatternAddBool (pattern, FC_AUTOHINT, 1); 92 FcPatternAddBool (pattern, FC_AUTOHINT, 1);
93#else
92 FcPatternAddBool (pattern, FC_AUTOHINT, 0); 94 FcPatternAddBool (pattern, FC_AUTOHINT, 0);
95#endif
93} 96}
94 97
95static void 98static void
96layout_update_font (CFClient__Layout self) 99layout_update_font (CFClient__Layout self)
97{ 100{
422 { 425 {
423 ft2_fontmap = pango_ft2_font_map_new (); 426 ft2_fontmap = pango_ft2_font_map_new ();
424 pango_ft2_font_map_set_default_substitute ((PangoFT2FontMap *)ft2_fontmap, substitute_func, 0, 0); 427 pango_ft2_font_map_set_default_substitute ((PangoFT2FontMap *)ft2_fontmap, substitute_func, 0, 0);
425 ft2_context = pango_ft2_font_map_create_context ((PangoFT2FontMap *)ft2_fontmap); 428 ft2_context = pango_ft2_font_map_create_context ((PangoFT2FontMap *)ft2_fontmap);
426 } 429 }
427
428 { 430 {
429 cairo_font_options_t *fopt = cairo_font_options_create (); 431 cairo_font_options_t *fopt = cairo_font_options_create ();
430 cairo_fontmap = pango_cairo_font_map_get_default (); 432 cairo_fontmap = pango_cairo_font_map_get_default ();
431 cairo_context = pango_cairo_font_map_create_context ((PangoCairoFontMap *)cairo_fontmap); 433 cairo_context = pango_cairo_font_map_create_context ((PangoCairoFontMap *)cairo_fontmap);
434#ifdef _WIN32
435 // cairo looks like shit eaten twice on windows
436 cairo_font_options_set_antialias (fopt, CAIRO_ANTIALIAS_NONE);
437#else
432 cairo_font_options_set_antialias (fopt, CAIRO_ANTIALIAS_GRAY); 438 cairo_font_options_set_antialias (fopt, CAIRO_ANTIALIAS_GRAY);
439#endif
433 cairo_font_options_set_hint_style (fopt, CAIRO_HINT_STYLE_FULL); 440 cairo_font_options_set_hint_style (fopt, CAIRO_HINT_STYLE_FULL);
434 cairo_font_options_set_hint_metrics (fopt, CAIRO_HINT_METRICS_ON); 441 cairo_font_options_set_hint_metrics (fopt, CAIRO_HINT_METRICS_ON);
435 pango_cairo_context_set_font_options (cairo_context, fopt); 442 pango_cairo_context_set_font_options (cairo_context, fopt);
436 cairo_font_options_destroy (fopt); 443 cairo_font_options_destroy (fopt);
437 } 444 }
724MODULE = CFClient PACKAGE = CFClient::Layout 731MODULE = CFClient PACKAGE = CFClient::Layout
725 732
726CFClient::Layout 733CFClient::Layout
727new (SV *class, int rgba = 0) 734new (SV *class, int rgba = 0)
728 CODE: 735 CODE:
729#if _WIN32
730 //rgba = 0;//D makes text nicer, breaks TextView
731#endif
732 rgba=1;//D
733 New (0, RETVAL, 1, struct cf_layout); 736 New (0, RETVAL, 1, struct cf_layout);
734 737
735 RETVAL->pl = pango_layout_new (rgba ? cairo_context : ft2_context); 738 RETVAL->pl = pango_layout_new (rgba ? cairo_context : ft2_context);
736 RETVAL->rgba = rgba; 739 RETVAL->rgba = rgba;
737 RETVAL->r = 1.; 740 RETVAL->r = 1.;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines