1、下载
用bing或google查下cario,找到官网,下载开发包即可;现在gtk+的开发包已经包含了cario,我下载的就是gtk+开发包
2、解压到目录,假设为CarioPathDir
3、新建一个c++工程,console级别的
4、新增一个文件main.cpp,写入以下内容:
#include <gtk/gtk.h>
#include "cairo-features.h"
#include <cairo.h>
void test_gtk();
void test_cairo_gernal();
int main(int argc, char *argv[]) {
test_cairo_gernal();
return 0;
}
void test_gtk(int argc, char *argv[])
{
GtkWidget *window;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_widget_show (window);
gtk_main ();
}
void test_cairo_gernal()
{
cairo_surface_t *surface;
cairo_t *cr;
surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 390, 60);
cr = cairo_create(surface);
cairo_set_source_rgb(cr, 0, 0, 0);
cairo_select_font_face(cr, "Sans", CAIRO_FONT_SLANT_NORMAL,
CAIRO_FONT_WEIGHT_NORMAL);
cairo_set_font_size(cr, 40.0);
cairo_move_to(cr, 10.0, 50.0);
cairo_show_text(cr, "Disziplin ist Macht.");
cairo_surface_write_to_png(surface, "image.png");
cairo_destroy(cr);
cairo_surface_destroy(surface);
}
以上有些代码是测试gtk+的,可以删除
5、设置VS的vc++目录的可执行文件目录
加上:CarioPathDir\bin
6、设置VS的vc++目录的包含目录
加上:
CarioPathDir\include\gtk-3.0
CarioPathDir\include\cario
CarioPathDir\include\pango-1.0
CarioPathDir\lib\glib-2.0\include
CarioPathDir\include\glib-2.0
CarioPathDir\include\gtk-pixbuf-2.0
CarioPathDir\include\freetype2
CarioPathDir\include
CarioPathDir\include\pixman-1
CarioPathDir\include\atk-1.0
7、设置VS的c/c++的链接器-〉常规-〉附加库目录
输入:
CarioPathDir\lib
8、设置VS的c/c++的链接器-〉输入设置
增加如下:
gtk-win32-3.0.lib
gdk-win32-3.0.lib
pangocairo-1.0.lib
pangoft2-1.0.lib
gio-2.0.lib
gobject-2.0.lib
glib-2.0.lib
fontconfig.lib
pangowin32-1.0.lib
pango-1.0.lib
atk-1.0.lib
cairo.lib
gdk_pixbuf-2.0.lib
以上和gtk+有关的可以不用输入
这样就应该可以编译了,当然如果要直接在vs中运行,还要设置
CarioPathDir\bin目录到windows的path环境中。