Montag, 2. Oktober 2023

Better Access Charts: Korrekturen und Anpassungen bei den Fonts

Bei den Fonts hat es einige Korrekturen und Anpassungen gegeben. Warum diese nötig wurden und was dabei konkret geändert wurde, erläutert dieser Beitrag.

Bei der Arbeit mit Better Access Charts habe ich festgestellt, dass beim Zeichensatz die Eigenschaft "IsBold" nicht mehr richtig berücksichtigt wird. Dasselbe gilt auch für die Eigenschaft "IsItalic", wenn gleichzeitig auch "IsBold" aktiviert ist. Dieser Fehler ist im Titel, im Untertitel, in der Legende und bei den Data Labes aufgetreten.

Eine Analyse des erzeugten Codes in der HTML-Datei hat dann schnell den Fehler offenbart. Mit der Version 3.04.16 von Better Access Charts wird erstmals die Version 3.02 von Chart.js verwendet. Beim Wechsel auf Chart.js Version 3 war einiges zu beachten. So hat sich bei den Fonts die Verwendung der Eigenschaft "bold" geändert.
In der Version 2 von Chart.js wurde diese im Abschnitt "Font" als "style: bold" übergeben. Seit Chart.js Version 3 hat sich dies geändert. Jetzt wird "weight: bold" verwendet.

Nach einer kurzen Analyse konnte der VBA-Code so angepasst werden, dass jetzt der für Chart.js Version 3 richtige HTML-Code erzeugt wird. Problem gelöst.

Der Titel wird immer fett angezeigt

Als ich mich nun mit den Font-Eigenschaften näher beschäftigt habe, konnte ich feststellen, dass die Eigenschaft "IsBold" beim Titel keine Wirkung hat. Dieser wird immer fett dargestellt, egal welcher Wert in Better Access Charts ausgewählt ist.

Ein Blick in die Dokumentation von Chart.js hat dann den Grund offenbart: Der Titel wird standardmäßig immer fett dargestellt. Da Better Access Charts für den Fall, dass der Benutzer die Eigenschaft "IsBold" nicht gesetzt hat, im generierten HTML-Code komplett auf Angaben zur Boldness des Titels verzichtet, war schnell klar, wo hier der Fehler liegt.

Der Code ist jetzt so angepasst, dass für den Fall, dass der Benutzer keine Angabe gemacht hat, der Begriff "normal" übergeben wird. Somit kann die Boldness des Titels jetzt ebenfalls beeinflusst werden.

Bei der oben genannten Anpassung für den Titel habe ich mich detailliert mit der Dokumentation von Chart.js beschäftigt. Dabei habe ich erkannt, dass sich die Macher von Chart.js in der Version 3 weiter an den Web-Standards orientiert haben. Dies habe ich in Better Access Charts nun ebenfalls berücksichtigt.

Die Eigenschaft Font.IsBold gibt es nicht mehr. Diese wurde durch die neue Property Font.Weight ersetzt. Damit lässt sich nun Feingranular die Schriftdicke festlegen. Ich habe die Begriffe aus der Dokumentation von Mozilla übernommen. 

Die Eigenschaft Font.IsItalic wurde ebenfalls angepasst. Sie heißt nun (in Anlehnung an die verwendeten Standards) Font.Style. Auch hier habe ich die Begriffe aus der Dokumentation von Mozilla übernommen.

Die Verwendung im VBA-Code sieht dann ungefähr so aus:

In Zeile 5 wird die Legende fett formatiert.
In Zeile 6 wird die Legende kursiv formatiert.

Mit diesen Anpassungen wurden zwei Fehler bereinigt. Außerdem wird mit der Einführung von Font.Weight und Font.Style die Implementierung von Better Access Charts an die Implementierung von Chart.js angeglichen.

Die aktuelle Version von Better Access Charts steht wie immer auf GitHub bereit:
https://github.com/team-moeller/better-access-charts

Keine Kommentare: