92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线

代碼寫春聯【js+html版本與python版本】

2022-1-24    前端達人

文章來源:人人都是產品經理   作者:新榜

分享此文一切功德,皆悉回向給文章原作者及眾讀者.

免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。

藍藍設計m.skdbbs.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務

一、春聯一

1.前言

需要代碼文末公眾號找我 回復【春聯】即可獲取
在這里插入圖片描述

效果展示

在這里插入圖片描述

3.代碼展示

index.html

<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <title>css3春聯切換</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="rotating-text"> <p>春聯Show</p> <p> <span class="word alizarin">上聯:這個需求很簡單</span> <span class="word wisteria">下聯:怎么實現我不管</span> <span class="word peter-river">橫批:明天上線!</span> </p> </div> <script src="js/script.js"></script> </body> </html>  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

style.css

@import url(https://fonts.googleapis.com/css?family=Lato:600); body { display: flex; justify-content: center; align-items: center; height: 100vh; background: #222; } .rotating-text { font-family: Lato, sans-serif; font-weight: 600; font-size: 36px; color: white; transform: translateX(-80px); } .rotating-text p { display: inline-flex; margin: 0; vertical-align: top; } .rotating-text p .word { position: absolute; display: flex; opacity: 0; } .rotating-text p .word .letter { transform-origin: center center 25px; } .rotating-text p .word .letter.out { transform: rotateX(90deg); transition: 0.32s cubic-bezier(0.6, 0, 0.7, 0.2); } .rotating-text p .word .letter.in { transition: 0.38s ease; } .rotating-text p .word .letter.behind { transform: rotateX(-90deg); } .alizarin { color: #e74c3c; } .wisteria { color: #8e44ad; } .peter-river { color: #3498db; } .emerald { color: #2ecc71; } .sun-flower { color: #f1c40f; }  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59

script.js

var words = document.querySelectorAll(".word"); words.forEach(function (word) { var letters = word.textContent.split(""); word.textContent = ""; letters.forEach(function (letter) { var span = document.createElement("span"); span.textContent = letter; span.className = "letter"; word.append(span); }); }); var currentWordIndex = 0; var maxWordIndex = words.length - 1; words[currentWordIndex].style.opacity = "1"; var rotateText = function () { var currentWord = words[currentWordIndex]; var nextWord = currentWordIndex === maxWordIndex ? words[0] : words[currentWordIndex + 1]; // rotate out letters of current word Array.from(currentWord.children).forEach(function (letter, i) { setTimeout(function () { letter.className = "letter out"; }, i * 80); }); // reveal and rotate in letters of next word nextWord.style.opacity = "1"; Array.from(nextWord.children).forEach(function (letter, i) { letter.className = "letter behind"; setTimeout(function () { letter.className = "letter in"; }, 340 + i * 80); }); currentWordIndex = currentWordIndex === maxWordIndex ? 0 : currentWordIndex + 1; }; rotateText(); setInterval(rotateText, 4000);  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

二、春聯二

1.環境準備

1.當缺少庫時會有相應提示 黑窗口執行下方命令+包名即可下載安裝
2.博主此處用的idea 直接Alt+Enter直接下載就成了
3.idea配置python環境也可以參考此文:Python(含PyCharm及配置)下載安裝以及簡單使用(Idea)

2.效果展示

在這里插入圖片描述
在這里插入圖片描述

3.代碼

import io from PIL import Image #import numpy as np import requests def get_word(ch, quality): """獲取單個漢字(字符)的圖片
    ch          - 單個漢字或英文字母(僅支持大寫)
    quality     - 單字分辨率,H-640像素,M-480像素,L-320像素
    """ fp = io.BytesIO(requests.post(url='http://xufive.sdysit.com/tk', data={'ch': ch}).content) im = Image.open(fp) w, h = im.size if quality == 'M': w, h = int(w * 0.75), int(0.75 * h) elif quality == 'L': w, h = int(w * 0.5), int(0.5 * h) return im.resize((w, h)) def get_bg(quality): """獲取春聯背景的圖片""" return get_word('bg', quality) def write_couplets(text, HorV='V', quality='L', out_file=None): """生成春聯

    text        - 春聯內容,以空格斷行
    HorV        - H-橫排,V-豎排
    quality     - 單字分辨率,H-640像素,M-480像素,L-320像素
    out_file    - 輸出文件名
    """ usize = {'H': (640, 23), 'M': (480, 18), 'L': (320, 12)} bg_im = get_bg(quality) text_list = [list(item) for item in text.split()] rows = len(text_list) cols = max([len(item) for item in text_list]) if HorV == 'V': ow, oh = 40 + rows * usize[quality][0] + (rows - 1) * 10, 40 + cols * usize[quality][0] else: ow, oh = 40 + cols * usize[quality][0], 40 + rows * usize[quality][0] + (rows - 1) * 10 out_im = Image.new('RGBA', (ow, oh), '#f0f0f0') for row in range(rows): if HorV == 'V': row_im = Image.new('RGBA', (usize[quality][0], cols * usize[quality][0]), 'white') offset = (ow - (usize[quality][0] + 10) * (row + 1) - 10, 20) else: row_im = Image.new('RGBA', (cols * usize[quality][0], usize[quality][0]), 'white') offset = (20, 20 + (usize[quality][0] + 10) * row) for col, ch in enumerate(text_list[row]): if HorV == 'V': pos = (0, col * usize[quality][0]) else: pos = (col * usize[quality][0], 0) ch_im = get_word(ch, quality) row_im.paste(bg_im, pos) row_im.paste(ch_im, (pos[0] + usize[quality][1], pos[1] + usize[quality][1]), mask=ch_im) out_im.paste(row_im, offset) if out_file: out_im.convert('RGB').save(out_file) out_im.show() text = '思前想后幾行代碼筑萬載春秋 扶內保外一千精英帶五千干將' #對聯內容 write_couplets(text, HorV='V', quality='M', out_file='春聯.jpg') #生成普天同慶.jpg對聯圖片  
            
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
白哥Java
微信公眾號
獲取Java面試資料/簡歷模板/項目資料
3.代碼

import io from PIL import Image #import numpy as np import requests def get_word(ch, quality): """獲取單個漢字(字符)的圖片 ch - 單個漢字或英文字母(僅支持大寫) quality - 單字分辨率,H-640像素,M-480像素,L-320像素 """ fp = io.BytesIO(requests.post(url='http://xufive.sdysit.com/tk', data={'ch': ch}).content) im = Image.open(fp) w, h = im.size if quality == 'M': w, h = int(w * 0.75), int(0.75 * h) elif quality == 'L': w, h = int(w * 0.5), int(0.5 * h) return im.resize((w, h)) def get_bg(quality): """獲取春聯背景的圖片""" return get_word('bg', quality) def write_couplets(text, HorV='V', quality='L', out_file=None): """生成春聯 text - 春聯內容,以空格斷行 HorV - H-橫排,V-豎排 quality - 單字分辨率,H-640像素,M-480像素,L-320像素 out_file - 輸出文件名 """ usize = {'H': (640, 23), 'M': (480, 18), 'L': (320, 12)} bg_im = get_bg(quality) text_list = [list(item) for item in text.split()] rows = len(text_list) cols = max([len(item) for item in text_list]) if HorV == 'V': ow, oh = 40 + rows * usize[quality][0] + (rows - 1) * 10, 40 + cols * usize[quality][0] else: ow, oh = 40 + cols * usize[quality][0], 40 + rows * usize[quality][0] + (rows - 1) * 10 out_im = Image.new('RGBA', (ow, oh), '#f0f0f0') for row in range(rows): if HorV == 'V': row_im = Image.new('RGBA', (usize[quality][0], cols * usize[quality][0]), 'white') offset = (ow - (usize[quality][0] + 10) * (row + 1) - 10, 20) else: row_im = Image.new('RGBA', (cols * usize[quality][0], usize[quality][0]), 'white') offset = (20, 20 + (usize[quality][0] + 10) * row) for col, ch in enumerate(text_list[row]): if HorV == 'V': pos = (0, col * usize[quality][0]) else: pos = (col * usize[quality][0], 0) ch_im = get_word(ch, quality) row_im.paste(bg_im, pos) row_im.paste(ch_im, (pos[0] + usize[quality][1], pos[1] + usize[quality][1]), mask=ch_im) out_im.paste(row_im, offset) if out_file: out_im.convert('RGB').save(out_file) out_im.show() text = '思前想后幾行代碼筑萬載春秋 扶內保外一千精英帶五千干將' #對聯內容 write_couplets(text, HorV='V', quality='M', out_file='春聯.jpg') #生成普天同慶.jpg對聯圖片
 


11

222

文章來源:csdn  作者: 分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。
藍藍設計( m.skdbbs.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務

日歷

鏈接

個人資料

藍藍設計的小編 http://m.skdbbs.com

存檔

92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线
精品视频在线播放免| 另类少妇人与禽zozz0性伦| 欧美日韩亚洲综合一区二区三区激情在线| 桃子视频成人app| 8x国产一区二区三区精品推荐| 欧美日韩一区二区三区视频播放| 欧美tickling挠脚心丨vk| 一个色在线综合| 欧美成人一区二区| 性做久久久久久久免费看| 麻豆最新免费在线视频| 精品国产免费人成电影在线观看四季| 8av国产精品爽爽ⅴa在线观看| 午夜日韩激情| 91免费国产在线| 国产精品成av人在线视午夜片| 亚洲色图一区二区| 成人黄色在线看| 欧美精品亚洲二区| 国产日韩一区二区三免费高清| 国产视频一区二区| 久久精品凹凸全集| 精品欧美乱码久久久久久| 亚洲人体偷拍| 成人免费高清在线播放| 国产一区免费视频| 日韩高清不卡一区二区三区| 久99久在线视频| 成人国产精品免费观看| 日韩av在线免播放器| 欧美一区二区三区色| 欧美绝品在线观看成人午夜影视| 日韩不卡在线| 欧美黄免费看| 欧美/亚洲一区| 精品一区久久久| 三级欧美在线一区| av免费在线观看网址| www.日韩免费| 国产女人aaa级久久久级| 国产一区二区在线观看免费播放| 性久久久久久| 激情婷婷亚洲| 高清一区二区三区日本久| 性欧美lx╳lx╳| 三级欧美在线一区| 国产精品久久久久久久久久辛辛| 久久69精品久久久久久国产越南| 97精品视频在线观看自产线路二| 亚洲天堂网在线观看| 欧美一级日韩不卡播放免费| 日本成人黄色| 亚洲精品国产品国语在线| 国产精品成人一区二区三区| 欧美日韩免费一区二区三区视频| 欧美日韩免费观看一区三区| 欧美日韩在线视频观看| 成人性生活视频| 欧美日韩五月天| 国产精品久久久久久久久久白浆| 久热在线中文字幕色999舞| 亚洲国产精品v| 亚洲自拍电影| 国内自拍欧美| 日本免费高清一区二区| 爽爽窝窝午夜精品一区二区| 国产91丝袜在线播放| 国产精品视频最多的网站| 99精品在线直播| 成人性生交大片免费观看嘿嘿视频| 国产精品欧美亚洲777777| 亚洲中国色老太| 欧美一区二区三区成人久久片| 91爱视频在线| 国产欧美综合一区二区三区| 亚洲xxxxx| 精品国产乱码久久久久久闺蜜| 久久综合五月天| 香蕉视频网站在线观看| 国产精品mp4| 丝袜美腿一区二区三区| 久久久久久久久中文字幕| 欧美激情无毛| 成人欧美一区二区三区| 2019国产精品自在线拍国产不卡| 亚洲xxx拳头交| 日韩欧美高清在线播放| 正在播放欧美一区| 麻豆传媒在线完整视频| 成人日日夜夜| av中文字幕在线播放| 人交獸av完整版在线观看| 精品久久久久久亚洲精品| 欧美色道久久88综合亚洲精品| 在线观看不卡一区| 欧美做受高潮电影o| 天堂在线中文网官网| 国产精品午夜国产小视频| 95av在线视频| 99精品1区2区| 国产精品久线在线观看| 亚洲国产综合色| 在线看av的网址| 中文字幕伦理免费在线视频| 97在线观看免费高清| 欧美日韩在线播放三区| 黄色日韩网站| 日韩免费性生活视频播放| 日本一区二区在线不卡| 亚洲素人一区二区| 国产亚洲亚洲| 日韩av一区二区三区美女毛片| jvid福利在线一区二区| 美女视频黄免费的亚洲男人天堂| 97视频在线观看视频免费视频| 国产一区二区欧美| 欧美人成在线视频| 青青热久免费精品视频在线18| 社区色欧美激情 | 26uuu亚洲电影| 日韩在线成人| 久久成年人视频| 岛国视频午夜一区免费在线观看| 欧洲亚洲妇女av| 午夜伦理福利在线| 亚洲成人av一区二区| 91视频九色网站| 婷婷五月色综合香五月| 欧美精品成人91久久久久久久| 日韩欧美中文免费| 亚洲精品久久久一区二区三区| 国产噜噜噜噜久久久久久久久| 欧美性videos| 亚洲一级片在线观看| 6080yy午夜一二三区久久| 国产一区二区三区18| 中文字幕午夜精品一区二区三区| 亚洲日本免费电影| 99re8在线精品视频免费播放| 国产精品99久久久久久久久久久久| 色999韩欧美国产综合俺来也| 最爽无遮挡行房视频在线| 国产美女搞久久| 国产亚洲激情在线| 久久久久久久久久国产精品| 日本不卡视频在线观看| 国产一区二区三区在线看麻豆| 亚洲人成啪啪网站| 欧美精品精品精品精品免费| 国产毛片在线看| 国产永久精品大片wwwapp| 国产视频一区二区不卡| 国产精品国产三级国产aⅴ无密码| 日韩欧乱色一区二区三区在线| 不卡av在线免费观看| 韩国日本一区| 91精品国产综合久久精品| 神马午夜在线视频| 操91在线视频| 美女搞黄视频在线观看| 国产精品久久天天影视| 视频欧美一区| 亚洲视频一区二区在线| 高清在线不卡av|