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 image_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 | 9 |
9 enum ImageCodec { | 10 enum ImageCodec { |
10 DEFAULT, | 11 DEFAULT, |
11 ROBUST_JPEG, | 12 ROBUST_JPEG, |
12 ROBUST_PNG, | 13 ROBUST_PNG, |
13 }; | 14 }; |
14 | 15 |
15 interface ImageDecoder { | 16 interface ImageDecoder { |
16 // Decodes image data to a raw skia bitmap. | 17 // Decodes image data to a raw skia bitmap. |
17 // | 18 // |
18 // 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 |
19 // |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 |
20 // 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|. |
21 // | 22 // |
22 // 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 |
23 // |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 |
24 // decoding failure and the |decoded_image| response is null. | 25 // decoding failure and the |decoded_image| response is null. |
25 DecodeImage(array<uint8> encoded_data, ImageCodec codec, bool shrink_to_fit, | 26 DecodeImage(array<uint8> encoded_data, ImageCodec codec, bool shrink_to_fit, |
26 int64 max_size_in_bytes) | 27 int64 max_size_in_bytes, gfx.mojom.Size desired_image_frame_size) |
27 => (skia.mojom.Bitmap? decoded_image); | 28 => (skia.mojom.Bitmap? decoded_image); |
28 }; | 29 }; |
OLD | NEW |