Merge remote-tracking branch 'origin/master'

This commit is contained in:
2026-02-16 14:18:49 +03:00
parent f6e1e7d00e
commit 9ce85ff6b8

View File

@@ -88,20 +88,42 @@ func resolveAssetPath(fileName string, relativeDirs []string) (string, error) {
}
func registerDejavuFonts(pdf *gofpdf.Fpdf, regularFamily, boldFamily string) error {
regularFont, err := resolvePdfAssetPath("DejaVuSans.ttf")
if err != nil {
return err
}
boldFont, err := resolvePdfAssetPath("DejaVuSans-Bold.ttf")
regPath, err := resolvePdfAssetPath("DejaVuSans.ttf")
if err != nil {
return err
}
pdf.AddUTF8Font(regularFamily, "", regularFont)
pdf.AddUTF8Font(boldFamily, "", boldFont)
if err := pdf.Error(); err != nil {
return fmt.Errorf("font init failed: %w", err)
boldPath, err := resolvePdfAssetPath("DejaVuSans-Bold.ttf")
if err != nil {
return err
}
// Load fonts from bytes
pdf.AddUTF8FontFromBytes(
regularFamily,
"",
mustReadFile(regPath),
)
pdf.AddUTF8FontFromBytes(
boldFamily,
"B",
mustReadFile(boldPath),
)
// Check internal PDF error
if pdf.Error() != nil {
return fmt.Errorf("font init failed: %w", pdf.Error())
}
return nil
}
func mustReadFile(path string) []byte {
b, err := os.ReadFile(path)
if err != nil {
panic("FONT READ ERROR: " + err.Error())
}
return b
}