1 // Aseprite Document Library 2 // Copyright (c) 2001-2017 David Capello 3 // 4 // This file is released under the terms of the MIT license. 5 // Read LICENSE.txt for more information. 6 7 #ifndef DOC_BLEND_MODE_H_INCLUDED 8 #define DOC_BLEND_MODE_H_INCLUDED 9 #pragma once 10 11 #include <string> 12 13 namespace doc { 14 15 enum class BlendMode { 16 // Special internal/undocumented alpha compositing and blend modes 17 UNSPECIFIED = -1, 18 SRC = -2, 19 MERGE = -3, 20 NEG_BW = -4, // Negative Black & White 21 RED_TINT = -5, 22 BLUE_TINT = -6, 23 24 // Aseprite (.ase files) blend modes 25 NORMAL = 0, 26 MULTIPLY = 1, 27 SCREEN = 2, 28 OVERLAY = 3, 29 DARKEN = 4, 30 LIGHTEN = 5, 31 COLOR_DODGE = 6, 32 COLOR_BURN = 7, 33 HARD_LIGHT = 8, 34 SOFT_LIGHT = 9, 35 DIFFERENCE = 10, 36 EXCLUSION = 11, 37 HSL_HUE = 12, 38 HSL_SATURATION = 13, 39 HSL_COLOR = 14, 40 HSL_LUMINOSITY = 15, 41 ADDITION = 16, 42 SUBTRACT = 17, 43 DIVIDE = 18 44 }; 45 46 std::string blend_mode_to_string(BlendMode blendMode); 47 48 } // namespace doc 49 50 #endif 51