headerbild blog

Neue Version 4.2

Vor vier Monaten habe ich die Version 4.0 veröffentlicht, als Start für viele Neuerungen. Zuerst erwartete ich deutlich sichtbare Inkompatibilitäten zur letzten stabilen Version, doch so wie es aussieht, gibt es viele neue Features, aber keine Änderungen bei bestehenden Dokumenten.

Unter der Haube hat sich viel geändert. Neu ist das ganze Thema Mehrsprachigkeit, das ich schon im Blog hatte und damit zusammenhängend die Einbindung von Schriftarten.

Fonts und Sprachunterstützung

Beim Einbinden von Schriftdateien gibt es nun die Wahl zwischen »alt« und »neu« (fontforge und harfbuzz). Die Voreinstellung ist derzeit noch fontforge, doch das wird sich irgendwann ändern. Daher ist es sinnvoll, die Dokumente jetzt schon mal mit der Option fontloader="harfbuzz" bei <LoadFontfile> zu testen.

von Patrick Gundlach |

Mehrsprachigkeit

Der speedata Publisher kann seit jeher mit mehrsprachigen Texten umgehen. Für sehr viele (westliche) Sprachen gibt es Trennmuster. Einfache Texte in Chinesisch waren schon immer möglich. Mit der Version 4.1 hat sich sehr viel im Bereich der Sprachfähigkeit getan. Nun können auch komplexe Sprachen wie Arabisch und gemischte rechts-nach-links (RTL) und links-nach-rechts (LTR) Texte korrekt dargestellt werden.

Der speedata Publisher integriert zwei wichtige Funktionen bzw. Bibliotheken, um das zu können. Das sind

  • harfbuzz Bibliothek
  • Bidi-Algorithmus

Harfbuzz

von Patrick Gundlach |

Version 4.0

Es ist knapp ein Monat her, dass ich die Version 4.0 veröffentlicht habe. Da einige größere Änderungen anstehen, habe ich mich entschlossen, die Versionsnummer von 3 auf 4 zu erhöhen.

Die letzte stabile Version 3.8 ist vom Januar 2020. In den gut sieben Monaten ist natürlich wieder einiges passiert. Hier ein paar der Highlights:

von Patrick Gundlach |

speedata in 1000 Jahren und TUG 2020 Konferenz

Die TUG 2020 Konferenz ist zu Ende. Da es eine online-Konferenz war, konnte man prima seinen Talk vorher aufzeichnen und dann einfach online präsentieren. Als »Abfallprodukt« habe ich das Video auf youtube online gestellt:

Vielleicht ist es ja auch für den Besucher hier interessant. Länge: ca. 30 Minuten.

Die Folien liegen auf notist und auf der Übersichtsseite der Konferenz gibt es auch mein Paper dazu als PDF zum Download.

von Patrick Gundlach |

Docker Image für den Servermodus

Ein Docker Image für den Servermodus des speedata Publisher ist leicht erstellt. Damit kann man per REST-API Publishing Aufträge ohne eigene Installation ausführen.

docker logo

Mit Docker kann man Programme in einer virtuellen Maschine ausführen. Dadurch spart man sich die lokale Installation.

Es wird ein Ubuntu Image als Basis genommen und den speedata Publisher per apt hinzugefügt. Details dazu sind in der Installationsanleitung im Handbuch zu finden.

Die benutzte Verzeichnisstruktur auf dem lokalen Rechner ist folgende:

von Patrick Gundlach |

CSS border / Radius und PDF

Ich bin ja gerade dabei, HTML und CSS-Fähigkeiten in den speedata Publisher einzubauen. Dazu gehören die großen Dinge wie Seitenvorlagen und Schriftarten, aber auch die kleinen Details, z.B. CSS Border. Die meist nur bei oberflächlicher Betrachtung einfach sind.

Einfache Fälle

Die HTML-Datei für die Beispiele ist einfach aufgebaut:

<!DOCTYPE html>
<head>
    <link href="mystyle.css" rel="stylesheet">
</head>
<body>
    <span>border</span>
</body>
</html>

