gpt4 book ai didi

go - 如何将 magickWand 引用传递给函数

转载 作者:IT王子 更新时间:2023-10-29 01:56:47 26 4
gpt4 key购买 nike

我可以知道如何将 imagick.MagickWand 结构传递给函数并在其上应用方法吗? imagick.NewMagickWand 似乎返回了 *imagick.MagickWand 的类型,不是吗?

我无法完成它,不断收到错误消息:ERROR_WAND: ContainsNoImages `MagickWand-0'

如何将正确的结构引用传递给函数,以便 mw 可以在这些函数中连续使用

func generateImage() error {
// skip error handling
var err error

mw := imagick.NewMagickWand()
defer mw.Destroy()

err = createCanvas(mw, "red") // create canvas
err = compositeIcon(mw, "c:/icon.png") // add icon
err = addText(mw, "Hello world") // add text

err = mw.WriteImage("c:/output") // get the output
}

func createCanvas(mw *imagick.MagickWand, color string) error {
// skip error handling
var err error
pw := imagick.NewPixelWand()
defer pw.Destroy()

pw.SetColor("blue")
err = mw.NewImage(200, 100, pw)
return nil
}

可以帮忙吗?新手在这里。 :)


更新:

The example that I gave is correct. Passing by reference is done correctly in the example above, I received the error because I overlook my code and debug the wrong lines. Sorry for confusion.

谢谢。

最佳答案

如果mw类型为 *imagick.MagickWand然后 *mw类型为 imagick.MagickWand .

也就是说,mw是指向该类型的指针*运算符取消引用指向类型本身的指针。

mw := imagick.NewMagickWand() // Now mw is a *imagick.MagickWand
*mw // Is a imagick.MagickWand

关于go - 如何将 magickWand 引用传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52558495/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com