Separate Simple Backend creation from initialization.
[chromium-blink-merge.git] / ui / gfx / image / canvas_image_source.cc
blob747625ac60d2b8a2087915e6c4fdd058b6c003c2
1 // Copyright (c) 2012 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.
5 #include "ui/gfx/image/canvas_image_source.h"
7 #include "base/logging.h"
8 #include "ui/gfx/canvas.h"
9 #include "ui/base/layout.h"
11 namespace gfx {
13 ////////////////////////////////////////////////////////////////////////////////
14 // CanvasImageSource
16 CanvasImageSource::CanvasImageSource(const gfx::Size& size, bool is_opaque)
17 : size_(size),
18 is_opaque_(is_opaque) {
21 gfx::ImageSkiaRep CanvasImageSource::GetImageForScale(
22 ui::ScaleFactor scale_factor) {
23 gfx::Canvas canvas(size_, scale_factor, is_opaque_);
24 Draw(&canvas);
25 return canvas.ExtractImageRep();
28 } // namespace gfx