| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 module image_decoder.mojom; | |
| 6 | |
| 7 import "skia/public/interfaces/bitmap.mojom"; | |
| 8 import "ui/gfx/geometry/mojo/geometry.mojom"; | |
| 9 | |
| 10 enum ImageCodec { | |
| 11 DEFAULT, | |
| 12 ROBUST_JPEG, | |
| 13 ROBUST_PNG, | |
| 14 }; | |
| 15 | |
| 16 interface ImageDecoder { | |
| 17 // Decodes image data to a raw skia bitmap. | |
| 18 // | |
| 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 | |
| 21 // successively until its total size no longer exceeds |max_size_in_bytes|. | |
| 22 // | |
| 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 | |
| 25 // decoding failure and the |decoded_image| response is null. | |
| 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) | |
| 28 => (skia.mojom.Bitmap? decoded_image); | |
| 29 }; | |
| OLD | NEW |