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
|
#include "fitz.h"
static void fz_null_free_user(void *user) {}
static void fz_null_fill_path(void *user, fz_path *path, int even_odd, fz_matrix ctm, fz_colorspace *colorspace, float *color, float alpha) {}
static void fz_null_stroke_path(void *user, fz_path *path, fz_stroke_state *stroke, fz_matrix ctm, fz_colorspace *colorspace, float *color, float alpha) {}
static void fz_null_clip_path(void *user, fz_path *path, int even_odd, fz_matrix ctm) {}
static void fz_null_clip_stroke_path(void *user, fz_path *path, fz_stroke_state *stroke, fz_matrix ctm) {}
static void fz_null_fill_text(void *user, fz_text *text, fz_matrix ctm, fz_colorspace *colorspace, float *color, float alpha) {}
static void fz_null_stroke_text(void *user, fz_text *text, fz_stroke_state *stroke, fz_matrix ctm, fz_colorspace *colorspace, float *color, float alpha) {}
static void fz_null_clip_text(void *user, fz_text *text, fz_matrix ctm, int accumulate) {}
static void fz_null_clip_stroke_text(void *user, fz_text *text, fz_stroke_state *stroke, fz_matrix ctm) {}
static void fz_null_ignore_text(void *user, fz_text *text, fz_matrix ctm) {}
static void fz_null_pop_clip(void *user) {}
static void fz_null_fill_shade(void *user, fz_shade *shade, fz_matrix ctm, float alpha) {}
static void fz_null_fill_image(void *user, fz_pixmap *image, fz_matrix ctm, float alpha) {}
static void fz_null_fill_image_mask(void *user, fz_pixmap *image, fz_matrix ctm, fz_colorspace *colorspace, float *color, float alpha) {}
static void fz_null_clip_image_mask(void *user, fz_pixmap *image, fz_matrix ctm) {}
static void fz_null_begin_mask(void *user, fz_rect r, int luminosity, fz_colorspace *colorspace, float *bc) {}
static void fz_null_end_mask(void *user) {}
static void fz_null_begin_group(void *user, fz_rect r, int isolated, int knockout, fz_blendmode blendmode, float alpha) {}
static void fz_null_end_group(void *user) {}
static void fz_null_begin_tile(void *user, fz_rect area, fz_rect view, float xstep, float ystep, fz_matrix ctm) {}
static void fz_null_end_tile(void *user) {}
fz_device *
fz_new_device(void *user)
{
fz_device *dev = fz_malloc(sizeof(fz_device));
memset(dev, 0, sizeof(fz_device));
dev->hints = 0;
dev->user = user;
dev->free_user = fz_null_free_user;
dev->fill_path = fz_null_fill_path;
dev->stroke_path = fz_null_stroke_path;
dev->clip_path = fz_null_clip_path;
dev->clip_stroke_path = fz_null_clip_stroke_path;
dev->fill_text = fz_null_fill_text;
dev->stroke_text = fz_null_stroke_text;
dev->clip_text = fz_null_clip_text;
dev->clip_stroke_text = fz_null_clip_stroke_text;
dev->ignore_text = fz_null_ignore_text;
dev->fill_shade = fz_null_fill_shade;
dev->fill_image = fz_null_fill_image;
dev->fill_image_mask = fz_null_fill_image_mask;
dev->clip_image_mask = fz_null_clip_image_mask;
dev->pop_clip = fz_null_pop_clip;
dev->begin_mask = fz_null_begin_mask;
dev->end_mask = fz_null_end_mask;
dev->begin_group = fz_null_begin_group;
dev->end_group = fz_null_end_group;
dev->begin_tile = fz_null_begin_tile;
dev->end_tile = fz_null_end_tile;
return dev;
}
void
fz_free_device(fz_device *dev)
{
if (dev->free_user)
dev->free_user(dev->user);
fz_free(dev);
}
|