瀏覽代碼

PNGLoader: Add load_png_from_memory method

Conrad Pankoff 5 年之前
父節點
當前提交
bfde6acd8c
共有 2 個文件被更改,包括 9 次插入0 次删除
  1. 8 0
      Libraries/LibDraw/PNGLoader.cpp
  2. 1 0
      Libraries/LibDraw/PNGLoader.h

+ 8 - 0
Libraries/LibDraw/PNGLoader.cpp

@@ -112,6 +112,14 @@ RefPtr<GraphicsBitmap> load_png(const StringView& path)
     return bitmap;
 }
 
+RefPtr<GraphicsBitmap> load_png_from_memory(const u8* data, size_t length)
+{
+    auto bitmap = load_png_impl(data, length);
+    if (bitmap)
+        bitmap->set_mmap_name(String::format("GraphicsBitmap [%dx%d] - Decoded PNG: <memory>", bitmap->width(), bitmap->height()));
+    return bitmap;
+}
+
 [[gnu::always_inline]] static inline u8 paeth_predictor(int a, int b, int c)
 {
     int p = a + b - c;

+ 1 - 0
Libraries/LibDraw/PNGLoader.h

@@ -3,3 +3,4 @@
 #include <LibDraw/GraphicsBitmap.h>
 
 RefPtr<GraphicsBitmap> load_png(const StringView& path);
+RefPtr<GraphicsBitmap> load_png_from_memory(const u8*, size_t);