Index: ui/gfx/image/image_util_ios.mm |
diff --git a/ui/gfx/image/image_util_ios.mm b/ui/gfx/image/image_util_ios.mm |
new file mode 100644 |
index 0000000000000000000000000000000000000000..a849e971fa92b2be2cecd9da9d6f81060feddfd4 |
--- /dev/null |
+++ b/ui/gfx/image/image_util_ios.mm |
@@ -0,0 +1,39 @@ |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include <UIKit/UIKit.h> |
+ |
+#include "ui/gfx/image/image.h" |
+#include "ui/gfx/image/image_util.h" |
+ |
+#include "base/logging.h" |
+ |
+namespace gfx { |
+ |
+Image* ImageFromPNGEncodedData(const unsigned char* input, size_t input_size) { |
Robert Sesek
2012/09/13 20:37:48
So now how is this different from the non-iOS impl
|
+ Image* image = new Image(input, input_size); |
+ return image; |
+} |
+ |
Robert Sesek
2012/09/13 20:37:48
nit: extra blank
|
+ |
+bool PNGEncodedDataFromImage(const Image& image, |
+ std::vector<unsigned char>* dst) { |
+ *dst = *image.ToImagePNG(); |
+ return !dst->empty(); |
+} |
+ |
+bool JPEGEncodedDataFromImage(const Image& image, |
+ int quality, |
+ std::vector<unsigned char>* dst) { |
+ NSData* data = UIImageJPEGRepresentation(image.ToUIImage(), quality / 100.0); |
+ |
+ if ([data length] == 0) |
+ return false; |
+ |
+ dst->resize([data length]); |
+ [data getBytes:&dst->at(0) length:[data length]]; |
+ return true; |
+} |
+ |
+} // end namespace gfx |