blob: cca943123893c2c50951f4da95c0a7738b192905 [file] [log] [blame]
twiz@google.com6cf53032012-06-22 18:55:55 +00001/*
2 * Copyright 2012 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef picture_utils_DEFINED
9#define picture_utils_DEFINED
10#include "SkTypes.h"
11
12class SkBitmap;
13class SkFILEStream;
14class SkString;
15class SkPicture;
16
17namespace sk_tools {
keyar@chromium.org9299ede2012-08-21 19:05:08 +000018 // since PNG insists on unpremultiplying our alpha, we take no precision
19 // chances and force all pixels to be 100% opaque, otherwise on compare we
20 // may not get a perfect match.
21 //
22 // This expects a bitmap with a config type of 8888 and for the pixels to
23 // not be on the GPU.
24 void force_all_opaque(const SkBitmap& bitmap);
25
twiz@google.com6cf53032012-06-22 18:55:55 +000026 // Creates a posix style filepath by concatenating name onto dir with a
27 // forward slash into path.
keyar@chromium.org1cbd47c2012-07-13 18:22:59 +000028 void make_filepath(SkString* path, const SkString&, const SkString& name);
twiz@google.com6cf53032012-06-22 18:55:55 +000029
keyar@chromium.orgd1dc9202012-07-09 18:32:08 +000030 // Returns the last part of the path (file name or leaf directory name)
31 //
32 // This basically just looks for a foward slash or backslash (windows
keyar@chromium.org9299ede2012-08-21 19:05:08 +000033 // only).
keyar@chromium.orgd1dc9202012-07-09 18:32:08 +000034 void get_basename(SkString* basename, const SkString& path);
35
keyar@chromium.org163b5672012-08-01 17:53:29 +000036 // Returns true if the string ends with %
scroggo@google.com58b4ead2012-08-31 16:15:22 +000037 bool is_percentage(const char* const string);
keyar@chromium.org163b5672012-08-01 17:53:29 +000038
twiz@google.com6cf53032012-06-22 18:55:55 +000039 // Prepares the bitmap so that it can be written.
40 //
41 // Specifically, it configures the bitmap, allocates pixels and then
42 // erases the pixels to transparent black.
43 void setup_bitmap(SkBitmap* bitmap, int width, int height);
44}
45
46#endif // picture_utils_DEFINED