Hallo,
Ich betreibe eine MediaWiki mit der Collection Extension. Mit dieser kann man mehere Wiki Seiten zu einer PDF zusammenfassen. Funktioniert auch ganz gut. Allerdings ist die Schrift in der erzeugten PDF viel zu groß gewesen. Nach langem rechachieren hab ich herausgefunden das die Parameter für die Schriftgröße, Zeilenabstand etc sich in der pdfstyle.py befinden. Hab etwas rum probiert und es geschaft die Schriftgröße auf ein erträgliches Maß zu bringen. Nur eins hab ich bis jetzt noch nicht geschaft.
Die Überschrieften in den Wiki Seiten für die PDF anzupassen. Die sind immer zugroß. Ich meine hier die z.B 2.Überschrift, 3.Überschrift usw, wie es eben von der Wiki-Syntax vorgegeben ist.
Ich weiss nicht welcher Parameter die Größe für diese vorgibt.
Hab schon alle Werte geändert die mir logisch erschienen. Wie z.B:
if mode == 'toc_group':
style.fontSize = 10
style.leading = 20
if mode == 'toc_chapter':
style.fontSize = 12
style.leading = 20
if mode == 'toc_article':
style.fontSize = 8
style.leading = 12
style.leftIndent = para_left_indent
Hatte jeweils immer die frontSize geändert.
Ich hoffe ich habe mich einigermaßen verständlich ausgedrückt.
Danke!
MediaWiki mit Collection Extension - Fragen zu pdfstyles.py
-
- User
- Beiträge: 2
- Registriert: Montag 24. August 2009, 14:29
Problem gelöst. Für alle die es interesiert es war folgende Zeile:
elif mode == 'section':
lvl = max(min(5,lvl), 1)
style.fontSize = 16 - (lvl - 1) * 2
style.leading = style.fontSize + max(2, min(int(style.fontSize / 5), 3)) # magic: increase in leading is between 2 and 3 depending on fontsize...
elif mode == 'section':
lvl = max(min(5,lvl), 1)
style.fontSize = 16 - (lvl - 1) * 2
style.leading = style.fontSize + max(2, min(int(style.fontSize / 5), 3)) # magic: increase in leading is between 2 and 3 depending on fontsize...
Hallo.
Ich habe noch ein paar mehr oder weniger nützliche Tipps für dich:
- Das Forum hat Code-Tags, damit kannst du bei deiner nächsten Frage den Code einpacken. Dann bleibt auch die Einrückung erhalten und man hat praktischen Syntaxhighlighting.
- Deinem ersten Post nach, solltest du für die beiden nachfolgenden Fälle statt "if" besser "elif" verwenden, da sie sich gegenseitig ausschließen. Noch schöner könntest du es gestalten, wenn du die if-Abfragen durch ein Dictionary ersetzt.
- Statt der kryptischen Abkürzung "lvl" könntest du es auch ausschreiben. Ich nehme mal an, dass es "level" heißen soll, was nur zwei Buchstaben mehr sind, aber die Lesbarkeit erhöht.
Ich habe noch ein paar mehr oder weniger nützliche Tipps für dich:
- Das Forum hat Code-Tags, damit kannst du bei deiner nächsten Frage den Code einpacken. Dann bleibt auch die Einrückung erhalten und man hat praktischen Syntaxhighlighting.
- Deinem ersten Post nach, solltest du für die beiden nachfolgenden Fälle statt "if" besser "elif" verwenden, da sie sich gegenseitig ausschließen. Noch schöner könntest du es gestalten, wenn du die if-Abfragen durch ein Dictionary ersetzt.
- Statt der kryptischen Abkürzung "lvl" könntest du es auch ausschreiben. Ich nehme mal an, dass es "level" heißen soll, was nur zwei Buchstaben mehr sind, aber die Lesbarkeit erhöht.
Das Leben ist wie ein Tennisball.