Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -289,7 +289,7 @@ func drawCustomerBalancePDF(
|
|||||||
}
|
}
|
||||||
|
|
||||||
wrappedLines := func(text string, w float64) [][]byte {
|
wrappedLines := func(text string, w float64) [][]byte {
|
||||||
t := strings.TrimSpace(text)
|
t := strings.TrimSpace(sanitizePDFText(text))
|
||||||
if t == "" {
|
if t == "" {
|
||||||
t = "-"
|
t = "-"
|
||||||
}
|
}
|
||||||
@@ -321,7 +321,7 @@ func drawCustomerBalancePDF(
|
|||||||
cy := startY
|
cy := startY
|
||||||
for _, ln := range lines {
|
for _, ln := range lines {
|
||||||
pdf.SetXY(x+1, cy)
|
pdf.SetXY(x+1, cy)
|
||||||
pdf.CellFormat(w-2, lineH, string(ln), "", 0, align, false, 0, "")
|
pdf.CellFormat(w-2, lineH, sanitizePDFText(string(ln)), "", 0, align, false, 0, "")
|
||||||
cy += lineH
|
cy += lineH
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -404,7 +404,7 @@ func drawCustomerBalancePDF(
|
|||||||
drawWrapped(v, x, y, summaryW[i], rowH, 3.2, "L")
|
drawWrapped(v, x, y, summaryW[i], rowH, 3.2, "L")
|
||||||
} else {
|
} else {
|
||||||
pdf.SetXY(x+1, y+(rowH-4.2)/2)
|
pdf.SetXY(x+1, y+(rowH-4.2)/2)
|
||||||
pdf.CellFormat(summaryW[i]-2, 4.2, v, "", 0, align, false, 0, "")
|
pdf.CellFormat(summaryW[i]-2, 4.2, sanitizePDFText(v), "", 0, align, false, 0, "")
|
||||||
}
|
}
|
||||||
x += summaryW[i]
|
x += summaryW[i]
|
||||||
}
|
}
|
||||||
@@ -491,7 +491,7 @@ func drawCustomerBalancePDF(
|
|||||||
drawWrapped(v, rowX, rowY, detailW[i], rowH, 3.0, "L")
|
drawWrapped(v, rowX, rowY, detailW[i], rowH, 3.0, "L")
|
||||||
} else {
|
} else {
|
||||||
pdf.SetXY(rowX+1, rowY+(rowH-4.0)/2)
|
pdf.SetXY(rowX+1, rowY+(rowH-4.0)/2)
|
||||||
pdf.CellFormat(detailW[i]-2, 4.0, v, "", 0, align, false, 0, "")
|
pdf.CellFormat(detailW[i]-2, 4.0, sanitizePDFText(v), "", 0, align, false, 0, "")
|
||||||
}
|
}
|
||||||
rowX += detailW[i]
|
rowX += detailW[i]
|
||||||
}
|
}
|
||||||
@@ -555,3 +555,17 @@ func absFloat(v float64) float64 {
|
|||||||
}
|
}
|
||||||
return v
|
return v
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func sanitizePDFText(s string) string {
|
||||||
|
s = strings.ToValidUTF8(s, "?")
|
||||||
|
s = strings.ReplaceAll(s, "\x00", " ")
|
||||||
|
return strings.Map(func(r rune) rune {
|
||||||
|
if r == '\n' || r == '\r' || r == '\t' {
|
||||||
|
return ' '
|
||||||
|
}
|
||||||
|
if r < 32 {
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
return r
|
||||||
|
}, s)
|
||||||
|
}
|
||||||
|
|||||||
@@ -327,21 +327,21 @@ func drawStatementAgingPDF(pdf *gofpdf.Fpdf, p models.StatementAgingParams, mast
|
|||||||
pdf.SetFont("dejavu", "B", 15)
|
pdf.SetFont("dejavu", "B", 15)
|
||||||
pdf.SetTextColor(colorPrimary[0], colorPrimary[1], colorPrimary[2])
|
pdf.SetTextColor(colorPrimary[0], colorPrimary[1], colorPrimary[2])
|
||||||
pdf.SetXY(marginL, marginT)
|
pdf.SetXY(marginL, marginT)
|
||||||
pdf.CellFormat(150, 7, "Cari Yaşlandırmalı Ekstre", "", 0, "L", false, 0, "")
|
pdf.CellFormat(150, 7, sanitizePDFText("Cari Yaşlandırmalı Ekstre"), "", 0, "L", false, 0, "")
|
||||||
|
|
||||||
pdf.SetFont("dejavu", "", 9)
|
pdf.SetFont("dejavu", "", 9)
|
||||||
pdf.SetTextColor(20, 20, 20)
|
pdf.SetTextColor(20, 20, 20)
|
||||||
pdf.SetXY(pageW-marginR-95, marginT+1)
|
pdf.SetXY(pageW-marginR-95, marginT+1)
|
||||||
pdf.CellFormat(95, 5, "Son Tarih: "+p.EndDate, "", 0, "R", false, 0, "")
|
pdf.CellFormat(95, 5, sanitizePDFText("Son Tarih: "+p.EndDate), "", 0, "R", false, 0, "")
|
||||||
pdf.SetXY(pageW-marginR-95, marginT+6)
|
pdf.SetXY(pageW-marginR-95, marginT+6)
|
||||||
pdf.CellFormat(95, 5, "Cari: "+p.AccountCode, "", 0, "R", false, 0, "")
|
pdf.CellFormat(95, 5, sanitizePDFText("Cari: "+p.AccountCode), "", 0, "R", false, 0, "")
|
||||||
|
|
||||||
mode := "1_2"
|
mode := "1_2"
|
||||||
if len(p.Parislemler) > 0 {
|
if len(p.Parislemler) > 0 {
|
||||||
mode = strings.Join(p.Parislemler, ",")
|
mode = strings.Join(p.Parislemler, ",")
|
||||||
}
|
}
|
||||||
pdf.SetXY(pageW-marginR-95, marginT+11)
|
pdf.SetXY(pageW-marginR-95, marginT+11)
|
||||||
pdf.CellFormat(95, 5, "Parasal İşlem: "+mode, "", 0, "R", false, 0, "")
|
pdf.CellFormat(95, 5, sanitizePDFText("Parasal İşlem: "+mode), "", 0, "R", false, 0, "")
|
||||||
|
|
||||||
pdf.SetDrawColor(colorPrimary[0], colorPrimary[1], colorPrimary[2])
|
pdf.SetDrawColor(colorPrimary[0], colorPrimary[1], colorPrimary[2])
|
||||||
pdf.Line(marginL, marginT+16, pageW-marginR, marginT+16)
|
pdf.Line(marginL, marginT+16, pageW-marginR, marginT+16)
|
||||||
@@ -362,7 +362,7 @@ func drawStatementAgingPDF(pdf *gofpdf.Fpdf, p models.StatementAgingParams, mast
|
|||||||
for i, c := range cols {
|
for i, c := range cols {
|
||||||
pdf.Rect(x, y, widths[i], h, "DF")
|
pdf.Rect(x, y, widths[i], h, "DF")
|
||||||
pdf.SetXY(x+0.8, y+1.0)
|
pdf.SetXY(x+0.8, y+1.0)
|
||||||
pdf.CellFormat(widths[i]-1.6, h-2.0, c, "", 0, "C", false, 0, "")
|
pdf.CellFormat(widths[i]-1.6, h-2.0, sanitizePDFText(c), "", 0, "C", false, 0, "")
|
||||||
x += widths[i]
|
x += widths[i]
|
||||||
}
|
}
|
||||||
pdf.SetY(y + h)
|
pdf.SetY(y + h)
|
||||||
@@ -387,7 +387,7 @@ func drawStatementAgingPDF(pdf *gofpdf.Fpdf, p models.StatementAgingParams, mast
|
|||||||
align = "C"
|
align = "C"
|
||||||
}
|
}
|
||||||
pdf.SetXY(x+0.8, y+0.8)
|
pdf.SetXY(x+0.8, y+0.8)
|
||||||
pdf.CellFormat(widths[i]-1.6, h-1.6, v, "", 0, align, false, 0, "")
|
pdf.CellFormat(widths[i]-1.6, h-1.6, sanitizePDFText(v), "", 0, align, false, 0, "")
|
||||||
x += widths[i]
|
x += widths[i]
|
||||||
}
|
}
|
||||||
pdf.SetY(y + h)
|
pdf.SetY(y + h)
|
||||||
|
|||||||
Reference in New Issue
Block a user