コード例 #1
0
# Channels > Split HSL
from lazpaint import image, dialog, layer, filters

# check if it is a channel
if layer.get_registry("split-channel") is not None:
    dialog.show_message("Layer already split")
    exit()

layer_id = layer.get_id()
layer_index = image.get_layer_index()
layer_opacity = layer.get_opacity()
layer_transparent = layer.is_transparent()

# check if it has been split
if layer.get_registry("split-channels-id") is not None:
    for cur_layer_id in image.iterate_layers():
        if layer.get_registry("split-source-id") == layer_id:
            dialog.show_message("Layer already split")
            exit()

image.do_begin()
channels = []
if layer_transparent:
    channels.append({
        "name": "Alpha",
        "channel": "A",
        "hue": "0",
        "saturation": "0",
        "lightness": "alpha",
        "alpha": "255",
        "blend": layer.BLEND_MASK
コード例 #2
0
if chosen_radius == None:
    chosen_radius = 10

chosen_offset = layer.get_registry("shadow-offset")
if chosen_offset == None or len(chosen_offset) != 2:
    chosen_offset = image.get_registry("shadow-offset")
if chosen_offset == None or len(chosen_offset) != 2:
    chosen_offset = (10, 10)

shadow_layer_id = layer.get_registry("shadow-layer-id")
if image.get_layer_index(shadow_layer_id) == None:
    shadow_layer_id = None

if shadow_layer_id is not None:
    layer.select_id(shadow_layer_id)
    chosen_opacity = layer.get_opacity()
    overlay_color = colors.str_to_RGBA(layer.get_registry("overlay-color"))
    layer.select_id(source_layer_id)
else:
    chosen_opacity = layer.get_opacity() * 2 / 3
    overlay_color = None

if overlay_color is None:
    overlay_color = colors.BLACK


def create_shadow_layer():
    global shadow_layer_id
    image.do_begin()
    if shadow_layer_id != None:
        layer.select_id(shadow_layer_id)