[GELÖST] Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
BrotherJ
Beiträge: 325
Registriert: 15.11.2018 07:56:18

[GELÖST] Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Beitrag von BrotherJ » 30.07.2021 18:11:09

Hi,

ich möchte Kontoauszüge per Konsolenbefehle einscannen und anschliessend je drei Auszüge in einer Jpeg-Datei untereinander hängen, so dass eine DIN A4-Seite (210x297) ausgefüllt ist mit drei Kontoauszügen. Da die Auszüge das Format 210x105 haben verwende ich in Schritt 1

Code: Alles auswählen

scanimage -p -v --resolution=600 --mode=Gray -x 210 -y 105 --format jpeg > 0001.jpg
Im Schritt 2 skaliere in einer Schleife alle JPG-Dateien mit

Code: Alles auswählen

mogrify -resize 4977x2339 0001.jpg
Besser wäre es hier, wenn man nur die Höhe in Millimeter, nämlich 99 angeben könnte und die Breite automatisch ermittelt wird.

Jetzt fehlt mir der geeignete Befehl, der einmal an der y-Position "0" die erste Datei setzt, dann an y=99 und zuletzt an y=198 eine JPG-Datei anfügt, bei einem Dateiformat 2480 x 3508 (300 ppi), was A4 entspräche, und so eine neue JPG-Datei mit drei EInzelbildern erzeugt.

Hat dazu jemand unter Euch eine Idee, wie das mit welchen Befehl umsetzbar wäre?

Grüße

BrotherJ
Zuletzt geändert von BrotherJ am 30.07.2021 18:36:55, insgesamt 1-mal geändert.

rodney
Beiträge: 370
Registriert: 09.12.2016 04:15:59

Re: Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Beitrag von rodney » 30.07.2021 18:29:08

Sollte auch mit dem Befehl convert funktionieren:

Code: Alles auswählen

convert 0001.jpg 0002.jpg 0003.jpg -append untereinander.jpg

BrotherJ
Beiträge: 325
Registriert: 15.11.2018 07:56:18

Re: Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Beitrag von BrotherJ » 30.07.2021 18:36:36

Vielen Dank! :THX:
Das ist es!

dakuan
Beiträge: 107
Registriert: 28.04.2011 22:09:39

Re: Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Beitrag von dakuan » 30.07.2021 19:00:47

Direkt helfen kann ich wahrscheinlich nicht. Aber ich hatte vor einiger Zeit ein ähnliches Problem, bei dem ich allerdings nur Thumbnail Images zu einem Indexbild zusammenbauen wollte. Ich habe das dann aber in ein Programm eingebaut, das mir jetzt aber die Kommandozeile ausdrucken kann (kommt gleich).

Aber zuerst solltest Du beim einscannen PNG Dateien erzeugen lassen. Falls die zu groß werden auch mit

Code: Alles auswählen

png24:Name.png
sonst werden 16 Bit pro Farbkanal genommen.

Mein Programm erzeugt folgende Kommandozeile:

Code: Alles auswählen

convert -size 480x170! xc:#FFFFFF \
-draw "image over 10,10 100,150 'IMGP1117.jpg'" \
-draw "image over 120,47 170,113 'IMGP1116.jpg'" \
-draw "image over 300,47 170,113 'IMGP1118.jpg'" \
-fill "#4040FF" -font Helvetica-Bold -pointsize 28 \
-gravity center -annotate 0x0+55-61 "Traktor" -quality 95 test42.jpg
Die erste Zeile legt die Größe der Ausgabedatei fest (und die Hintergrundfarbe).
Die Zeilen 2 bis 4 importieren das angegebene Foto und positionieren es an den angegebenen x/y Positionen. Dabei werden diese in die angegebene Box eingepasst (hier 100x150 bzw. 170x113).

Die Größe der Box wird von dem Programm ausgerechnet, um das Seitenverhältnis zu behalten.

Der Rest ist für die Überschrift und am Ende die Ausgabedatei (bei .JPG mit Qualitätsstufe).

Das Ergebnis sieht dann ungefähr so aus 3184

Ps. Da war ich wohl wieder zu langsam.

BrotherJ
Beiträge: 325
Registriert: 15.11.2018 07:56:18

Re: Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Beitrag von BrotherJ » 31.07.2021 10:15:16

dakuan hat geschrieben: ↑ zum Beitrag ↑
30.07.2021 19:00:47


Ps. Da war ich wohl wieder zu langsam.
Was heisst zu langsam? Ich denke hier zählt jeder gute und produktive Gedanke. Das lesen ja auch Andere, die diesen Ansatz suchen. Ich habe nur nach dem richtigen Befehl, in diesem Fall der Befehlsoption gesucht.

Mein Ansatz ist auch ein ganz Anderer. Mir ist es wichtig, sehr viele Kontoauszüge sehr schnell einzuscannen und dann zum sparsamen Ausdruck auf DIN A4 zur Verfügung zu stellen. Ein Einscannen von drei Stück auf DIN A4 ist zu aufwendig beim korrekten Ausrichten auf dem Scanner. Ergo soll das Zusammenfügen später via Script erfolgen und der Scanprozess nur über das 201x105-Format. Von daher ist Dein Ansatz übers Ziel hinausgeschossen und der Hinweis auf "-append" unter convert die perfekte Antwort. Aber es gibt ja auch Andere, die Deine Lösung benötigen, womit hier jede Antwort sinnvoll ist, wenn sie sachlich ist.

debianoli
Beiträge: 4152
Registriert: 07.11.2007 13:58:49
Lizenz eigener Beiträge: MIT Lizenz

Re: [GELÖST] Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Beitrag von debianoli » 31.07.2021 10:43:17

BrotherJ hat geschrieben: ↑ zum Beitrag ↑
30.07.2021 18:11:09

Code: Alles auswählen

mogrify -resize 4977x2339 0001.jpg
Besser wäre es hier, wenn man nur die Höhe in Millimeter, nämlich 99 angeben könnte und die Breite automatisch ermittelt wird.
Die Breite/Höhe kann man immer automatisch setzen lassen, man lässt einfach einen Wert weg. Dann machen das die Imagemagick-Programme automatisch:

Code: Alles auswählen

mogrify -resize 4977x 0001.jpg
Ist es das, was du willst?

Mit deinen 99 Millimetern wird es anspruchsvoller, Computer-Bilder sind immer in Pixeln. D.h. eine Endgröße in Millimetern hängt von der Auflösung ab, den dpi. Da musst du Rückwärtsrechnen. Evtl wäre es auch sinnvoll, ein PDF mit einer bestimmten Auflösung (option -density) zu erzeugen. Musst du rumspielen. https://imagemagick.org/script/command- ... hp#density

BrotherJ
Beiträge: 325
Registriert: 15.11.2018 07:56:18

Re: [GELÖST] Drei JPG-Kontoauszüge in eine A4-JPG-Datei einfügen

Beitrag von BrotherJ » 01.08.2021 15:51:41

debianoli hat geschrieben: ↑ zum Beitrag ↑
31.07.2021 10:43:17
Die Breite/Höhe kann man immer automatisch setzen lassen, man lässt einfach einen Wert weg. Dann machen das die Imagemagick-Programme automatisch:

Code: Alles auswählen

mogrify -resize 4977x 0001.jpg
Ist es das, was du willst?
Ja, damit ist mir bereits geholfen. Vielen Dank :THX:

Antworten