# RemoveEmptyLinesProcessor

## Überblick

Der `RemoveEmptyLinesProcessor` entfernt leere Zeilen aus dem HTML-Output, um die Größe zu reduzieren.

## Funktionsweise

- Verarbeitet den HTML-String nach der DOM-Verarbeitung
- Entfernt Zeilen, die nur Whitespace enthalten
- Behält die HTML-Struktur bei, reduziert aber die Formatierung

## Vorher / Nachher

**Vorher:**
```html
<div>

    <p>Absatz 1</p>

    <p>Absatz 2</p>

</div>
```

**Nachher:**
```html
<div>
    <p>Absatz 1</p>
    <p>Absatz 2</p>
</div>
```

## Implementierung

Der Prozessor verwendet reguläre Ausdrücke, um leere Zeilen zu finden und zu entfernen. Eine leere Zeile wird definiert als eine Zeile, die nur Whitespace (Leerzeichen, Tabs, etc.) enthält.

## Konfigurationsoptionen

- **preserveSpecialElements**: (Boolean) Bei `true` werden leere Zeilen innerhalb bestimmter Elemente (wie `<pre>` oder `<textarea>`) beibehalten

## Erhaltene Elemente

Bei bestimmten Elementen, in denen Whitespace wichtig ist, kann die Formatierung erhalten bleiben:

- `<pre>` und `<code>` Elemente
- `<textarea>` Elemente

## Vorteile

- Reduziert die Größe der HTML-Ausgabe
- Behält die grundlegende Formatierung für bessere Lesbarkeit bei
- Minimale Auswirkung auf die Darstellung im Browser

## Anwendungsfälle

- Moderate Optimierung für Produktionsumgebungen
- Reduzierung der Bandbreitennutzung
- Säuberung von HTML-Ausgabe mit übermäßigen Leerzeilen

## Tipps

- Verwenden Sie diesen Prozessor vor dem `SingleLineHtmlProcessor` für eine stufenweise Komprimierung
- Für maximale Komprimierung kombinieren Sie ihn mit `CommentStripProcessor` und `SingleLineHtmlProcessor`
- Dieser Prozessor bietet einen guten Kompromiss zwischen Komprimierung und Lesbarkeit
