Neue iPad Ausgabegeräte inkl. Konfiguration

This commit is contained in:
2025-10-08 18:55:20 +02:00
parent e83756e3ac
commit 8c729e4f89
27 changed files with 13784 additions and 1792 deletions

View File

@@ -27,8 +27,14 @@ Die PDF-Ausgabe kann aktuell wahlweise für die folgenden Geräte optimiert erze
- [reMarkable 2](./src/data/rm2.pdf) - [reMarkable 2](./src/data/rm2.pdf)
- [reMarkable Paper Pro](./src/data/paperpro.pdf) - [reMarkable Paper Pro](./src/data/paperpro.pdf)
- [reMarkable Paper Pro Move](./src/data/move.pdf) - [reMarkable Paper Pro Move](./src/data/move.pdf)
- [iPad Mini](./src/data/mini.pdf) (sichtbare Displaygröße 12x16cm)
- [DIN A4](src/data/a4.pdf) (für beliebige Geräte) - [iPad Mini 2-5](./src/data/mini2345.pdf)
- [iPad Mini 6-7](./src/data/mini67.pdf)
- [iPad 7-9](./src/data/ipad789.pdf)
- [iPad 10-11](./src/data/ipad1011.pdf)
- [iPad Air 4-7](./src/data/air4567.pdf)
- [DIN A4](src/data/a4.pdf) (für andere Geräte)
### Dokumentation der Verarbeitung ### Dokumentation der Verarbeitung

View File

@@ -22,10 +22,10 @@ stundenplandatei = stundenplan.md
# Trenner der Spalten in den CSV-Eingabedateien # Trenner der Spalten in den CSV-Eingabedateien
csvtrenner = ; csvtrenner = ;
# Rand für Toolbar des Devices lassen: links, rechts (leer = kein Rand) # Rand für Toolbar des Remarkable Devices: links, rechts (leer = kein Rand)
rand = links rand = links
# Ausgabegerät: rm2, paperpro, move, mini, a4 # Ausgabegerät: rm2, paperpro, move, mini2345, mini67, ipad789, ipad1011, air4567, a4
device = rm2 device = rm2
``` ```
@@ -37,5 +37,6 @@ Die Parameter sind zwar selbsterklärend, werden hier aber dennoch einmal kurz e
- Auf Wunsch können die Ferienwochen aus der Übersicht entfernt werden. Die entsprechenden Kalenderwochen müssen hier (nur mit Komma und ohne Leerzeichen getrennt) angegeben werden. - Auf Wunsch können die Ferienwochen aus der Übersicht entfernt werden. Die entsprechenden Kalenderwochen müssen hier (nur mit Komma und ohne Leerzeichen getrennt) angegeben werden.
- Soll die Startseite des Zieldokuments einen Stundenplan enthalten, so ist dieser im Eingabeverzeichnis als Markdown Dokument anzugeben (vgl. auch nächster Abschnitt). Der Dateiname wird hier festgelegt. Fehlt der Dateiname, so wird der Stundenplan automatisch weggelassen. - Soll die Startseite des Zieldokuments einen Stundenplan enthalten, so ist dieser im Eingabeverzeichnis als Markdown Dokument anzugeben (vgl. auch nächster Abschnitt). Der Dateiname wird hier festgelegt. Fehlt der Dateiname, so wird der Stundenplan automatisch weggelassen.
- Für die CSV Dateien kann hier das Symbol zum Trennen der Spalte (voreingestellt Semikolon) bei Bedarf angepasst werden. - Für die CSV Dateien kann hier das Symbol zum Trennen der Spalte (voreingestellt Semikolon) bei Bedarf angepasst werden.
- Auf einigen Zieldevices (insbesondere bei den Remarkable Geräten) wird bei der Bearbeitung eines Dokuments eine Toolbar eingeblendet. Um Platz für diese Toolbar zu schaffen, kann links oder rechts ein kleiner Rand gelassen werden. - Auf allen ReMarkable Zieldevices wird bei der Bearbeitung eines Dokuments eine Toolbar eingeblendet. Um Platz für diese Toolbar zu schaffen, kann links oder rechts ein kleiner Rand gelassen werden.
- Zum Schluss kommt die wichtigste Festlegung, das Zielgerät. Hier kann aktuell zwischen ``rm2`` (reMarkable 2), ``paperpro`` (reMarkable Paper Pro), ``move`` (reMarkable Paper Pro Move), ``mini`` (iPad Mini mit 12x16cm Bildschirm) und ``a4`` (DIN A4) gewählt werden. - Zum Schluss kommt die wichtigste Festlegung, das Zielgerät. Hier kann aktuell zwischen ``rm2`` (reMarkable 2), ``paperpro`` (reMarkable Paper Pro), ``move`` (reMarkable Paper Pro Move), ``mini2345`` (iPad Mini 2-5), ``mini67`` (iPad Mini 6-7), ``ipad789`` (iPad 7-9), ``ipad1011`` (iPad 10-11), ``air4567`` (iPad Air 4-7) und ``a4`` (DIN A4) gewählt werden.

