swift variablefonts
1.1.0
Einfachere Verwendung von variablen Schriftarten mit Appkit, Uikit und Swiftui. Für iOS, macos, tvos, watchos und sandos
Erweitert Appkits NSFont , UIKITs UIFont und Swiftuis Font mit variablen Schriftfunktionen. Könnte nicht einfacher sein!
let font = NSFont ( name : " Amstelvar " , size : 20 , axes : [
. weight : 650 ,
. opticalSize : 144 ,
" GRAD " : 500 ,
] ) let scienceGothic = UIFont ( name : " ScienceGothic " , size : 20 ) !
let slanted = scienceGothic . withAxis ( . slant , value : - 10 ) let tiltWarp = NSFont ( name : " TiltWarp-Regular " , size : 100 ) !
let axes = tiltWarp . allAxes ( )
print ( axes )
/*
[VariableFonts.FontAxis(
id: 1481789268,
name: "XROT",
description: "Rotation in X",
minimumValue: -45.0,
maximumValue: 45.0,
defaultValue: 0.0),
etc...]
*/ Text ( " Hello world " )
. font ( . custom ( name : " Fraunces " , size : 40 , axes : [
. weight : 900 ,
" SOFT " : 100 ,
" WONK " : 1 ,
] ) ) let nunito = UIFont ( name : " NunitoSans " , size : 20 ) !
let axes = nunito . allAxes ( )
// Creates a UIFont with all axes set to their maximum value.
let megaNunito = nunito . withAxes (
Dictionary ( uniqueKeysWithValues : axes . map { axis in
return ( axis . id , axis . maximumValue )
} )
) Das Wörterbuch, das Sie zur Konfiguration der Achsen verwenden, verwenden FontAxis.Name als Schlüssel. Dieser Typ wird mit einem Satz bekannter Achsennamen geliefert. Dh .weight ( wght ), .width ( wdth ) usw. Dieser Typ ist ExpressibleByStringLiteral . String -Literale können für benutzerdefinierte Achsennamen verwendet werden.