/* Rotate() rotates an image the specified number of degrees. degrees: degrees of the rotated image */ func (this *Image) Rotate(degrees float64) error { if this.magickWand == nil { return errors.New("error rotate image:magickwand is nil") } status := C.rotateImage(this.magickWand, C.double(degrees)) if status == 0 { var etype int descr := C.MagickGetException(this.magickWand, (*C.ExceptionType)(unsafe.Pointer(&etype))) defer C.MagickRelinquishMemory(unsafe.Pointer(descr)) return errors.New(fmt.Sprintf("error rotate image: %s (ExceptionType = %d)", C.GoString(descr), etype)) } return nil }
/* Rotate() rotates an image the specified number of degrees. degrees: degrees of the rotated image */ func (this *Image) Rotate(degrees float64) error { var err error = nil tran := this.Cat.NewTransaction("GraphicsMagickCmd", "Rotate") defer func() { tran.SetStatus(err) tran.Complete() }() if this.magickWand == nil { err = errors.New("error rotate image:magickwand is nil") return err } status := C.rotateImage(this.magickWand, C.double(degrees)) if status == 0 { var etype int descr := C.MagickGetException(this.magickWand, (*C.ExceptionType)(unsafe.Pointer(&etype))) defer C.MagickRelinquishMemory(unsafe.Pointer(descr)) err = errors.New(fmt.Sprintf("error rotate image: %s (ExceptionType = %d)", C.GoString(descr), etype)) return err } return nil }