From 3534362c0523a686e558ab3cbe7ad90abe06d11e Mon Sep 17 00:00:00 2001 From: Mauro Romano Trajber Date: Mon, 10 Aug 2015 14:32:34 -0300 Subject: [PATCH] provide a way to write PNG image file data to a buffer (byte array) --- gd.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gd.go b/gd.go index ddade3b..2536b39 100755 --- a/gd.go +++ b/gd.go @@ -73,6 +73,17 @@ func ImageToJpegBuffer(p *Image, quality int) []byte { return C.GoBytes(buf, *pimgSize) } +func ImageToPngBuffer(p *Image) []byte { + var imgSize int + pimgSize := (*C.int)(Pointer(&imgSize)) + + buf := C.gdImagePngPtr(p.img, pimgSize) + defer C.gdFree(buf) + + return C.GoBytes(buf, *pimgSize) +} + + func CreateFromJpeg(infile string) *Image { file := C.fopen(C.CString(infile), C.CString("rb"))