OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2011, Google Inc. All rights reserved. | 2 * Copyright (c) 2011, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 | 115 |
116 bool success = WebPEncode(&config, &picture); | 116 bool success = WebPEncode(&config, &picture); |
117 WebPPictureFree(&picture); | 117 WebPPictureFree(&picture); |
118 return success; | 118 return success; |
119 } | 119 } |
120 | 120 |
121 bool WEBPImageEncoder::encode(const SkBitmap& bitmap, int quality, Vector<unsign
ed char>* output) | 121 bool WEBPImageEncoder::encode(const SkBitmap& bitmap, int quality, Vector<unsign
ed char>* output) |
122 { | 122 { |
123 SkAutoLockPixels bitmapLock(bitmap); | 123 SkAutoLockPixels bitmapLock(bitmap); |
124 | 124 |
125 if (bitmap.config() != SkBitmap::kARGB_8888_Config) | 125 if (bitmap.config() != SkBitmap::kARGB_8888_Config || !bitmap.getPixels()) |
126 return false; // Only support 32 bit/pixel skia bitmaps. | 126 return false; // Only support 32 bit/pixel skia bitmaps. |
127 | 127 |
128 return encodePixels(IntSize(bitmap.width(), bitmap.height()), static_cast<un
signed char *>(bitmap.getPixels()), true, quality, output); | 128 return encodePixels(IntSize(bitmap.width(), bitmap.height()), static_cast<un
signed char *>(bitmap.getPixels()), true, quality, output); |
129 } | 129 } |
130 | 130 |
131 bool WEBPImageEncoder::encode(const ImageData& imageData, int quality, Vector<un
signed char>* output) | 131 bool WEBPImageEncoder::encode(const ImageData& imageData, int quality, Vector<un
signed char>* output) |
132 { | 132 { |
133 return encodePixels(imageData.size(), imageData.data()->data(), false, quali
ty, output); | 133 return encodePixels(imageData.size(), imageData.data()->data(), false, quali
ty, output); |
134 } | 134 } |
135 | 135 |
136 } // namespace WebCore | 136 } // namespace WebCore |
137 | 137 |
138 #endif | 138 #endif |
OLD | NEW |