# BelegScanner ## Ziel der Anwendung Diese Anwendung soll helfen * sich wiederholende Scan-Vorgänge zu erleichtern * mehrseitige PDFs mit aus gescannten Einzelseiten zu erstellen ### Beispiel 1: wiederkehrendes Dokument mit wechselndem Datum #### Aufgabenstellung Die die regelmäig per Brief kommende Lohnsteuerbescheinigung soll als PDF eingescannt und im Ordner `Dokumente/Arbeit/` abgelegt werden. Dabei soll der Dateiname `Lohnsteuerbescheinigung MM-YYYY.pdf` sein, wobei MM und YYYY durch Monat und Jahr der Bescheinigung zu ersetzen sind. #### erstmalige Einrichtung: Im Belegscanner wird ein Profil _Lohnsteuerbescheinigung_ angelegt und dazu das Speicher-_Schema_ mit entsprechenden →**Platzhalter**n versehen. Im Beispiel wäre das `$HOME/Dokumente/Arbeit/Lohnsteuerbescheinigung - $MONAT-$JAHR` Die Platzhalter erkennt man am vorangestellten Dollarzeichen (`$`). Hier sind es: * `$HOME` – für den Nutzerordner * `$MONAT` - für den im Kalender ausgewählten Monat * `$JAHR` - für das im Kalender ausgewählte Jahr. Die Endung `.pdf` wird nicht im _Schema_ vergeben: Der Dateityp kann in der Seitenleiste zusammen mit weiteren Einstellungen gewählt werden. Im Beispiel wird als _Zieltyp_ `pdf` gewählt. Im Kalender wird ein Tag ausgewählt, der im Monat der Abrechnung liegt, z.B. der `15. Mai 2023`. Dann wird auf den Scannen-Knopf geklickt. #### Ablauf Das Programm legt für diese Kombination aus _Schema_ und Platzhalter-Werten (Datum) ein Projekt an. In diesem Beispiel-Fall würde also das Projekt `/Dokumente/Lohnsteuerbescheinigung 05-2023` am oberen Rand der Anwendung erscheinen. Daneben befinden sich einige Knöpfe, mit denen das Projekt weiterverarbeitet werden kann, dazu später mehr. Das Programm scannt nun eine einzelne Seite ein und legt diese als `Lohnsteuerbescheinigung 05-2023.jpg` im Ordner `Dokumente/Arbeit` des Benutzers ab. Je nach Einstellungen wird diese Seite weiterverarbeitet, und letztlich in die Datei `Lohnsteuerbescheinigung 05-2023.pdf` konvertiert. Die gescannte Seite wird anschließend im mittleren Teil der Anwendung als Vorschau angezeigt. Da das „Projekt“ aus nur einer Seite besteht sind wir an dieser Stelle fertig. Mit einem Klick auf den Abschließen-Knopf wird die Projektzeile am oberen Bildschirmrand verborgen. #### Wiederholung Wenn im Juni 2023 eine neue _Lohnsteuerbescheinigung_ digitalisiert werden soll kann das zuvor gespeicherte Profil wiederverwendet werden. Mit der Maus klickt man in das _Profil_-Eingabefeld und tippt die Anfangsbuchstaben `Lohn`… ein, bis das Profil _Lohnsteuerbescheinigung_ im Dropdown erscheint. Dann markiert wählt man dieses mit den Pfeiltasten und drückt Enter. Sofort wird das Speicher-_Schema_ sowie die weiteren Einstellungen geladen. Man muss nun nur noch mit der Maus ein Datum im Kalender auswählen und auf _Scannen_ drücken. ## Platzhalter Wie schon erwähnt dienen Profile dazu, gleichartige oder ähnliche Dokumente an einem _gleich aufgebauten_ Pfad abzulegen. _Gleich aufgebaut_ meint dabei, dass zum Beispiel der Pfad zum Ablageodner immer gleich ist, und sich die Dateinamen nur im Datum, dem Betreff oder einer sonstigen Eigenschaft unterscheiden. Damit aber nicht jedes mal, wenn ein Dokument erfasst werden soll, der Pfad angepasst werden muss gibt es Platzhalter: Wird in einem Pfad ein Dollarzeichen, gefolgt von einem Wort eingegeben, so wird ein entsprechender Platzhalter mit einem separaten Eingabefeld erzeugt. ### Beispiel 2: Belege mit benutzerdefinierten Platzhaltern Quittungen von wichtigen Einkäufen sollen archiviert werden. Die Ablage soll im Ordner „Belege“, nach Jahr und Monat gruppiert abgelegt werden. Innerhalb des Monats-Ordners sollen die Belege dem folgenden Namen-Schema folgen: `-- - von `. Wenn also am 1.2.2023 ein Gummihuhn im Obi gekaut wurde, soll der Pfad zum Dokument am Ende sein: `/Belege/2023/02/01.02.2023 - Gummihuhn von Obi.pdf` Und der Beleg zum Kontinummtransfunktiniator, den man zu Weihnachten von Oma bekommt, soll unter `/Belege/1987/12/24.12.1987 - Kontinuumtransfunktionator von Oma.pdf` abgelegt werden. Um das zu erreichen kann man ein neues Profil _Belege_ anlegen und dazu folgenden Pfad eingeben: `$HOME/$PROFIL/$JAHR/$MONAT/$TAG.$MONAT.$JAHR - $Produkt von $Händler` Dieser Pfad ist voll mit Platzhaltern: * das schon bekannte `$HOME` steht für den Benutzerordner * `$PROFIL` wird durch den Profil-Namen, in diesem Fall _Belege_ ersetzt. * `$JAHR`, `$MONAT` sind schon von oben bekannt, `$TAG` wird entsprechend durch den Tag des Monats, der im Kalender gewählt ist, ersetzt. * `$Produkt` und `$Händler` sind sogenannte nutzerdefinierte Platzhalter. Dadurch muss beim nächsten mal, wenn ein Beleg gescannt wird, nur das entsprechende Datum und Profil ausgewählt werden und Produkt und Händler eingetragen werden. ### nutzerdefinierte Platzhalter Immer wenn im Pfad ein Dollarzeichen ($), gefolgt von einem Wort, verwendet wird, handelt es sich dabei um einen Platzhalter. Steht das wort nicht für einen → _vordefinierten Platzhalter_, wird automatisch ein _nutzerdefinierter Platzhalter_ erzeugt. D.h. für das Wort wird ein neues Eingabefeld erzeugt und der Platzhalter wird letztlich durch den Wert des Eingabefeldes ersetzt. Im letzten Beispiel würden also zwei Eingabefelder erzeugt: eines für _Produkt_ und eines für _Händler_. Die Platzhalter im Pfad werden dann durch die Werte der Eingabefelder ersetzt. ### vordefinierte Platzhalter Neben der Möglichkeit neue Platzhalter zu erzeugen können auch folgende vordefinierte Platzhalter benutzt werden: | Platzhalter (en) | Platzhalter (de) | wir ersetzt durch | Beispiel | |-------------|---|--------------------------------------------------------|--------------------------| | $HOME | $HOME | Heimatverzeichnis des Benutzers | `/home/christiane_meise` | | $PROFILE | $PROFIL | Name des Profils | `Rechnungen` | | $PAGE | $SEITE | aktuelle Seitennummer im Projekt | `5` | | $YEAR | $JAHR | Jahr des im Kalender gewählten Datums | `2023` | | $MONTH | $MONAT | Monat des im Kalender gewählten Datums (2-stellig) | `08` | | $Month | $Monat | Name des im Kalender gewählten Monats | `August` | | $month | $monat | Name des im Kalender gewählten Monats (kleingeschrieben) | `august` | | $Mon | $Mon | Kürzel des im Kalender gewählten Monats | `Aug` | | $mon | $mon | Kürzel des im Kalender gewählten Monats (kleingeschrieben) | `aug` | | $DAY | $TAG | Tag des im Kalender gewählten Monats (2-stellig) | `27` | ## mehrseitige Dokumente Alle bisherigen Beispiele gingen davon aus, dass ein Projekt nur aus einer einzelnen Seite besteht. Oft ist es aber notwendig, mehrere Einzel-Seiten als Bilder abzulegen oder gar ein PDF daraus zu binden. ### Beispiel 3: mehrere Einzel-Seiten Ein Freund auf Reisen schickt regelmäßig Postkarten, deren Vorder- und Rückseite digitalisiert werden sollen. Für jede Postkarte soll im Ordner `Post` ein Unterordner für den Monat (ausgeschrieben) und darin für das Datum erzeugt werden. Darin sollen die Vorder- und Rückseite als `Seite 1.jpg` bzw. `Seite 2.jpg` abgelegt werden. Hierzu empfiehlt sich folgendes Schema: `$HOME/Post/$Monat/$TAG.$MONAT/Seite $SEITE` Wird dann der 18.9. im Kalender und `jpeg` als Format gewählt, so würde die erste gescannte Seite als `/Post/September/18.9./Seite 1.jpg` und die zweite als `/Post/September/18.9./Seite 2.jpg` gespeichert. ### Beispiel 4: mehrseitiges PDF Eine Bank schickt monatlich Kontoauszüge, die mehrere Seiten lang sein können. Diese sollen unter `Kontoauszüge//- Kontoauszug.pdf` abgelegt werden. Hier empfielt es sich, ein Profil `Kontoauszug` anzulegen und folgenden _Pfad_ zu setzen: `$HOME/Kontoauszuüge/$JAHR/$JAHR-$MONAT - $PROFIL $SEITE`. Das `$PROFIL` im Pfad wird durch den Profil-Namen `Kontoauszug` ersetzt werden. Der Platzhalter `$SEITE` ist notwendig, da das Einscannen Seite für Seite erfolgt und die einzelnen Seiten erstmal unter verschiedenen Namen abgelegt werden – diese Seitennummer kann beim nachfolgenden Binden des PDFs entfernt werden, dazu gleich mehr. Um den mehrseitigen Kontoauszug für März 2023 zu scannen muss man also einen Tag im März 2023 im Kalender und das Profil `Kontoauszug` und als Typ `pdf` oder `pdf+ocr` auswählen. Beim ersten Klick auf _Scannen_ wird dann im oberen Bereich der Anwendung ein Projekt `/Kontoauszuüge/2023/2023-03 - Kontoauszug [Seite]` angelegt und nach dem Scannen eine Datei `2023-03 - Kontoauszug 1.pdf` erzeugt. Beim nächsten Klick dann die Datei `2023-03 - Kontoauszug 2.pdf` und so weiter. Nachdem alle Seiten des Projektes gescannt wurden, kann in der Projektzeile am oberen Rand der Anwendung der Button _PDFs binden_ gedrückt werden. Dies wird alle PDF-Dateien des Projekts (nicht aber die _jpg_-Dateien) zu einem mehrseitigen PDF vereinen. Wenn der Kontoauszug vorher fünf seiten hatte, die alle gescannt wurden, so wird das gebundene PDF wie folgt benannt: `2023-03 - Kontoauszug 1…5.pdf`. Falls die Seitenangabe `1…5` nicht erwünscht ist, kann vor dem Binden die Option `[Seite] beim Zusammenfügen entfernen` gewählt werden. Dann wäre der Seitenname des gebundenen PDFs `2023-03 - Kontoauszug.pdf`. ### Löschen von einzelnen Seiten beim Scannen Manchmal passiert es, das man versehentlich eine Seite doppelt scannt oder die aktuelle gescannte Seite nicht richtig ausgerichtet war. Da jede gescannte Seite im Vorschaufenster angezeigt wird, sollte dies schnell auffallen. In so einem Fall kann man die letzte Seite des aktuellen Projekts einfach löschen, indem man auf den entsprechenden Button klickt: ## TODOs * Zusatzfelder zum aktuellen Profile mit speichern * diese Anleitung vervollständigen * Löschen von Profilen * Funktion der Projekt-Knöpfe * Buttons deaktivieren, die von der Logik keinen Sinn ergeben