Segoe UI字体在Sejda API转换的HTML转PDF中失效问题
解决Segoe UI字体在Sejda API转PDF时被替换的问题
问题核心是Sejda的PDF渲染环境没有预装Segoe UI字体,导致自动 fallback到系统默认字体。以下是具体解决方案:
嵌入字体文件到CSS
把Segoe UI对应字重的字体文件(比如粗体的segoe-ui-bold.woff2/segoe-ui-bold.woff)和HTML、CSS放在同一目录,然后在CSS里用@font-face声明字体,确保渲染时能加载到:@font-face { font-family: 'Segoe UI'; src: url('segoe-ui-bold.woff2') format('woff2'), url('segoe-ui-bold.woff') format('woff'); font-weight: 700; font-style: normal; } .ref { text-align: left; color: #717171; font-size: 12px; font-family: 'Segoe UI', sans-serif; font-weight: 700; }注意:要匹配你使用的字重(这里是700粗体),如果用到其他字重,需要分别声明对应的字体文件。
打包所有资源上传给Sejda API
调用API时,把HTML、CSS、字体文件打包成ZIP包上传,或者确保所有资源的相对路径正确。Sejda需要能读取到字体文件才能正常嵌入,不然还是会用默认字体。添加字体 fallback 链
在font-family里补充通用无衬线字体,比如font-family: 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;,就算Segoe UI加载失败,也能显示风格接近的字体,避免突兀的默认字体。
内容的提问来源于stack exchange,提问作者Chathurangi
相关产品推荐
相关产品推荐