File diff suppressed because one or more lines are too long

2938
src/data/air4567.pdf Normal file

File diff suppressed because one or more lines are too long

View File

@@ -17,10 +17,10 @@ stundenplandatei = stundenplan.md
# Trenner der Spalten in den CSV-Eingabedateien # Trenner der Spalten in den CSV-Eingabedateien
csvtrenner = ; csvtrenner = ;
# Rand für Toolbar des Devices lassen: links, rechts (leer = kein Rand) # Rand für Toolbar des Remarkable Devices: links, rechts (leer = kein Rand)
rand = links rand = links
# Ausgabegerät: rm2, paperpro, move, mini, a4 # Ausgabegerät: rm2, paperpro, move, mini2345, mini67, ipad789, ipad1011, air4567, a4
device = rm2 device = rm2

2938
src/data/ipad1011.pdf Normal file

File diff suppressed because one or more lines are too long

2996
src/data/ipad789.pdf Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

2996
src/data/mini67.pdf Normal file

File diff suppressed because one or more lines are too long

View File

@@ -2212,7 +2212,7 @@ endobj
endobj endobj
369 0 obj 369 0 obj
<< <<
/Author () /CreationDate (D:20251007192249+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20251007192249+02'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>) /Author () /CreationDate (D:20251008182110+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20251008182110+02'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>)
/Subject () /Title () /Trapped /False /Subject () /Title () /Trapped /False
>> >>
endobj endobj
@@ -3200,7 +3200,7 @@ xref
trailer trailer
<< <<
/ID /ID
[<a2c6b768d7471a1b2af9008f51e0fcc3><a2c6b768d7471a1b2af9008f51e0fcc3>] [<a406afd5057f049250160f571ad4408b><a406afd5057f049250160f571ad4408b>]
% ReportLab generated PDF document -- digest (http://www.reportlab.com) % ReportLab generated PDF document -- digest (http://www.reportlab.com)
/Info 369 0 R /Info 369 0 R

View File

@@ -1977,7 +1977,7 @@ endobj
endobj endobj
345 0 obj 345 0 obj
<< <<
/Author () /CreationDate (D:20251007182406+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20251007182406+02'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>) /Author () /CreationDate (D:20251008182049+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20251008182049+02'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>)
/Subject () /Title () /Trapped /False /Subject () /Title () /Trapped /False
>> >>
endobj endobj
@@ -2754,7 +2754,7 @@ xref
trailer trailer
<< <<
/ID /ID
[<c555789b3f314e6d8ad34975281d3b2a><c555789b3f314e6d8ad34975281d3b2a>] [<d107df19c921b5a4291fbb0c71197006><d107df19c921b5a4291fbb0c71197006>]
% ReportLab generated PDF document -- digest (http://www.reportlab.com) % ReportLab generated PDF document -- digest (http://www.reportlab.com)
/Info 345 0 R /Info 345 0 R

View File

@@ -2097,7 +2097,7 @@ endobj
endobj endobj
357 0 obj 357 0 obj
<< <<
/Author () /CreationDate (D:20251007182353+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20251007182353+02'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>) /Author () /CreationDate (D:20251008182035+02'00') /Creator (\(unspecified\)) /Keywords () /ModDate (D:20251008182035+02'00') /Producer (xhtml2pdf <https://github.com/xhtml2pdf/xhtml2pdf/>)
/Subject () /Title () /Trapped /False /Subject () /Title () /Trapped /False
>> >>
endobj endobj
@@ -2984,7 +2984,7 @@ xref
trailer trailer
<< <<
/ID /ID
[<a0cbd25c733ca5c5a241ffe0945ba3d4><a0cbd25c733ca5c5a241ffe0945ba3d4>] [<c1601852daf517862bbadbacd3c965f9><c1601852daf517862bbadbacd3c965f9>]
% ReportLab generated PDF document -- digest (http://www.reportlab.com) % ReportLab generated PDF document -- digest (http://www.reportlab.com)
/Info 357 0 R /Info 357 0 R

View File

@@ -1,11 +0,0 @@
@page {
size: a4 portrait;
margin-left: 1.25cm; /* Rand LINKS */
margin-right: 0.5cm;
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/large.css");
@import url("devices/css/color.css");

View File

@@ -1,11 +0,0 @@
@page {
size: a4 portrait;
margin-left: 0.5cm;
margin-right: 1.25cm; /* Rand RECHTS */
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/large.css");
@import url("devices/css/color.css");

11
src/devices/air4567.css Normal file
View File

@@ -0,0 +1,11 @@
@page {
size: 15.78cm 22.7cm;
margin-left: 0.25cm;
margin-right: 0.25cm;
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/large.css");
@import url("devices/css/color.css");

37
src/devices/air4567.ini Normal file
View File

@@ -0,0 +1,37 @@
[Navigation]
# Bezeichnungen in Navigation (Zeilenumbruch vermeiden): normal, kurz, abgekuerzt
bezeichnung = kurz
[Namen]
# Schülernamen in Tabellen in Langform ("Hans Müller") oder Kurzform ("Hans M."): lang, kurz
form = lang
[Korrekturbogen]
# Anzahl der Aufgaben in der Korrekturtabelle: 1, 2, 3, ...
anzahl_aufgaben = 5
[SoMiNoten]
# Anzahl der SoMi-Noten-Spalten
anzahl_noten = 14
# kompakte Darstellung: ja, nein
kompakt = nein
[Hausaufgaben]
# Anzahl der HA-Noten-Spalten
anzahl_ha = 10
[Checkliste]
# Anzahl der Check-Spalten
anzahl_checks = 10

11
src/devices/ipad1011.css Normal file
View File

@@ -0,0 +1,11 @@
@page {
size: 15.78cm 22.7cm;
margin-left: 0.25cm;
margin-right: 0.25cm;
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/large.css");
@import url("devices/css/color.css");

37
src/devices/ipad1011.ini Normal file
View File

@@ -0,0 +1,37 @@
[Navigation]
# Bezeichnungen in Navigation (Zeilenumbruch vermeiden): normal, kurz, abgekuerzt
bezeichnung = kurz
[Namen]
# Schülernamen in Tabellen in Langform ("Hans Müller") oder Kurzform ("Hans M."): lang, kurz
form = lang
[Korrekturbogen]
# Anzahl der Aufgaben in der Korrekturtabelle: 1, 2, 3, ...
anzahl_aufgaben = 5
[SoMiNoten]
# Anzahl der SoMi-Noten-Spalten
anzahl_noten = 14
# kompakte Darstellung: ja, nein
kompakt = nein
[Hausaufgaben]
# Anzahl der HA-Noten-Spalten
anzahl_ha = 10
[Checkliste]
# Anzahl der Check-Spalten
anzahl_checks = 10

11
src/devices/ipad789.css Normal file
View File

@@ -0,0 +1,11 @@
@page {
size: 15.59cm 20.78cm;
margin-left: 0.25cm;
margin-right: 0.25cm;
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/large.css");
@import url("devices/css/color.css");

37
src/devices/ipad789.ini Normal file
View File

@@ -0,0 +1,37 @@
[Navigation]
# Bezeichnungen in Navigation (Zeilenumbruch vermeiden): normal, kurz, abgekuerzt
bezeichnung = kurz
[Namen]
# Schülernamen in Tabellen in Langform ("Hans Müller") oder Kurzform ("Hans M."): lang, kurz
form = lang
[Korrekturbogen]
# Anzahl der Aufgaben in der Korrekturtabelle: 1, 2, 3, ...
anzahl_aufgaben = 5
[SoMiNoten]
# Anzahl der SoMi-Noten-Spalten
anzahl_noten = 14
# kompakte Darstellung: ja, nein
kompakt = nein
[Hausaufgaben]
# Anzahl der HA-Noten-Spalten
anzahl_ha = 10
[Checkliste]
# Anzahl der Check-Spalten
anzahl_checks = 10

View File

@@ -1,11 +0,0 @@
@page {
size: 12cm 16cm;
margin-left: 0.75cm; /* Toolbar LINKS */
margin-right: 0.25cm;
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/small.css");
@import url("devices/css/color.css");

View File

@@ -1,11 +0,0 @@
@page {
size: 12cm 16cm;
margin-left: 0.25cm;
margin-right: 0.75cm; /* Toolbar RECHTS */
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/small.css");
@import url("devices/css/color.css");

View File

@@ -22,7 +22,7 @@ anzahl_aufgaben = 5
anzahl_noten = 12 anzahl_noten = 12
# kompakte Darstellung: ja, nein # kompakte Darstellung: ja, nein
kompakt = nein kompakt = ja
[Hausaufgaben] [Hausaufgaben]

11
src/devices/mini67.css Normal file
View File

@@ -0,0 +1,11 @@
@page {
size: 11.6cm 17.66cm;
margin-left: 0.25cm;
margin-right: 0.25cm;
margin-top: 0.25cm;
margin-bottom: 0.25cm;
}
@import url("devices/css/small.css");
@import url("devices/css/color.css");

37
src/devices/mini67.ini Normal file
View File

@@ -0,0 +1,37 @@
[Navigation]
# Bezeichnungen in Navigation (Zeilenumbruch vermeiden): normal, kurz, abgekuerzt
bezeichnung = abgekuerzt
[Namen]
# Schülernamen in Tabellen in Langform ("Hans Müller") oder Kurzform ("Hans M."): lang, kurz
form = lang
[Korrekturbogen]
# Anzahl der Aufgaben in der Korrekturtabelle: 1, 2, 3, ...
anzahl_aufgaben = 5
[SoMiNoten]
# Anzahl der SoMi-Noten-Spalten
anzahl_noten = 12
# kompakte Darstellung: ja, nein
kompakt = ja
[Hausaufgaben]
# Anzahl der HA-Noten-Spalten
anzahl_ha = 8
[Checkliste]
# Anzahl der Check-Spalten
anzahl_checks = 10

View File

@@ -72,8 +72,15 @@ else:
css_devicefile = 'devices/'+device+myrand+'.css' css_devicefile = 'devices/'+device+myrand+'.css'
if (not(os.path.exists(css_devicefile))): if (not(os.path.exists(css_devicefile))):
print(css_devicefile+" nicht vorhanden!") if (len(rand)>0):
exit(0) print(css_devicefile+" (mit Rand) nicht vorhanden, verwende CSS ohne Rand.")
css_devicefile = 'devices/'+device+'.css'
if (not(os.path.exists(css_devicefile))):
print(css_devicefile+" nicht vorhanden!")
exit(0)
else:
print(css_devicefile+" nicht vorhanden!")
exit(0)
# 4. Vorbereitungen für Verarbeitung # 4. Vorbereitungen für Verarbeitung