blob: e05a28cbdb460f787df832a9ddb2d35646558f39 [file] [log] [blame]
epoger@google.comec3ed6a2011-07-28 14:26:00 +00001
reed@android.comb08eb2b2009-01-06 20:16:26 +00002/*
epoger@google.comec3ed6a2011-07-28 14:26:00 +00003 * Copyright 2009 The Android Open Source Project
reed@android.comb08eb2b2009-01-06 20:16:26 +00004 *
epoger@google.comec3ed6a2011-07-28 14:26:00 +00005 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
reed@android.comb08eb2b2009-01-06 20:16:26 +00007 */
8
epoger@google.comec3ed6a2011-07-28 14:26:00 +00009
reed@android.comb08eb2b2009-01-06 20:16:26 +000010#include "SkImageEncoder.h"
11#include "SkBitmap.h"
12#include "SkStream.h"
13#include "SkTemplates.h"
14
15SkImageEncoder::~SkImageEncoder() {}
16
17bool SkImageEncoder::encodeStream(SkWStream* stream, const SkBitmap& bm,
18 int quality) {
19 quality = SkMin32(100, SkMax32(0, quality));
20 return this->onEncode(stream, bm, quality);
21}
22
23bool SkImageEncoder::encodeFile(const char file[], const SkBitmap& bm,
24 int quality) {
25 quality = SkMin32(100, SkMax32(0, quality));
26 SkFILEWStream stream(file);
27 return this->onEncode(&stream, bm, quality);
28}
29
30bool SkImageEncoder::EncodeFile(const char file[], const SkBitmap& bm, Type t,
31 int quality) {
32 SkAutoTDelete<SkImageEncoder> enc(SkImageEncoder::Create(t));
33 return enc.get() && enc.get()->encodeFile(file, bm, quality);
34}
35
36bool SkImageEncoder::EncodeStream(SkWStream* stream, const SkBitmap& bm, Type t,
37 int quality) {
38 SkAutoTDelete<SkImageEncoder> enc(SkImageEncoder::Create(t));
39 return enc.get() && enc.get()->encodeStream(stream, bm, quality);
40}
41