用cario画一条直线的sample
时间: 2023-08-21 08:01:55 浏览: 48
以下是用Cairo绘制一条直线的示例代码:
```
#include <cairo.h>
int main(int argc, char *argv[]) {
cairo_surface_t *surface;
cairo_t *cr;
cairo_status_t status;
/* 创建一个PNG图像的Cairo表面 */
surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 120, 120);
/* 创建一个Cairo绘图上下文 */
cr = cairo_create(surface);
/* 设置线宽为2个像素 */
cairo_set_line_width(cr, 2);
/* 设置线的颜色为红色 */
cairo_set_source_rgb(cr, 1.0, 0.0, 0.0);
/* 移动画笔到起点 */
cairo_move_to(cr, 10, 10);
/* 绘制直线到终点 */
cairo_line_to(cr, 110, 110);
/* 绘制直线 */
cairo_stroke(cr);
/* 将图像保存到文件 */
status = cairo_surface_write_to_png(surface, "line.png");
/* 销毁Cairo绘图上下文和表面 */
cairo_destroy(cr);
cairo_surface_destroy(surface);
return 0;
}
```
这段代码会在当前目录下生成一个名为“line.png”的PNG图像文件,其中包含一条起点为(10, 10)、终点为(110, 110)的红色直线。