Rev 1892 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1892 | Rev 3959 | ||
---|---|---|---|
1 | /* cairo - a vector graphics library with display and print output |
1 | /* cairo - a vector graphics library with display and print output |
2 | * |
2 | * |
3 | * Copyright © 2002 University of Southern California |
3 | * Copyright © 2002 University of Southern California |
4 | * |
4 | * |
5 | * This library is free software; you can redistribute it and/or |
5 | * This library is free software; you can redistribute it and/or |
6 | * modify it either under the terms of the GNU Lesser General Public |
6 | * modify it either under the terms of the GNU Lesser General Public |
7 | * License version 2.1 as published by the Free Software Foundation |
7 | * License version 2.1 as published by the Free Software Foundation |
8 | * (the "LGPL") or, at your option, under the terms of the Mozilla |
8 | * (the "LGPL") or, at your option, under the terms of the Mozilla |
9 | * Public License Version 1.1 (the "MPL"). If you do not alter this |
9 | * Public License Version 1.1 (the "MPL"). If you do not alter this |
10 | * notice, a recipient may use your version of this file under either |
10 | * notice, a recipient may use your version of this file under either |
11 | * the MPL or the LGPL. |
11 | * the MPL or the LGPL. |
12 | * |
12 | * |
13 | * You should have received a copy of the LGPL along with this library |
13 | * You should have received a copy of the LGPL along with this library |
14 | * in the file COPYING-LGPL-2.1; if not, write to the Free Software |
14 | * in the file COPYING-LGPL-2.1; if not, write to the Free Software |
15 | * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA |
15 | * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA |
16 | * You should have received a copy of the MPL along with this library |
16 | * You should have received a copy of the MPL along with this library |
17 | * in the file COPYING-MPL-1.1 |
17 | * in the file COPYING-MPL-1.1 |
18 | * |
18 | * |
19 | * The contents of this file are subject to the Mozilla Public License |
19 | * The contents of this file are subject to the Mozilla Public License |
20 | * Version 1.1 (the "License"); you may not use this file except in |
20 | * Version 1.1 (the "License"); you may not use this file except in |
21 | * compliance with the License. You may obtain a copy of the License at |
21 | * compliance with the License. You may obtain a copy of the License at |
22 | * http://www.mozilla.org/MPL/ |
22 | * http://www.mozilla.org/MPL/ |
23 | * |
23 | * |
24 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY |
24 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY |
25 | * OF ANY KIND, either express or implied. See the LGPL or the MPL for |
25 | * OF ANY KIND, either express or implied. See the LGPL or the MPL for |
26 | * the specific language governing rights and limitations. |
26 | * the specific language governing rights and limitations. |
27 | * |
27 | * |
28 | * The Original Code is the cairo graphics library. |
28 | * The Original Code is the cairo graphics library. |
29 | * |
29 | * |
30 | * The Initial Developer of the Original Code is University of Southern |
30 | * The Initial Developer of the Original Code is University of Southern |
31 | * California. |
31 | * California. |
32 | * |
32 | * |
33 | * Contributor(s): |
33 | * Contributor(s): |
34 | * Carl D. Worth |
34 | * Carl D. Worth |
35 | */ |
35 | */ |
36 | 36 | ||
37 | #ifndef CAIRO_PDF_H |
37 | #ifndef CAIRO_PDF_H |
38 | #define CAIRO_PDF_H |
38 | #define CAIRO_PDF_H |
39 | 39 | ||
40 | #include "cairo.h" |
40 | #include "cairo.h" |
41 | 41 | ||
42 | #if CAIRO_HAS_PDF_SURFACE |
42 | #if CAIRO_HAS_PDF_SURFACE |
43 | 43 | ||
44 | CAIRO_BEGIN_DECLS |
44 | CAIRO_BEGIN_DECLS |
45 | 45 | ||
46 | /** |
46 | /** |
47 | * cairo_pdf_version_t: |
47 | * cairo_pdf_version_t: |
48 | * @CAIRO_PDF_VERSION_1_4: The version 1.4 of the PDF specification. |
48 | * @CAIRO_PDF_VERSION_1_4: The version 1.4 of the PDF specification. (Since 1.10) |
49 | * @CAIRO_PDF_VERSION_1_5: The version 1.5 of the PDF specification. |
49 | * @CAIRO_PDF_VERSION_1_5: The version 1.5 of the PDF specification. (Since 1.10) |
50 | * |
50 | * |
51 | * #cairo_pdf_version_t is used to describe the version number of the PDF |
51 | * #cairo_pdf_version_t is used to describe the version number of the PDF |
52 | * specification that a generated PDF file will conform to. |
52 | * specification that a generated PDF file will conform to. |
53 | * |
53 | * |
54 | * Since 1.10 |
54 | * Since: 1.10 |
55 | */ |
55 | **/ |
56 | typedef enum _cairo_pdf_version { |
56 | typedef enum _cairo_pdf_version { |
57 | CAIRO_PDF_VERSION_1_4, |
57 | CAIRO_PDF_VERSION_1_4, |
58 | CAIRO_PDF_VERSION_1_5 |
58 | CAIRO_PDF_VERSION_1_5 |
59 | } cairo_pdf_version_t; |
59 | } cairo_pdf_version_t; |
60 | 60 | ||
61 | cairo_public cairo_surface_t * |
61 | cairo_public cairo_surface_t * |
62 | cairo_pdf_surface_create (const char *filename, |
62 | cairo_pdf_surface_create (const char *filename, |
63 | double width_in_points, |
63 | double width_in_points, |
64 | double height_in_points); |
64 | double height_in_points); |
65 | 65 | ||
66 | cairo_public cairo_surface_t * |
66 | cairo_public cairo_surface_t * |
67 | cairo_pdf_surface_create_for_stream (cairo_write_func_t write_func, |
67 | cairo_pdf_surface_create_for_stream (cairo_write_func_t write_func, |
68 | void *closure, |
68 | void *closure, |
69 | double width_in_points, |
69 | double width_in_points, |
70 | double height_in_points); |
70 | double height_in_points); |
71 | 71 | ||
72 | cairo_public void |
72 | cairo_public void |
73 | cairo_pdf_surface_restrict_to_version (cairo_surface_t *surface, |
73 | cairo_pdf_surface_restrict_to_version (cairo_surface_t *surface, |
74 | cairo_pdf_version_t version); |
74 | cairo_pdf_version_t version); |
75 | 75 | ||
76 | cairo_public void |
76 | cairo_public void |
77 | cairo_pdf_get_versions (cairo_pdf_version_t const **versions, |
77 | cairo_pdf_get_versions (cairo_pdf_version_t const **versions, |
78 | int *num_versions); |
78 | int *num_versions); |
79 | 79 | ||
80 | cairo_public const char * |
80 | cairo_public const char * |
81 | cairo_pdf_version_to_string (cairo_pdf_version_t version); |
81 | cairo_pdf_version_to_string (cairo_pdf_version_t version); |
82 | 82 | ||
83 | cairo_public void |
83 | cairo_public void |
84 | cairo_pdf_surface_set_size (cairo_surface_t *surface, |
84 | cairo_pdf_surface_set_size (cairo_surface_t *surface, |
85 | double width_in_points, |
85 | double width_in_points, |
86 | double height_in_points); |
86 | double height_in_points); |
87 | 87 | ||
88 | CAIRO_END_DECLS |
88 | CAIRO_END_DECLS |
89 | 89 | ||
90 | #else /* CAIRO_HAS_PDF_SURFACE */ |
90 | #else /* CAIRO_HAS_PDF_SURFACE */ |
91 | # error Cairo was not compiled with support for the pdf backend |
91 | # error Cairo was not compiled with support for the pdf backend |
92 | #endif /* CAIRO_HAS_PDF_SURFACE */ |
92 | #endif /* CAIRO_HAS_PDF_SURFACE */ |
93 | 93 | ||
94 | #endif /* CAIRO_PDF_H */ |
94 | #endif /* CAIRO_PDF_H */ |