aboutsummaryrefslogtreecommitdiff
path: root/src/platform/graphics/Image.cpp
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-05-07 20:53:57 +0800
committerGitHub <noreply@github.com>2022-05-07 20:53:57 +0800
commitee5aa17e44cb36b386e89032cab96caf87b5b524 (patch)
treea7cef6c60f55e3870900016e0f1a4efe578efbf0 /src/platform/graphics/Image.cpp
parent5bc684dcc1d121bf6e02d0800174c7977c72d101 (diff)
parentcb850a6d6d13fc5b2c0cdd8773e368e23252c459 (diff)
downloadcru-ee5aa17e44cb36b386e89032cab96caf87b5b524.tar.gz
cru-ee5aa17e44cb36b386e89032cab96caf87b5b524.tar.bz2
cru-ee5aa17e44cb36b386e89032cab96caf87b5b524.zip
Merge pull request #54 from crupest/create-image
Diffstat (limited to 'src/platform/graphics/Image.cpp')
-rw-r--r--src/platform/graphics/Image.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/platform/graphics/Image.cpp b/src/platform/graphics/Image.cpp
new file mode 100644
index 00000000..2c787dd7
--- /dev/null
+++ b/src/platform/graphics/Image.cpp
@@ -0,0 +1,15 @@
+#include "cru/platform/graphics/Image.h"
+
+#include "cru/platform/graphics/Factory.h"
+#include "cru/platform/graphics/ImageFactory.h"
+#include "cru/platform/graphics/Painter.h"
+
+namespace cru::platform::graphics {
+std::unique_ptr<IImage> IImage::CloneToBitmap() {
+ auto image = GetGraphicsFactory()->GetImageFactory()->CreateBitmap(
+ GetWidth(), GetHeight());
+ auto painter = image->CreatePainter();
+ painter->DrawImage(Point{}, this);
+ return image;
+}
+} // namespace cru::platform::graphics