Class StationeryBuilder

java.lang.Object
com.nsdev.lettergenerator.builder.StationeryBuilder

public final class StationeryBuilder extends Object
Convenience authoring of reusable stationery using the same geometry as a letter builder. Build with the intended paper and margins; inherited rectangles remain explicit millimeters.
  • Constructor Details

    • StationeryBuilder

      public StationeryBuilder()
      Creates an empty stationery builder.
  • Method Details

    • header

      public StationeryBuilder header(String value)
      Configures header text.
      Parameters:
      value - header text
      Returns:
      this builder
    • footer

      public StationeryBuilder footer(String value)
      Configures footer text.
      Parameters:
      value - footer text
      Returns:
      this builder
    • headerHtml

      public StationeryBuilder headerHtml(String value)
      Configures header markup.
      Parameters:
      value - header markup
      Returns:
      this builder
    • footerHtml

      public StationeryBuilder footerHtml(String value)
      Configures footer markup.
      Parameters:
      value - footer markup
      Returns:
      this builder
    • headerHeightMm

      public StationeryBuilder headerHeightMm(double value)
      Configures header height in millimeters.
      Parameters:
      value - header height in millimeters
      Returns:
      this builder
    • footerHeightMm

      public StationeryBuilder footerHeightMm(double value)
      Configures footer height in millimeters.
      Parameters:
      value - footer height in millimeters
      Returns:
      this builder
    • headerAlignment

      public StationeryBuilder headerAlignment(TextAlign value)
      Configures header alignment.
      Parameters:
      value - header alignment
      Returns:
      this builder
    • headerBounds

      public StationeryBuilder headerBounds(Bounds value)
      Configures exact inner-page header rectangle.
      Parameters:
      value - exact inner-page header rectangle
      Returns:
      this builder
    • page

      public StationeryBuilder page(PageSize value)
      Configures authoring paper size.
      Parameters:
      value - authoring paper size
      Returns:
      this builder
    • margins

      public StationeryBuilder margins(Margins value)
      Configures authoring margins.
      Parameters:
      value - authoring margins
      Returns:
      this builder
    • logo

      public StationeryBuilder logo(byte[] value)
      Configures encoded image bytes.
      Parameters:
      value - encoded image bytes
      Returns:
      this builder
    • asset

      public StationeryBuilder asset(String name, byte[] bytes)
      Supplies a named image for deferred header/footer markup.
      Parameters:
      name - local asset key
      bytes - encoded image snapshot
      Returns:
      this builder
    • headerStyle

      public StationeryBuilder headerStyle(Style value)
      Sets common header typography.
      Parameters:
      value - style overrides
      Returns:
      this builder
    • footerStyle

      public StationeryBuilder footerStyle(Style value)
      Sets common footer typography.
      Parameters:
      value - style overrides
      Returns:
      this builder
    • fixedElement

      public StationeryBuilder fixedElement(FixedElement value)
      Supplies explicit fixed content, with its own identifier and page selector.
      Parameters:
      value - fixed region
      Returns:
      this builder
    • header

      public StationeryBuilder header(PageSelector pages, Block... blocks)
      Replaces one header variant with immutable rich blocks.
      Parameters:
      pages - selected pages
      blocks - content in reading order
      Returns:
      this builder
    • footer

      public StationeryBuilder footer(PageSelector pages, Block... blocks)
      Replaces one footer variant with immutable rich blocks.
      Parameters:
      pages - selected pages
      blocks - content in reading order
      Returns:
      this builder
    • build

      public Stationery build()
      Resolves regions and owned assets into an immutable reusable snapshot.
      Returns:
      stationery containing no dummy body content