diff options
author | crupest <crupest@outlook.com> | 2022-06-09 13:50:28 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2022-06-09 13:50:28 +0800 |
commit | 8fc2be2261f753eab1ff04a26bf7fbbcfb8977a0 (patch) | |
tree | 24c79e360307b263c8668262aaea978ffd817f05 /include | |
parent | ccf67fcbd182d739ac73c0beb5380c6862811d22 (diff) | |
download | cru-8fc2be2261f753eab1ff04a26bf7fbbcfb8977a0.tar.gz cru-8fc2be2261f753eab1ff04a26bf7fbbcfb8977a0.tar.bz2 cru-8fc2be2261f753eab1ff04a26bf7fbbcfb8977a0.zip |
...
Diffstat (limited to 'include')
-rw-r--r-- | include/cru/platform/graphics/cairo/CairoImageFactory.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/cru/platform/graphics/cairo/CairoImageFactory.h b/include/cru/platform/graphics/cairo/CairoImageFactory.h new file mode 100644 index 00000000..6bc41309 --- /dev/null +++ b/include/cru/platform/graphics/cairo/CairoImageFactory.h @@ -0,0 +1,18 @@ +#pragma once +#include "../ImageFactory.h" +#include "CairoResource.h" + +namespace cru::platform::graphics::cairo { +class CairoImageFactory : public CairoResource, public virtual IImageFactory { + public: + CairoImageFactory(CairoGraphicsFactory* factory); + ~CairoImageFactory() override; + + public: + std::unique_ptr<IImage> DecodeFromStream(io::Stream* stream) override; + void EncodeToStream(IImage* image, io::Stream* stream, ImageFormat format, + float quality) override; + + std::unique_ptr<IImage> CreateBitmap(int width, int height) override; +}; +} // namespace cru::platform::graphics::cairo |