Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(459)

Unified Diff: ui/gfx/image/image_skia_operations.cc

Issue 10823358: image: Specify the resize-method when resizing ImageSkia. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: deep-copy Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/gfx/image/image_skia_operations.cc
diff --git a/ui/gfx/image/image_skia_operations.cc b/ui/gfx/image/image_skia_operations.cc
index 23f93f41d332cf688067f79b5cc5e4619548d284..c47b89b14d764b7d5c58783c69ff98ac66d1c7ec 100644
--- a/ui/gfx/image/image_skia_operations.cc
+++ b/ui/gfx/image/image_skia_operations.cc
@@ -308,8 +308,10 @@ class ExtractSubsetImageSource: public gfx::ImageSkiaSource {
class ResizeSource : public ImageSkiaSource {
public:
ResizeSource(const ImageSkia& source,
+ skia::ImageOperations::ResizeMethod method,
const Size& target_dip_size)
: source_(source),
+ resize_method_(method),
target_dip_size_(target_dip_size) {
}
virtual ~ResizeSource() {}
@@ -325,7 +327,7 @@ class ResizeSource : public ImageSkiaSource {
const Size target_pixel_size(target_dip_size_.Scale(scale));
const SkBitmap resized = skia::ImageOperations::Resize(
image_rep.sk_bitmap(),
- skia::ImageOperations::RESIZE_BEST,
+ resize_method_,
target_pixel_size.width(),
target_pixel_size.height());
return ImageSkiaRep(resized, scale_factor);
@@ -333,6 +335,7 @@ class ResizeSource : public ImageSkiaSource {
private:
const ImageSkia source_;
+ skia::ImageOperations::ResizeMethod resize_method_;
const Size target_dip_size_;
DISALLOW_COPY_AND_ASSIGN(ResizeSource);
@@ -434,9 +437,12 @@ ImageSkia ImageSkiaOperations::ExtractSubset(const ImageSkia& image,
}
// static
-ImageSkia ImageSkiaOperations::CreateResizedImage(const ImageSkia& source,
- const Size& target_dip_size) {
- return ImageSkia(new ResizeSource(source, target_dip_size), target_dip_size);
+ImageSkia ImageSkiaOperations::CreateResizedImage(
+ const ImageSkia& source,
+ skia::ImageOperations::ResizeMethod method,
+ const Size& target_dip_size) {
+ return ImageSkia(new ResizeSource(source, method, target_dip_size),
+ target_dip_size);
}
// static
« chrome/browser/chromeos/login/wallpaper_manager.cc ('K') | « ui/gfx/image/image_skia_operations.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698