mit der dazugehörigen CSS-Datei:

span {
  border: 2px solid green;
}
Bild eines einfachen HTML Rands
von Patrick Gundlach |

Entwicklungen der letzten Wochen

Auch, wenn es hier im Blog etwas ruhiger war die letzten Wochen, gibt es »unter der Haube« einige Entwicklungen. Hauptsächlich betreffen diese Änderungen das Handbuch.

Übersetzung des Handbuchs

Das Handbuch wird derzeit ins Englische übersetzt. Da eine manuelle Übersetzung immer Zeit in Anspruch nimmt, habe ich alle Seiten aus dem deutschen Handbuch vorab durch eine automatische Übersetzung laufen lassen, damit überhaupt Inhalte zur Verfügung stehen.

altes und neues Handbuch

Das alte Handbuch (links), das neue Handbuch (rechts). Nun entspricht das englische Handbuch demselben Stand wie das deutsche.

Neben der Übersetzung des Handbuchs gibt es auch ein paar neue Kapitel.

von Patrick Gundlach |

Print CSS mit speedata

Schon lange kann der speedata Publisher mit HTML in den Daten umgehen. Bisher war das nur für wenige Elemente möglich (z.B. b/u/em/ul/li/table) und auch die Gestaltungsmöglichkeiten mit CSS waren eingeschränkt. In der aktuellen Entwicklungsversion (3.9.x) wird ein ganz neuer und robuster HTML Parser benutzt, der auch die CSS Fähigkeiten stark erweitert.

Die Idee ist, dass sich die Ausgabe im Browser und die Ausgabe im PDF soweit wie möglich gleichen.

Vergleich HTML und PDF

Dasselbe (HTML) Dokument im Browser (links) und als PDF (rechts). Noch gibt es Unterschiede bei den Abständen, aber es sollte klar werden, wo die Reise hingeht.

von Patrick Gundlach |

Neue Option --suppressinfo

Es gibt ab Version 3.9.3 einen neuen Kommandozeilenparameter --suppressinfo, um die Datumsangaben aus dem PDF zu löschen und die zufällige Dokumenten ID durch eine feste zu ersetzen.

Normalerweise werden in dem Info-Dictionary Angaben zur Software und zum Dokument gemacht, z.B.

2 0 obj
<<
  /CreationDate (D:20200128205428+01'00')
  /Creator (speedata Publisher 3.9.2, www.speedata.de)
  /ModDate (D:20200128205428+01'00')
  /Producer (LuaTeX 111 - 7235)
  /Trapped /False
>>
endobj

Die Einträge CreationDate und ModDate beinhalten das Datum der Dokumenterzeugung. Manchmal möchte man das aber nicht im PDF haben.

Ebenso ist am Ende der PDF Datei (Trailer) die Dokumenten ID zu finden, die meist zufällig generiert wird:

trailer <<
  /Info 2 0 R
  /Root 1 0 R
  /Size 20
  /ID [<68365150b6c3965d17fe7bf2a16f4a4b><68365150b6c3965d17fe7bf2a16f4a4b>]
>>
von Patrick Gundlach |

Neue Version 3.8

Vor ein paar Tagen habe ich die Version 3.8 veröffentlicht. Zur Erinnerung: die Versionen mit einer geraden Zahl an der zweiten Stelle, sind die »stabilen« Versionen, d.h. vor dem Erscheinen gibt es eine längere Zeit ohne neue Features, in denen ich Fehlerberichte sammle. Erst, wenn es eine Zeit lang keine Fehlerberichte gibt, wird eine stabile Version veröffentlicht.

Änderungen

Die letzte stabile Version ist die 3.6 vom Februar letzten Jahres. Es hat sich natürlich einiges getan. Der Schwerpunkt liegt immer darauf, neue Features so einzubauen, dass alle alten Dokumente ohne Änderungen immer gleich erzeugt werden.

Neben vielen Fehlerkorrekturen gibt es folgende neuen Punkte bzw. sichtbare Änderungen gegenüber der Version 3.6:

von Patrick Gundlach |