How to Set Custom Fonts with PDF SDK for Web
Foxit PDF SDK for Web has a huge range of custom fonts available with the package. You can customize as much as you wish by using the 2 sample codes below.
Setting up the font Path
var pdfui = new PDFUI({ viewerOptions: { libPath: '../../../lib', preloadJR: true, jr: { licenseSN:"", LicenseKey:"", fontPath:"../external/brotli" } })
Setting up custom fonts
function setCustomFonts(){ pdfui.getWebPDFJR().then(function(jr) { var fontCalibri = { nameMatches: [ /(calibri)/ig ], glyphs: [ // 0x1f0 = 0b111110000 matches a bold font of 500,600,700,800,900 ==> font weight { bold: 0x1f0, flags: -1, url: jr.api.option.fontPath + '/calibrib.ttf', isBrotli: false } , // 0x40 = 0b1000000 italic ==> font descriptors { bold: -1, flags: 0x40, url: jr.api.option.fontPath + '/calibrii.ttf', isBrotli: false } , // -1 means to match any values. It is recommended to put it behind the data so that those in front can be matched { bold: -1, flags: -1, url: jr.api.option.fontPath + '/calibri.ttf', isBrotli: false } ] }; var fontGothic = { nameMatches: [ /(gothic)/ig ], glyphs: [ // the order is very important, the smaller the set, the more forward, the more preferential matched. { bold: 0x1f0, flags: 0x40, url: jr.api.option.fontPath + '/gothicbi.ttf', isBrotli: false } , { bold: 0x1f0, flags: -1, url: jr.api.option.fontPath + '/gothicb.ttf', isBrotli: false } , { bold: -1, flags: 0x40, url: jr.api.option.fontPath + '/gothici.ttf', isBrotli: false } , { bold: -1, flags: -1, url: jr.api.option.fontPath + '/gothic.ttf', isBrotli: false } ] }; pdfui.setJRFontMap([fontCalibri, fontGothic, ]); });
Updated on August 11, 2021