Auswahl von Bildposition und -farbe
Der „Auswähler für Bildposition und -farbe“ ermöglicht die Auswahl eines Screenshots aus der System-Fotobibliothek oder dem Home-Verzeichnis und die Markierung eines oder mehrerer Pixel, um deren Position oder Farbe zu ermitteln.
Der „Auswähler für eine einzelne Bildposition“ mit dem Typ pos erlaubt die Auswahl eines Pixels und gibt dessen Position zurück. Der Rückgabewert ist ein Array mit zwei Zahlenwerten: x- und y-Koordinate des Pixels, zum Beispiel:
{ 512, 373 }
Der „Auswähler für eine einzelne Bildfarbe“ mit dem Typ color erlaubt die Auswahl eines Pixels und gibt dessen Farbe als numerischen RGB-Wert zurück, zum Beispiel:
0x3c1f8b
Der „Auswähler für eine einzelne Bildposition und -farbe“ mit dem Typ poscolor erlaubt die Auswahl eines Pixels und gibt dessen Position und Farbe zurück. Der Rückgabewert ist ein Array mit drei Zahlenwerten: x-Koordinate, y-Koordinate und numerischer RGB-Wert des Pixels, zum Beispiel:
{ 512, 373, 0x3c1f8b }
Der „Auswähler für mehrere Bildpositionen und -farben“ mit dem Typ poscolors erlaubt die Auswahl eines oder mehrerer Pixel und gibt deren Positionen und Farben zurück. Der Rückgabewert ist ein zweidimensionales Array mit x-Koordinate, y-Koordinate und numerischem RGB-Wert jedes ausgewählten Pixels, zum Beispiel:
{
{ 512, 373, 0x3c1f8b },
{ 512, 374, 0x3c1f7c },
{ 512, 375, 0x3c1f89 },
-- ...
}
Beispiel
local group, name
group = '图色'
name = 'if (screen.is_colors(poscolors, 90)) then ... end'
return {
name = string.format('%s - %s', group, name),
description = "屏幕多点颜色匹配",
arguments = {
{type = 'poscolors'},
},
-- default = nil, -- Dieser Auswähler unterstützt derzeit keinen Standardwert
generator = function(poscolors)
local pcs = {}
for i, pc in ipairs(poscolors) do
pcs[#pcs + 1] = string.format('\t{ %4d, %4d, 0x%06x}, -- %3d\n', pc[1], pc[2], pc[3] & 0x00ffffff, i)
end
return string.format([[
if (screen.is_colors({
%s}, 90)) then
@@
end]], table.concat(pcs)) -- @@ im zurückgegebenen Code-Snippet einfügen, damit der Editorcursor automatisch dorthin springt.
end,
}