alignment

This commit is contained in:
Gavin McDonald
2025-08-21 17:56:06 -04:00
parent 6baaa152ed
commit 677af45c73
3 changed files with 19 additions and 3 deletions

View File

@@ -20,6 +20,9 @@ defmodule LabelmakerWeb.Tools do
|> Map.take(Constants.permitted_keys())
|> Map.new(fn {k, v} -> {String.to_atom(k), v} end)
|> Enum.map(fn
{:align, align} ->
{:align, process_alignment(align |> String.downcase())}
{:font, font} ->
{:font, Constants.font_map()[String.downcase(font)]}
@@ -48,6 +51,7 @@ defmodule LabelmakerWeb.Tools do
pair
end)
|> Enum.filter(fn
{:align, align} -> align in Constants.permitted_alignments()
{:color, color} -> color in Constants.colors()
{:font, font} -> font in Map.values(Constants.font_map())
{:outline, outline} -> outline in Constants.outlines()
@@ -59,6 +63,11 @@ defmodule LabelmakerWeb.Tools do
Map.merge(Constants.defaults(), parameters)
end
defp process_alignment("left"), do: "west"
defp process_alignment("middle"), do: "center"
defp process_alignment("right"), do: "east"
defp process_alignment(alignment), do: alignment |> String.downcase()
defp process_height("", parameters) do
parameters["width"] |> String.to_integer() |> max(0) |> min(Constants.max_height())
end