第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法在 Go 中獲取圖像的子圖像

無法在 Go 中獲取圖像的子圖像

Go
有只小跳蛙 2021-06-04 17:08:35
我正在用 Go 進(jìn)行一些圖像處理,我正在嘗試獲取圖像的子圖像。import (  "image/jpeg"  "os")func main(){  image_file, err := os.Open("somefile.jpeg")  my_image, err := jpeg.Decode(image_file)  my_sub_image := my_image.SubImage(Rect(j, i, j+x_width, i+y_width)).(*image.RGBA)}當(dāng)我嘗試編譯它時,我得到.\img.go:8: picture.SubImage undefined (type image.Image has no field or method SubImage).有什么想法嗎?
查看完整描述

2 回答

?
Cats萌萌

TA貢獻(xiàn)1805條經(jīng)驗 獲得超9個贊

這是另一種方法 - 使用類型斷言來斷言my_image具有SubImage方法。這適用于具有該方法的任何圖像類型SubImage(除Uniform快速掃描外的所有圖像)。這將返回Image一些未指定類型的另一個接口。


package main


import (

    "fmt"

    "image"

    "image/jpeg"

    "log"

    "os"

)


func main() {

    image_file, err := os.Open("somefile.jpeg")

    if err != nil {

        log.Fatal(err)

    }

    my_image, err := jpeg.Decode(image_file)

    if err != nil {

        log.Fatal(err)

    }


    my_sub_image := my_image.(interface {

        SubImage(r image.Rectangle) image.Image

    }).SubImage(image.Rect(0, 0, 10, 10))


    fmt.Printf("bounds %v\n", my_sub_image.Bounds())


}

如果您想經(jīng)常這樣做,那么您可以SubImage使用接口創(chuàng)建一個新類型并使用它。


type SubImager interface {

    SubImage(r image.Rectangle) image.Image

}


my_sub_image := my_image.(SubImager).SubImage(image.Rect(0, 0, 10, 10))

類型斷言的常見警告適用 -,ok如果您不想恐慌,請使用該表單。


查看完整回答
反對 回復(fù) 2021-06-07
?
慕斯王

TA貢獻(xiàn)1864條經(jīng)驗 獲得超2個贊

因為image.Image沒有方法SubImage。您需要使用類型斷言來獲取適當(dāng)?shù)膇mage.*類型。


rgbImg := img.(image.RGBA)

subImg := rgbImg.SubImage(...)


查看完整回答
反對 回復(fù) 2021-06-07
  • 2 回答
  • 0 關(guān)注
  • 251 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號