27 |
|
|
28 |
#define OSD_SCALE |
#define OSD_SCALE |
29 |
|
|
30 |
#define OSD_SCALE_W 100 |
#define OSD_SCALE_W 120 |
31 |
#define OSD_SCALE_H 20 |
#define OSD_SCALE_H 20 |
32 |
|
|
33 |
#ifndef USE_CAIRO |
#ifndef USE_CAIRO |
451 |
|
|
452 |
int w = OSD_S_W, h = OSD_S_H; |
int w = OSD_S_W, h = OSD_S_H; |
453 |
if(priv->expanded) { |
if(priv->expanded) { |
|
/* ... and right of it the waypoint id */ |
|
454 |
cairo_text_extents_t extents; |
cairo_text_extents_t extents; |
455 |
|
|
456 |
/* determine content size */ |
/* determine content size */ |
745 |
/* first fill with transparency */ |
/* first fill with transparency */ |
746 |
cairo_t *cr = cairo_create(priv->scale); |
cairo_t *cr = cairo_create(priv->scale); |
747 |
cairo_set_operator(cr, CAIRO_OPERATOR_SOURCE); |
cairo_set_operator(cr, CAIRO_OPERATOR_SOURCE); |
748 |
// cairo_set_source_rgba(cr, 1.0, 0.0, 0.0, 0.0); |
cairo_set_source_rgba(cr, 1.0, 0.0, 0.0, 0.0); |
749 |
cairo_set_source_rgba(cr, 1.0, 0.0, 0.0, 0.2); |
// cairo_set_source_rgba(cr, 1.0, 0.0, 0.0, 0.2); |
750 |
cairo_paint(cr); |
cairo_paint(cr); |
751 |
cairo_set_operator(cr, CAIRO_OPERATOR_OVER); |
cairo_set_operator(cr, CAIRO_OPERATOR_OVER); |
752 |
|
|
775 |
cairo_text_extents_t extents; |
cairo_text_extents_t extents; |
776 |
cairo_text_extents (cr, dist_str, &extents); |
cairo_text_extents (cr, dist_str, &extents); |
777 |
|
|
778 |
|
cairo_set_source_rgb(cr, 1.0, 1.0, 1.0); |
779 |
cairo_move_to (cr, font_size/3, font_size); |
cairo_move_to (cr, font_size/3, font_size); |
780 |
cairo_show_text (cr, dist_str); |
cairo_text_path (cr, dist_str); |
781 |
|
cairo_set_line_width (cr, 2); |
782 |
|
cairo_stroke (cr); |
783 |
|
|
784 |
printf("height = %f, bearing = %f\n", extents.height, extents.y_bearing); |
cairo_set_source_rgb(cr, 0.0, 0.0, 0.0); |
785 |
|
cairo_move_to (cr, font_size/3, font_size); |
786 |
|
cairo_show_text (cr, dist_str); |
787 |
|
|
788 |
/* draw white line */ |
/* draw white line */ |
789 |
cairo_set_line_cap (cr, CAIRO_LINE_CAP_ROUND); |
cairo_set_line_cap (cr, CAIRO_LINE_CAP_ROUND); |
790 |
cairo_set_source_rgba(cr, 1.0, 1.0, 1.0, 1.0); |
cairo_set_source_rgba(cr, 1.0, 1.0, 1.0, 1.0); |
791 |
cairo_set_line_width (cr, 3); |
cairo_set_line_width (cr, 4); |
792 |
cairo_move_to (cr, 2, 2*font_size/3); |
cairo_move_to (cr, 2, 2*font_size/3); |
793 |
cairo_rel_line_to (cr, 0, 2*font_size/3); |
cairo_rel_line_to (cr, 0, 2*font_size/3); |
794 |
cairo_rel_line_to (cr, width_metric, 0); |
cairo_rel_line_to (cr, width_metric, 0); |