diff options
| author | Andre Renaud <arenaud@designa-electronics.com> | 2018-08-01 11:11:56 +1200 | 
|---|---|---|
| committer | Andre Renaud <arenaud@designa-electronics.com> | 2018-08-01 11:11:56 +1200 | 
| commit | 57160d276280e078aca3418a30d5256ffa145cc2 (patch) | |
| tree | b1baa4149e391535bd0c5466581163d4fefb1380 /contrib/barcode | |
| parent | c4fb5030287eb4ea19421604fb47933b88e8638f (diff) | |
barcode: Scale via the PDF rather than the barcode library
This allows arbitrary barcode scaling, rather than whole multiple
as required by github.com/boombuler/barcode
Diffstat (limited to 'contrib/barcode')
| -rw-r--r-- | contrib/barcode/barcode.go | 18 | 
1 files changed, 9 insertions, 9 deletions
| diff --git a/contrib/barcode/barcode.go b/contrib/barcode/barcode.go index 26f99c3..ad84fe5 100644 --- a/contrib/barcode/barcode.go +++ b/contrib/barcode/barcode.go @@ -71,16 +71,10 @@ func printBarcode(pdf barcodePdf, code string, x, y float64, w, h *float64, flow  	bname := uniqueBarcodeName(code, x, y)  	info := pdf.GetImageInfo(bname) +	scaleToWidth := unscaled.Bounds().Dx() +	scaleToHeight := unscaled.Bounds().Dy()  	if info == nil { -		scaleToWidth := unscaled.Bounds().Dx() -		scaleToHeight := unscaled.Bounds().Dy() -		if w != nil { -			scaleToWidth = int(convertTo96Dpi(pdf, *w)) -		} -		if h != nil { -			scaleToHeight = int(convertTo96Dpi(pdf, *h)) -		}  		bcode, err := barcode.Scale(  			unscaled,  			scaleToWidth, @@ -99,7 +93,13 @@ func printBarcode(pdf barcodePdf, code string, x, y float64, w, h *float64, flow  		}  	} -	pdf.Image(bname, x, y, 0, 0, flow, "jpg", 0, "") +	if w != nil { +		scaleToWidth = int(*w) +	} +	if h != nil { +		scaleToHeight = int(*h) +	} +	pdf.Image(bname, x, y, float64(scaleToWidth), float64(scaleToHeight), flow, "jpg", 0, "")  } | 
