|
1 | 1 | %!TEX root = io2d.tex
|
2 | 2 | \rSec0 [imagesurface] {Class \tcode{image_surface}}
|
3 | 3 |
|
| 4 | +\rSec1 [imagesurface.summary] {\tcode{image_surface} summary} |
| 5 | + |
| 6 | +\pnum |
| 7 | +\indexlibrary{\idxcode{image_surface}} |
| 8 | +The class \tcode{image_surface} derives from the \tcode{surface} class and provides an interface to a raster graphics data graphics resource. |
| 9 | + |
| 10 | +\pnum |
| 11 | +\enternote |
| 12 | +Because of the functionality it provides and what it can be used for, it is expected that developers familiar with other graphics technologies will think of the \tcode{image_surface} class as being a form of \term{render target}. This is intentional, though this \documenttypename{} does not formally define or use that term to avoid any minor ambiguities and differences in its meaning between the various graphics technologies that do use the term render target. |
| 13 | +\exitnote |
| 14 | + |
4 | 15 | \rSec1 [imagesurface.synopsis] {\tcode{image_surface} synopsis}
|
5 | 16 |
|
6 | 17 | \begin{codeblock}
|
|
9 | 20 | public:
|
10 | 21 | // \ref{imagesurface.cons}, construct/copy/move/destroy:
|
11 | 22 | image_surface() = delete;
|
12 |
| - image_surface(const image_surface&) = delete; |
13 |
| - image_surface& operator=(const image_surface&) = delete; |
14 |
| - image_surface(image_surface&& other) noexcept; |
15 |
| - image_surface& operator=(image_surface&& other) noexcept; |
16 | 23 | image_surface(experimental::io2d::format fmt, int width, int height);
|
17 |
| - image_surface(experimental::io2d::format fmt, int width, int height, |
18 |
| - error_code& ec) noexcept; |
19 |
| - image_surface(vector<unsigned char>& data, experimental::io2d::format fmt, |
20 |
| - int width, int height); |
21 |
| - image_surface(vector<unsigned char>& data, experimental::io2d::format fmt, |
22 |
| - int width, int height, error_code& ec) noexcept; |
23 |
| - virtual ~image_surface(); |
| 24 | + image_surface(filesystem::path f, experimental::io2d::format fmt); |
24 | 25 |
|
25 |
| - // \ref{imagesurface.modifiers}, modifiers: |
26 |
| - void data(const vector<unsigned char>& data); |
27 |
| - void data(const vector<unsigned char>& data, error_code& ec) noexcept; |
28 |
| - vector<unsigned char> data(); |
29 |
| - vector<unsigned char> data(error_code& ec) noexcept; |
| 26 | + // \ref{imagesurface.members}, members: |
| 27 | + void save(filesystem::path p); |
30 | 28 |
|
31 | 29 | // \ref{imagesurface.observers}, observers:
|
32 | 30 | experimental::io2d::format format() const noexcept;
|
|
37 | 35 | } } } }
|
38 | 36 | \end{codeblock}
|
39 | 37 |
|
40 |
| -\rSec1 [imagesurface.intro] {\tcode{image_surface} Description} |
41 |
| - |
42 |
| -\pnum |
43 |
| -\indexlibrary{\idxcode{image_surface}} |
44 |
| -The class \tcode{image_surface} derives from the \tcode{surface} class and provides an interface to a raster graphics data graphics resource. |
45 |
| - |
46 |
| -\pnum |
47 |
| -\enternote |
48 |
| -Because of the functionality it provides and what it can be used for, it is expected that developers familiar with other graphics technologies will think of the \tcode{image_surface} class as being a form of \term{render target}. This is intentional, though this \documenttypename{} does not formally define or use that term to avoid any minor ambiguities and differences in its meaning between the various graphics technologies that do use it. |
49 |
| -\exitnote |
50 |
| - |
51 | 38 | \rSec1 [imagesurface.cons] {\tcode{image_surface} constructors and assignment operators}
|
52 | 39 |
|
53 | 40 | \indexlibrary{\idxcode{image_surface}!constructor}
|
|
0 commit comments