OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 module image_decoder.mojom; | 5 module data_decoder.mojom; |
6 | 6 |
7 import "skia/public/interfaces/bitmap.mojom"; | 7 import "skia/public/interfaces/bitmap.mojom"; |
8 import "ui/gfx/geometry/mojo/geometry.mojom"; | 8 import "ui/gfx/geometry/mojo/geometry.mojom"; |
9 | 9 |
10 enum ImageCodec { | 10 enum ImageCodec { |
11 DEFAULT, | 11 DEFAULT, |
12 ROBUST_JPEG, | 12 ROBUST_JPEG, |
13 ROBUST_PNG, | 13 ROBUST_PNG, |
14 }; | 14 }; |
15 | 15 |
16 interface ImageDecoder { | 16 interface ImageDecoder { |
17 // Decodes image data to a raw skia bitmap. | 17 // Decodes image data to a raw skia bitmap. |
18 // | 18 // |
19 // If the total size of the decoded image data in bytes exceeds | 19 // If the total size of the decoded image data in bytes exceeds |
20 // |max_size_in_bytes| and |shrink_to_fit| is true, the image is halved | 20 // |max_size_in_bytes| and |shrink_to_fit| is true, the image is halved |
21 // successively until its total size no longer exceeds |max_size_in_bytes|. | 21 // successively until its total size no longer exceeds |max_size_in_bytes|. |
22 // | 22 // |
23 // If the total size of the decoded image data in bytes exceeds | 23 // If the total size of the decoded image data in bytes exceeds |
24 // |max_size_in_bytes| and |shrink_to_fit| is false, this is treated as a | 24 // |max_size_in_bytes| and |shrink_to_fit| is false, this is treated as a |
25 // decoding failure and the |decoded_image| response is null. | 25 // decoding failure and the |decoded_image| response is null. |
26 DecodeImage(array<uint8> encoded_data, ImageCodec codec, bool shrink_to_fit, | 26 DecodeImage(array<uint8> encoded_data, ImageCodec codec, bool shrink_to_fit, |
27 int64 max_size_in_bytes, gfx.mojom.Size desired_image_frame_size) | 27 int64 max_size_in_bytes, gfx.mojom.Size desired_image_frame_size) |
28 => (skia.mojom.Bitmap? decoded_image); | 28 => (skia.mojom.Bitmap? decoded_image); |
29 }; | 29 }; |
OLD | NEW |