Naar inhoud springen

Module:ColorBanner: verschil tussen versies

Uit CostaSano-Wiki
Nieuwe pagina aangemaakt met '-- Module:ColorBanner local p = {} -- Helper: choose text color based on background brightness local function getTextColor(bg) -- crude luminance check: convert hex to RGB local r = tonumber(bg:sub(2,3),16) local g = tonumber(bg:sub(4,5),16) local b = tonumber(bg:sub(6,7),16) local luminance = (0.299*r + 0.587*g + 0.114*b) if luminance > 128 then return "#000000" -- dark text for light background else return "#FFFF…'
 
Geen bewerkingssamenvatting
Regel 1: Regel 1:
-- Module:ColorBanner
local p = {}
local p = {}
-- Helper: choose text color based on background brightness
local function getTextColor(bg)
    -- crude luminance check: convert hex to RGB
    local r = tonumber(bg:sub(2,3),16)
    local g = tonumber(bg:sub(4,5),16)
    local b = tonumber(bg:sub(6,7),16)
    local luminance = (0.299*r + 0.587*g + 0.114*b)
    if luminance > 128 then
        return "#000000" -- dark text for light background
    else
        return "#FFFFFF" -- white text for dark background
    end
end


function p.banner(frame)
function p.banner(frame)
     local args = frame:getParent().args
     local args = frame:getParent().args
     local bg = args.bg or "#333333" -- default dark gray
     local bg = args.bg or "var(--banner-bg)"
     local fg = args.fg or getTextColor(bg)
     local fg = args.fg or "var(--banner-fg)"
     local text = args.text or "Example banner"
     local text = args.text or "Adaptive banner"


     return string.format(
     return string.format(

Versie van 16 dec 2025 15:37

Documentatie voor deze module kan aangemaakt worden op de volgende pagina: Module:ColorBanner/doc

local p = {}

function p.banner(frame)
    local args = frame:getParent().args
    local bg = args.bg or "var(--banner-bg)"
    local fg = args.fg or "var(--banner-fg)"
    local text = args.text or "Adaptive banner"

    return string.format(
        '<div style="background:%s; color:%s; padding:0.5em; text-align:center;">%s</div>',
        bg, fg, text
    )
end

return p