<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          國慶中秋雙節(jié),用Python制作微信國旗頭像,其實很簡單。

          共 3933字,需瀏覽 8分鐘

           ·

          2023-10-06 13:43


          國慶節(jié)的時候,很多地方都會升掛國旗,慶祝祖國一年一度的節(jié)日。


          給自己制作國旗頭像,是一件很有意義的事。微信官方就曾經(jīng)舉辦過活動。


          制作國旗頭像的方法有很多,本文給大家介紹用Python制作漸變的微信國旗頭像。


          效果展示




          漸變的國旗頭像效果非常好看。


          制作方式也很簡單,下面介紹實現(xiàn)方法,可以復制本文的代碼,制作屬于自己的國旗頭像。


          圖片準備



          1.準備國旗圖片


          標準國旗圖片可以到官網(wǎng)《中華人民共和國中央人民政府》網(wǎng)站下載。



          聲明:嚴禁非法使用國旗圖片。國旗圖片下載頁面下方有《國旗法》等相關規(guī)定。


          下載完成解壓后會得到三張國旗圖片。分別是1024、2048和4096三種像素的圖片。



          本文使用1024像素的圖片。(用哪張都可以)



          2.準備頭像圖片


          登錄自己的微信,打開個人信息,點擊頭像,點擊右上角的三個點,將圖片保存到手機,然后將圖片傳到電腦上。


          為了不失一般性,本文使用的圖片是我從網(wǎng)絡上獲取的一張600*600像素的頭像圖片。



          準備好后,將國旗圖片和頭像圖片拷貝到代碼同一個目錄下。


          代碼實現(xiàn)



          先安裝Python中用于處理圖片的pillow庫。
          pip install pillow

          安裝完成后,使用pillow庫來制作國旗頭像。


          只需要十幾行代碼就能實現(xiàn)。完整代碼如下。


          # coding=utf-8
          from PIL import Image
          import math

          key = 3.2  # 修改key值可以調(diào)整國旗的范圍,推薦2~4之間的數(shù)字,支持小數(shù)
          motherland_flag = Image.open('國旗1024.png')
          head_picture = Image.open('頭像600.png')
          # 截圖國旗上的五顆五角星
          flag_width, flag_height = motherland_flag.size
          crop_flag = motherland_flag.crop((660, flag_height+66, flag_height))
          # 將國旗截圖處理成顏色漸變
          for i in range(flag_height):
              for j in range(flag_height):
                  color = crop_flag.getpixel((i, j))
                  distance = int(math.sqrt(i*i + j*j))
                  alpha = 255 - int(distance//key)
                  new_color = (*color[0:-1], alpha if alpha > 0 else 0)
                  crop_flag.putpixel((i, j), new_color)
          # 修改漸變圖片的尺寸,適應頭像大小,粘貼到頭像上
          new_crop_flag = crop_flag.resize(head_picture.size)
          head_picture.paste(new_crop_flag, (00), new_crop_flag)
          # 保存自己的國旗頭像
          head_picture.save('國旗頭像.png')

          代碼介紹:

          • 導入需要使用的Python庫,pillow庫用于對圖片進行截取、大小修改、粘貼等處理。math庫用于計算像素點的距離。

          • 使用Image.open()方法,讀取準備好的國旗圖片和頭像圖片到代碼中。

          • 對國旗圖片進行截取,獲取一張正方形的圖片,截取時調(diào)整截取位置,保證5顆五角星完整展示在截圖中。crop()方法中傳入的是一個(left, upper, right, lower)的元組,分別是截圖的左、上、右、下像素位置。

          • 將正方形國旗截圖設置成透明度漸變的圖片。國旗圖片的模式默認是RGBA,本文需要的剛好是RGBA(red,green,blue,alpha)模式的圖片,RGBA模式的圖片顏色值是一個長度為4的元組,我們修改不同像素點的A值即可將圖片設置成漸變。

            本文是以國旗左上角為圓心,離圓心越遠的像素點A值越小,像素點越透明。使用getpixel()和putpixel()兩個方法來獲取和重設像素點的顏色值,使用math.sqrt()計算像素點距離。
          • 將漸變圖片的大小轉換成和頭像的大小一樣,然后粘貼到圖片頂層。使用resize()方法重設圖片大小,使用paste()方法粘貼圖片。

          • 保存圖片,此時的微信頭像圖片上已經(jīng)粘貼了透明漸變的國旗圖片,微信國旗頭像制作完成。


          總結



          本文介紹了用Python制作微信國旗頭像的方法。在本文的代碼中,以左上角為圓心,離圓心越遠越透明,可以修改key值,調(diào)整國旗透明變化的范圍。


          如果需要制作其他漸變類型,如以右上角為圓心逐漸透明、從左側向右側逐漸透明、從上到下逐漸透明等,可以修改國旗漸變部分的代碼、翻轉圖片等。


          以上就是本文的全部內(nèi)容,如果你學會了怎么用Python制作微信國旗頭像,歡迎點贊、在看和分享。也可以聯(lián)系我交流討論。


          太太太難了!河北承德程序員在GitHub遠程給外企工作,105.8萬元收入,竟全部沒收!



              
              

          分享

          收藏

          點贊

          在看

          瀏覽 269
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产精品久久久久老师 | AV电影网站在线观看 | 成人艹| AA片免费网站 | 无码高清在线看 |