1 #ifndef DALI_ADAPTOR_BITMAP_SAVER_H
2 #define DALI_ADAPTOR_BITMAP_SAVER_H
5 * Copyright (c) 2020 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
22 #include <dali/public-api/images/pixel.h>
25 #include <dali/public-api/dali-adaptor-common.h>
30 static constexpr uint32_t DEFAULT_JPG_QUALITY = 100;
33 * Store the given pixel data to a file.
34 * The suffix of the filename determines what type of file will be stored,
35 * currently only jpeg and png formats are supported.
37 * @param[in] pixelBuffer Pointer to the pixel data
38 * @param[in] filename Filename to save
39 * @param[in] pixelFormat The format of the buffer's pixels
40 * @param[in] width The width of the image in pixels
41 * @param[in] height The height of the image in pixels
43 * @return true if the file was saved
45 DALI_ADAPTOR_API bool EncodeToFile(const unsigned char* const pixelBuffer,
46 const std::string& filename,
47 const Pixel::Format pixelFormat,
48 const std::size_t width,
49 const std::size_t height);
52 * Store the given pixel data to a file.
53 * The suffix of the filename determines what type of file will be stored,
54 * currently only jpeg and png formats are supported.
56 * @param[in] pixelBuffer Pointer to the pixel data
57 * @param[in] filename Filename to save
58 * @param[in] pixelFormat The format of the buffer's pixels
59 * @param[in] width The width of the image in pixels
60 * @param[in] height The height of the image in pixels
61 * @param[in] quality The value to control image quality for jpeg file format in the range [1, 100]
63 * @return true if the file was saved
65 DALI_ADAPTOR_API bool EncodeToFile(const unsigned char* const pixelBuffer,
66 const std::string& filename,
67 const Pixel::Format pixelFormat,
68 const std::size_t width,
69 const std::size_t height,
70 const uint32_t quality);
75 #endif // DALI_ADAPTOR_BITMAP_SAVER_H