1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
extern crate cairo_sys as ffi;
extern crate libc;
extern crate c_vec;
#[cfg(feature = "glib")]
#[macro_use]
extern crate glib;
pub use ffi::enums;
pub use ffi::cairo_rectangle_t as Rectangle;
pub use context::{
Context,
RectangleVec,
};
pub use paths::{
Path,
PathSegments,
PathSegment
};
pub use enums::{
Status,
Antialias,
Content,
Extend,
FillRule,
Filter,
LineCap,
LineJoin,
Operator,
PathDataType,
Format,
RegionOverlap,
SurfaceType,
};
pub use error::{
BorrowError,
IoError,
};
pub use patterns::{
Pattern,
Gradient,
LinearGradient,
RadialGradient,
SolidPattern,
SurfacePattern,
};
#[cfg(feature = "v1_12")]
pub use patterns::{
Mesh,
MeshCorner,
};
pub use font::{
FontFace,
FontType,
FontSlant,
FontWeight,
ScaledFont,
FontOptions,
Glyph,
FontExtents,
TextExtents,
TextCluster,
};
pub use matrices::{
Matrix,
MatrixTrait,
};
pub use rectangle::RectangleInt;
pub use region::Region;
pub use surface::Surface;
pub use image_surface::{
ImageSurface,
ImageSurfaceData,
};
pub use pdf_surface::PDFSurface;
#[cfg(feature = "xcb")]
pub use xcb::{
XCBConnection,
XCBSurface,
Device,
XCBDrawable,
XCBPixmap,
XCBRenderPictFormInfo,
XCBScreen,
XCBVisualType,
};
pub mod prelude;
mod font;
mod context;
mod error;
mod pdf_surface;
mod image_surface;
#[cfg(feature = "png")]
mod image_surface_png;
mod paths;
mod patterns;
mod rectangle;
mod region;
mod surface;
mod matrices;
#[cfg(feature = "xcb")]
mod xcb;
#[cfg(windows)]
mod win32_surface;
#[cfg(windows)]
pub use win32_surface::Win32Surface;