View source: R/register_font.R
register_variant | R Documentation |
This function is a wrapper around register_font()
that allows you to easily
create variants of existing system fonts, e.g. to target different weights
and/or widths, or for attaching OpenType features to a font.
register_variant(
name,
family,
weight = NULL,
width = NULL,
features = font_feature()
)
name |
The new family name the variant should respond to |
family |
The name of an existing font family that this is a variant of |
weight |
One or two of |
width |
One of |
features |
A |
During font matching, systemfonts has to look in three different locations.
The font registry (populated by register_font()
/register_variant()
), the
local fonts (populated with add_fonts()
/scan_local_fonts()
), and the
fonts installed on the system. It does so in that order: registry > local >
installed.
The matching performed at each step also differs. The fonts in the registry is only matched by family name. The local fonts are matched based on all the provided parameters (family, weight, italic, etc) in a way that is local to systemfonts, but try to emulate the system native matching. The installed fonts are matched using the system native matching functionality on macOS and Linux. On Windows the installed fonts are read from the system registry and matched using the same approach as for local fonts. Matching will always find a font no matter what you throw at it, defaulting to "sans" if nothing else is found.
# Get the default "sans" family
sans <- match_fonts("sans")$path
sans <- system_fonts()$family[system_fonts()$path == sans][1]
# Register a variant of it:
register_variant(
"sans_ligature",
sans,
features = font_feature(ligatures = "discretionary")
)
registry_fonts()
# clean up
clear_registry()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.