ImageDecoder (BitmapFactory 2.0)
Bug: 63909536 Bug: 63908092 Test: CTS: I0f36ce34c968fd7fae4d8edebabea3a421859615 One-pager: https://docs.google.com/document/d/1IWSdXb5O9lu-Zbj7SaNWo5pS7-FHlonFnqazjnecozM/ Design doc: https://docs.google.com/document/d/15S6DSAV4EwOuJLv29UC_9cdSGdPg3KvOJVn2EHoP3fw/ ImageDecoder is designed to streamline certain patterns of BitmapFactory use: - choosing sample size based on actual dimensions - choosing a specific output size - post-processing (e.g. for rounded corners) - copying to HARDWARE - decode directly to ashmem - creating a Drawable - use as an alpha mask - save RAM (e.g. use RGB_565) In addition, it will include new features: - animated drawables (TODO) - report failures *and* optionally create a partial image - crop Add PostProcess to handle post-processing. It is separate from ImageDecoder so that it may be used in the future by other commands that might want something similar (e.g. capturing a View). Consolidate NinePatch code for sharing between BitmapFactory and ImageDecoder. Some features left out of this CL: - Create from ContentResolver + URI - animation - report more info in ImageInfo - more overloads (e.g. null OnHeaderDecodedListener) Change-Id: Icf011dc1b97b492788e47cf51fcf8abe8e9c7b88
Loading
Please register or sign in to comment