# HyprTile Text Mask Deluxe Pack

Massiv ausgebauter Text-Mask-Shader für `hyprtile-wallpaperd`.

Der Shader nutzt die generische `--pack-text`-Schnittstelle (`u_text_length`
und `u_text00..u_text31`) und kann Text als Fenster, Outline-, Glow- und
bewegten Titel-Effekt verwenden. Außen herum bleibt der Hintergrund schwarz.

## Beispiele

```bash
hyprtile-wallpaperd --image ~/Pictures/wallpaper.webp --pack text-mask-deluxe:glowing --pack-text "HYPRTILE"

hyprtile-wallpaperd --image ~/Pictures/wallpaper.webp --pack rainbow:slow-flow --pack blur:dual-kawase --pack text-mask-deluxe:neon-title --pack-text "MATRIX"

hyprtile-wallpaperd --image ~/Pictures/wallpaper.webp --pack text-mask-deluxe:scrolltext --pack-text "WELCOME TO HYPRTILE"
```

## Presets
- `default`
- `bordered`
- `glowing`
- `neon-title`
- `ghost-title`
- `huge-outline`
- `cinematic`
- `reveal`
- `drift`
- `scrolltext`
- `upper-banner`
- `lower-banner`
- `invert`

## Features
- Textfenster-Maske
- Border / Outline
- Glow / Aura
- Shadow
- Reveal von links nach rechts
- leichte Drift / Wellenbewegung
- Scrolltext-artige Bewegung
- Banner-Positionen oben/unten

## Kompatibilität

Der Fragment-Shader ist auf GLSL ES 1.00 / OpenGL ES 2 ausgelegt. Die Text-Decodierung verwendet deshalb bewusst keine Bitshift-, Bitwise- oder Integer-Modulo-Operatoren.

## Performance-Version
Diese Revision berechnet pro Pixel direkt das relevante Zeichen statt bei jedem Masken-Sample die komplette Zeichenkette zu durchlaufen. Border und Glow verwenden sparse 8-Richtungs-Samples statt 5x5/7x7 Vollkerneln.


## TTF / OTF font mode

With a wallpaperd build that supports `--pack-font`, the same shader can use a
real TrueType/OpenType font instead of the built-in procedural glyphs. The font
is rasterized only once into a high-resolution mask texture; glow, border,
movement and masking stay on the GPU.

```bash
hyprtile-wallpaperd \
  --image ~/Pictures/wallpaper.webp \
  --pack text-mask-deluxe:ttf-glow \
  --pack-text "HyprTile" \
  --pack-font /usr/share/fonts/TTF/DejaVuSans-Bold.ttf
```

Optional raster resolution:

```bash
--pack-font-size 256
```

The default is 192 px. Values from 16 to 512 are accepted. A larger raster size
can make very large onscreen text cleaner, at the cost of a larger one-time
texture. TTF mode passes the original UTF-8 string to SDL3_ttf, so accented and
non-ASCII characters are no longer limited by the built-in 7x9 glyph set.

TTF-oriented presets: `ttf`, `ttf-glow`, `ttf-neon`, `ttf-cinematic`,
`ttf-scroll`. Any other Deluxe preset also switches to TTF rendering when
`--pack-font` is supplied.

## TTF orientation fix
TTF/OTF mask textures are sampled directly. The additional shader-side Y flip
was removed because hyprtile-wallpaperd already keeps the offscreen shader
chain in logical top-to-bottom orientation.


## Screen-wrap fix
Alle Presets mit `u_scroll_speed != 0` benutzen jetzt echtes horizontales Screen-Wrapping. Verlässt eine Textkopie rechts den Bildschirm, erscheint die periodische Kopie gleichzeitig wieder links. Das gilt gleichermaßen für Built-in-Glyphen und TTF/OTF-Masken.
