golang學(xué)習(xí)---練習(xí)0

題目來自此處
第 0000 題:將你的 QQ 頭像(或者微博頭像)右上角加上紅色的數(shù)字,類似于微信未讀信息數(shù)量那種提示效果。 類似于圖中效果

golang 解答
把下邊兩圖合并,其中一個透明

1.png

20130727160521968.png

得到


123.png
package main

import (
    "fmt"
    "image"
    "image/color"
    "image/draw"
    "image/png"
    "log"
    "os"
    "time"
)

func main() {
    fmt.Println(time.Now())
    fSrc, err := os.Open("/Users/pzwu/Desktop/20130727160521968.png")
    if err != nil {
        log.Fatal(err)
    }
    defer fSrc.Close()
    src, err := png.Decode(fSrc)
    if err != nil {
        log.Fatal(err)
    }

    des := image.NewRGBA(src.Bounds())

    fSrc1, err := os.Open("/Users/pzwu/Desktop/1.png")
    if err != nil {
        log.Fatal(err)
    }
    defer fSrc1.Close()
    src1, err := png.Decode(fSrc1)
    if err != nil {
        log.Fatal(err)
    }

    draw.Draw(des, des.Bounds(), src, image.Pt(0, 0), draw.Over)

    draw.Draw(des, image.Rect(0, 0, 189, 198), src1, image.ZP, draw.Over)

    for x := 0; x < des.Bounds().Max.X; x++ {
        for y := 0; y < des.Bounds().Max.Y; y++ {
            rgba := des.At(x, y)
            r, g, b, a := rgba.RGBA()
            if r >= 60000 && g >= 60000 && b >= 60000 {
                a = 0
                des.Set(x, y, color.RGBA{uint8(r), uint8(g), uint8(b), uint8(a)})
            }
        }
    }

    fSave, err := os.Create("/Users/pzwu/Desktop/123.png")
    if err != nil {
        log.Fatal(err)
    }

    defer fSave.Close()

    err = png.Encode(fSave, des)
    if err != nil {
        log.Fatal(err)
    }

    fmt.Println(time.Now())
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,366評論 25 708
  • WebSocket-Swift Starscream的使用 WebSocket 是 HTML5 一種新的協(xié)議。它實...
    香橙柚子閱讀 24,844評論 8 183
  • 我叫崽崽,我是只貓,這里要聲明一下,我沒有成精,我,很有可能是進(jìn)化了,當(dāng)然,我也是經(jīng)過很久的學(xué)習(xí)和刻苦鉆研才意識到...
    寫字的虎閱讀 507評論 2 6
  • 愿做一棵樹 春天來了 當(dāng)你鎖緊眉頭 嘆息人生路坎坷 就聽你訴說,萌發(fā)希冀的芽 就做一棵樹吧 長成枝繁葉茂 夏天來了...
    奈落菖蒲閱讀 518評論 0 1
  • 浩浩受傷了,那天正在洗澡,聽到兒子在房間里慘叫了一下,以為他和老公玩得熱鬧,哪知道過了好久以后才發(fā)現(xiàn)原來是兒子...
    什么樣的幸福閱讀 359評論 0 0

友情鏈接更多精彩內(nèi)容