golang学习---练习0

题目来自此处
第 0000 题:将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果。 类似于图中效果

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())
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,037评论 25 709
  • WebSocket-Swift Starscream的使用 WebSocket 是 HTML5 一种新的协议。它实...
    香橙柚子阅读 24,368评论 8 183
  • 我叫崽崽,我是只猫,这里要声明一下,我没有成精,我,很有可能是进化了,当然,我也是经过很久的学习和刻苦钻研才意识到...
    写字的虎阅读 3,294评论 2 6
  • 愿做一棵树 春天来了 当你锁紧眉头 叹息人生路坎坷 就听你诉说,萌发希冀的芽 就做一棵树吧 长成枝繁叶茂 夏天来了...
    奈落菖蒲阅读 3,335评论 0 1
  • 浩浩受伤了,那天正在洗澡,听到儿子在房间里惨叫了一下,以为他和老公玩得热闹,哪知道过了好久以后才发现原来是儿子...
    什么样的幸福阅读 2,405评论 0 0

友情链接更多精彩内容