Docxir.StyleMapper (docxir v0.1.0)

View Source

Maps Word document styles to Tailwind CSS classes.

This module provides functions to convert Microsoft Word styling attributes (font sizes, alignment, indentation) into standard Tailwind CSS utility classes.

Only standard Tailwind classes are used (no JIT dynamic classes like text-[14px]).

Summary

Functions

Converts Word alignment to Tailwind text alignment class.

Converts Word font size to Tailwind text size class.

Converts Word indentation to Tailwind margin-left class.

Functions

alignment_class(arg1)

@spec alignment_class(binary() | nil) :: binary()

Converts Word alignment to Tailwind text alignment class.

Parameters

  • jc_val - Justification value: "left", "center", "right", or "both"

Returns

  • Tailwind CSS class as string

Examples

iex> Docxir.StyleMapper.alignment_class("center")
"text-center"

iex> Docxir.StyleMapper.alignment_class("both")
"text-justify"

iex> Docxir.StyleMapper.alignment_class(nil)
"text-left"

font_size_class(sz_val)

@spec font_size_class(integer() | binary() | nil) :: binary()

Converts Word font size to Tailwind text size class.

Word uses half-points for font sizes (e.g., 24 = 12pt).

Parameters

  • sz_val - Font size value as integer or string, or nil

Returns

  • Tailwind CSS class as string

Examples

iex> Docxir.StyleMapper.font_size_class(24)
"text-sm"

iex> Docxir.StyleMapper.font_size_class(48)
"text-2xl"

iex> Docxir.StyleMapper.font_size_class(nil)
"text-base"

indent_class(indent_val)

@spec indent_class(integer() | binary() | nil) :: binary()

Converts Word indentation to Tailwind margin-left class.

Word uses twips (1/1440 inch) for indentation measurements.

Parameters

  • indent_val - Indentation value in twips as integer or string, or nil

Returns

  • Tailwind CSS class as string, or empty string if no indentation

Examples

iex> Docxir.StyleMapper.indent_class(360)
"ml-4"

iex> Docxir.StyleMapper.indent_class(720)
"ml-6"

iex> Docxir.StyleMapper.indent_class(nil)
""