blob: fecadbf82acd459ba40a8c4c4ac91bc2f74c3258 [file] [log] [blame]
reed@android.comb08eb2b2009-01-06 20:16:26 +00001/*
epoger@google.comec3ed6a2011-07-28 14:26:00 +00002 * Copyright 2009 The Android Open Source Project
reed@android.comb08eb2b2009-01-06 20:16:26 +00003 *
epoger@google.comec3ed6a2011-07-28 14:26:00 +00004 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
reed@android.comb08eb2b2009-01-06 20:16:26 +00006 */
7
Hal Canarydb683012016-11-23 08:55:18 -07008#include "SkImageEncoderPriv.h"
reed@android.comb08eb2b2009-01-06 20:16:26 +00009
Hal Canarydb683012016-11-23 08:55:18 -070010bool SkEncodeImage(SkWStream* dst, const SkPixmap& src,
11 SkEncodedImageFormat format, int quality) {
Hal Canary1fcc4042016-11-30 17:07:59 -050012 #ifdef SK_USE_CG_ENCODER
13 (void)quality;
14 return SkEncodeImageWithCG(dst, src, format);
15 #elif SK_USE_WIC_ENCODER
16 return SkEncodeImageWithWIC(dst, src, format, quality);
17 #else
18 switch(format) {
Leon Scrogginsc06f3092017-05-02 17:08:28 +000019 case SkEncodedImageFormat::kJPEG:
20 return SkEncodeImageAsJPEG(dst, src, quality);
Matt Sarett84014f02017-01-10 11:28:54 -050021 case SkEncodedImageFormat::kPNG:
22 return SkEncodeImageAsPNG(dst, src, SkEncodeOptions());
23 case SkEncodedImageFormat::kWEBP:
24 return SkEncodeImageAsWEBP(dst, src, quality);
25 default:
26 return false;
Hal Canary1fcc4042016-11-30 17:07:59 -050027 }
28 #endif
reed53b9e2e2014-12-19 12:26:07 -080029}