Remove outdated toc_pages.txt, add new Go modules for IHK Chemnitz PDF rendering including diagrams, tables, and TOC functionality.

This commit is contained in:
Sebastian Unterschütz
2026-05-04 22:06:28 +02:00
parent e98f7efa52
commit 81745b5f48
23 changed files with 1532 additions and 809 deletions
+69 -43
View File
@@ -7,78 +7,104 @@ student:
project:
title: "Entwicklung eines Markdown-zu-IHK-Konverters"
subtitle: "Projektdokumentation zur Abschlussprüfung"
period: "Frühjahr 2026"
period: "Sommer 2026"
abbreviations:
- abbr: "IHK"
meaning: "Industrie- und Handelskammer"
- abbr: "PDF"
meaning: "Portable Document Format"
- abbr: "API"
meaning: "Application Programming Interface"
- abbr: "AST"
meaning: "Abstract Syntax Tree"
- abbr: "DIN"
meaning: "Deutsches Institut für Normung"
glossary:
- term: "Goldmark"
definition: "Ein in Go geschriebener Markdown-Parser, der den CommonMark-Standard implementiert."
- term: "FPDF"
definition: "Eine Go-Bibliothek zur Erzeugung von PDF-Dokumenten ohne externe Abhängigkeiten."
- term: "Kroki"
definition: "Ein Webdienst, der verschiedene Diagramm-Beschreibungssprachen (Mermaid, PlantUML u.a.) in Bilder umwandelt."
---
# Vorwort
Dieses Projekt entstand im Rahmen der Abschlussprüfung...
Dieses Projekt entstand im Rahmen der Abschlussprüfung zum Fachinformatiker
Fachrichtung Anwendungsentwicklung. Es soll zeigen, dass technische Dokumentationen
effizient und normgerecht erstellt werden können.
# 1. Problemstellung
## 1.1 Ausgangslage
Aktuell müssen IHK-Dokumentationen mühsam in Word formatiert werden, was fehleranfällig ist und viel Zeit kostet. Besonders schwierig ist die Einhaltung der Formvorgaben für Umlaute wie Ä, Ö, Ü und das Eszett ß.
Aktuell müssen IHK-Dokumentationen mühsam in Word formatiert werden, was
fehleranfällig ist und viel Zeit kostet. Besonders die Einhaltung der
Formvorgaben Schriftgröße, Zeilenabstand und Seitenränder erfordert
manuelle Sorgfalt bei jedem Absatz.
## 1.2 Zielsetzung
Ziel ist ein Go-Tool, das Markdown in PDF umwandelt und dabei alle formalen Anforderungen der IHK Chemnitz erfüllt. Es soll die Prüfungsvorbereitung erleichtern und die Qualität der Dokumente erhöhen.
Ziel ist ein Go-Tool, das **Markdown** in PDF umwandelt und dabei alle
formalen Anforderungen der IHK Chemnitz erfüllt. Es soll:
- die Prüfungsvorbereitung erleichtern,
- die Qualität der Dokumente *einheitlich* sicherstellen und
- den Prozess vollständig automatisieren.
# 2. Projektablauf
## 2.1 Planung
Die Planung umfasst die Analyse der IHK-Vorgaben und das Design der Software-Architektur.
### Architektur-Übersicht (Mermaid)
Die Planung umfasst die Analyse der IHK-Vorgaben und das Design der
Software-Architektur. Der Projektzeitraum beträgt maximal 80 Stunden
gemäß Ausbildungsverordnung.
### Architektur-Übersicht
```mermaid
graph TD
A[Markdown] --> B(Go Parser)
B --> C{Metadata?}
B --> C{Metadaten?}
C -->|Ja| D[Config]
C -->|Nein| E[Default]
C -->|Nein| E[Standard]
D --> F[PDF Renderer]
E --> F
F --> G[IHK PDF]
```
### Klassen-Diagramm (PlantUML)
```puml
@startuml
class IHKRenderer {
+RenderTOC()
+RenderBibliography()
+RenderAppendices()
}
IHKRenderer o-- TOCItem
IHKRenderer o-- Appendix
@enduml
F --> G[IHK-konformes PDF]
```
## 2.2 Realisierung
Die Realisierung erfolgt in Go unter Verwendung von `goldmark` und `fpdf`.
| Tool | Zweck |
|------|-------|
| Go | Programmiersprache |
| Goldmark | Markdown Parser |
| FPDF | PDF Renderer |
Die Realisierung erfolgt in Go unter Verwendung von `goldmark` und `fpdf`.
Der Konverter verarbeitet die Markdown-Datei in zwei Durchläufen, um das
Inhaltsverzeichnis korrekt mit Seitenangaben zu befüllen.
| Werkzeug | Zweck | Version |
|----------|-------|---------|
| Go | Programmiersprache | 1.22+ |
| Goldmark | Markdown-Parser (AST) | v1.8 |
| FPDF | PDF-Erzeugung | v0.9 |
| Kroki | Diagramm-Rendering | online |
@Quelle: Goldmark Documentation, https://github.com/yuin/goldmark, 2024
> Quelle: Go-PDF/Fpdf Documentation, https://github.com/go-pdf/fpdf, 2025
@Quelle: Go-PDF/Fpdf Documentation, https://github.com/go-pdf/fpdf, 2025
## 2.3 Test und Qualitätssicherung
Das Tool wurde anhand eines Musterdokuments getestet. Folgende Kriterien
wurden geprüft:
1. Korrekte Seitenränder gemäß DIN 5008
2. Seitennummerierung (römisch im Vorspann, arabisch im Textteil)
3. Schriftart Helvetica, 12 Punkt, 1½-zeilig
4. Automatische Abbildungs- und Tabellenverzeichnisse
# 3. Zusammenfassung
Das Tool ermöglicht eine effiziente Erstellung von Dokumentationen unter Einhaltung aller Formatvorgaben.
Das Tool ermöglicht eine effiziente Erstellung von IHK-Dokumentationen unter
Einhaltung **aller** Formatvorgaben. Durch die Trennung von Inhalt (Markdown)
und Formatierung (Go-Renderer) ist eine konsistente Ausgabe garantiert.
@Quelle: IHK Chemnitz, Hinweise zur Erarbeitung der Dokumentation, 2020
@Quelle: IHK Chemnitz, Hinweise zur Erarbeitung der Dokumentation über die Projektarbeit, 2020
@Anhang: Architektur Diagramm | test.png
@Anhang: Datenbank Schema | test.png
@AnhangUML: Sequenzdiagramm Generierung
```puml
@startuml
User -> Generator: Markdown
Generator -> Kroki: Code
Kroki -> Generator: PNG
Generator -> PDF: Embed
@enduml
```
@Anhang: Architektur-Diagramm Übersicht | test.png