Fonts for TCPDF are generated, and are located in civicrm/vendor/tecnickcom/tcpdf/fonts/ in a format like this:
-rw-r--r-- 1 www-data www-data 1,9K Aug 9 14:44 robotoi.ctg.z
-rw-r--r-- 1 www-data www-data 8,6K Aug 9 14:44 robotoi.php
-rw-r--r-- 1 www-data www-data 78K Aug 9 14:44 robotoi.z
To generate the fonts, a static method from the library addTTFfont is called, and saved to the previously mentioned folder.
$roboto_italic = TCPDF_FONTS::addTTFfont('/var/www/boell_testing/public/sites/default/files/civicrm/persist/fonts/roboto/roboto/Roboto-Italic.ttf', 'TrueTypeUnicode', '', 32);
After this call, the fonts should be available. The civicrm has to be told that there are additional fonts, which is done via a global settings array:
global $civicrm_setting;
$civicrm_setting['CiviCRM Preferences']['additional_fonts'][$roboto_italic] = "Roboto Italique";
In civicrm/CRM/Utils/PDF/Label.php --> public function getFontNames() the fonts are added to the menu and are available in the drop down menus for, in this case name Badges. But every other PDF generator using TCPDF should have the fonts as well.