婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Canvas 文本填充線性漸變的使用詳解

Canvas 文本填充線性漸變的使用詳解

熱門標簽:機器人外呼系統存在哪些能力 平涼地圖標注位置怎么弄 如何獲取地圖標注客戶 電話機器人黑斑馬免費 只辦理400電話 南昌仁和怎么申請開通400電話 電話機器人電銷系統掙話費 高德地圖標注地點糾錯 拓展地圖標注

前言

在 Canvas 中對文本填充水平或垂直的線性漸變可以輕易實現,而帶角度的漸變就復雜很多;就好像下面這樣,假設文本矩形寬為 W, 高為 H, 左上角坐標為 X, Y

猜想與答案

給出兩個答案:

正確答案是圖二,因為這樣得出來的坐標生成的漸變最緊接文本矩形邊界,它的運動軌跡如下動圖:

(圖來源:Do you really know CSS linear-gradients)

漸變起點與終點坐標的計算

所以,漸變的起點與終點坐標該怎么計算呢?答:

  1. 先求得起點與終點的長度(距離)。
  2. 根據長度與文本矩形的中心點坐標分別計算出起點與終點坐標。

線性漸變長度的計算 W3C 給出了一個公式(A 表示角度):

gradientLineLength = abs(W * sin(A)) + abs(H * cos(A))

不過,該公式主要應用于 CSS 的線性漸變設置,即以 12 點鐘方向為 0°,順時針旋轉。

而我們需要的是以 3 點鐘方向為 0°,逆時針旋轉,即公式為:

gradientLineLength = abs(W * cos(A)) + abs(H * sin(A))

// 半長:
halfGradientLineLength = (abs(W * cos(A)) + abs(H * sin(A))) / 2

那么這個公式是怎么來的呢?以下是筆者的求解:

由圖可得以下方程組:

因此可推導出:

化簡后為:

所以 c1 + c2 為:

由三角函數平方公式知:cos(A) * cos(A) = 1 - sin(A) * sin(A), 代入 c1 + c2

第一步化簡后:

最后的結果就是:

因為 sin, cos 在函數周期內存在負值(見下面角度對應的三角函數周期圖),所以線性漸變的長度需要取絕對值。

至此,我們知道了線性漸變長度,文本矩形的中心點坐標很好算,即:

centerX = X + W / 2
centerY = Y + H / 2

所以,起點與終點的坐標分別為:

startX = centerX - cos(A) * halfGradientLineLength
startY = centerY + sin(A) * halfGradientLineLength

endX = centerX + cos(A) * halfGradientLineLength
endY = centerY - sin(A) * halfGradientLineLength

看看最終效果

經驗注釋

進行三角函數計算時,應盡量避免先用 tan, 因為 tan 在其周期內存在無窮值,需要做特定的條件判斷,而 sin, cos 沒有此類問題,代碼書寫更為簡潔清晰并且不會因疏忽產生錯誤,見下面三角函數與角度的對應關系周期圖。

參閱

Do you really know CSS linear-gradients?

MDN linear-gradient

W3C - CSS Images Module Level 3 # linear-gradients

到此這篇關于Canvas 文本填充線性漸變的使用詳解的文章就介紹到這了,更多相關Canvas文本填充線性漸變內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章,希望大家以后多多支持腳本之家!

標簽:永州 池州 青島 西藏 棗莊 遼源 新疆 漯河

巨人網絡通訊聲明:本文標題《Canvas 文本填充線性漸變的使用詳解》,本文關鍵詞  Canvas,文本,填充,線性,漸,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Canvas 文本填充線性漸變的使用詳解》相關的同類信息!
  • 本頁收集關于Canvas 文本填充線性漸變的使用詳解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美欧美欧美欧美| 婷婷综合另类小说色区| 国产精品久久777777| 亚洲成人手机在线| 91视频.com| 国产精品妹子av| 91在线观看下载| 国产精品色呦呦| 国产成人精品亚洲日本在线桃色| 欧美日韩高清一区二区不卡| 青青草精品视频| 欧美va在线播放| 日本不卡1234视频| 久久精品视频一区二区三区| 国产白丝精品91爽爽久久| 久久精品一级爱片| 国产成人自拍高清视频在线免费播放| 精品免费国产二区三区| 国产一区在线视频| ...av二区三区久久精品| 精品视频免费在线| 婷婷国产v国产偷v亚洲高清| 日韩小视频在线观看专区| 另类欧美日韩国产在线| 精品国产精品一区二区夜夜嗨 | 成+人+亚洲+综合天堂| 国产精品国产三级国产a| 成人性生交大片| 国产精品日韩成人| 欧美日韩在线播放三区| 亚洲成人动漫av| 精品成人一区二区三区| 国产精品资源在线看| 久久综合五月天婷婷伊人| 欧美亚洲一区二区三区四区| 激情深爱一区二区| 亚洲观看高清完整版在线观看| 日韩欧美第一区| 色94色欧美sute亚洲线路一久| 国产一区二区成人久久免费影院| 艳妇臀荡乳欲伦亚洲一区| 国产日韩视频一区二区三区| 欧美日韩一区二区电影| 国产伦精一区二区三区| 五月天中文字幕一区二区| 亚洲色图一区二区三区| 久久色.com| 精品久久久久香蕉网| 欧美久久久影院| 欧美亚洲日本一区| 色综合久久88色综合天天免费| 国产成人在线网站| 韩国成人福利片在线播放| 麻豆精品一二三| 日本在线观看不卡视频| 亚洲成av人片| 首页国产丝袜综合| 亚洲成年人影院| 亚洲一区二区三区四区在线观看| 亚洲免费电影在线| 一区二区三区在线观看网站| 国产精品久久久99| 欧美激情中文字幕一区二区| 久久免费视频一区| 久久九九全国免费| 国产农村妇女毛片精品久久麻豆 | 国产成人av福利| 久久99精品久久久久婷婷| 五月综合激情日本mⅴ| 亚洲欧美日韩电影| 亚洲精品欧美激情| 亚洲一区二区三区爽爽爽爽爽| 国产精品欧美一级免费| 国产欧美视频一区二区| 国产精品日产欧美久久久久| 亚洲三级久久久| 亚洲一区在线看| 天天色天天操综合| 奇米四色…亚洲| 国产麻豆午夜三级精品| 成人少妇影院yyyy| 欧美三级在线视频| 精品国产露脸精彩对白| 久久久久久久久蜜桃| 亚洲欧美在线观看| 1区2区3区欧美| 午夜视频久久久久久| 美日韩黄色大片| 国产91丝袜在线播放| 在线欧美日韩国产| 欧美一二三四在线| 欧美激情中文不卡| 亚洲国产成人高清精品| 国产在线视频不卡二| 91网站最新网址| 宅男在线国产精品| 久久精品夜夜夜夜久久| 亚洲精品成人天堂一二三| 日韩精品久久久久久| 国产99久久久国产精品免费看| 91国内精品野花午夜精品 | 国产精品无遮挡| 亚洲成人激情综合网| 国产一区二区福利视频| 欧美日本一区二区| 国产精品美日韩| 久久99精品一区二区三区三区| 成人黄色av网站在线| 欧美美女一区二区| 国产精品私人影院| 久久精品久久99精品久久| 色综合天天综合色综合av| 欧美电影免费观看高清完整版在| 中文字幕一区二区三区蜜月| 日韩成人精品在线| 91精品91久久久中77777| 精品国产第一区二区三区观看体验 | 国内精品伊人久久久久av一坑 | 日韩av在线发布| 成人高清视频在线观看| 欧美成人a视频| 夜夜揉揉日日人人青青一国产精品| 国产精品一色哟哟哟| 欧美日韩高清影院| 亚洲综合999| thepron国产精品| 久久久亚洲精品一区二区三区| 午夜精品久久久久久久久久久| 99免费精品在线观看| 久久精品一区二区三区av| 蜜桃久久av一区| 欧美日韩国产色站一区二区三区| 国产精品久久久久久亚洲伦 | 风间由美性色一区二区三区| 欧美一二三在线| 天天影视涩香欲综合网| 欧美精三区欧美精三区| 亚洲一区二区在线播放相泽| 色域天天综合网| 亚洲视频 欧洲视频| 91在线视频网址| 亚洲免费在线视频| 日本黄色一区二区| 亚洲成人精品在线观看| 在线播放日韩导航| 日本欧美大码aⅴ在线播放| 日韩欧美中文字幕制服| 精品在线免费观看| 精品国精品自拍自在线| 久久99久久久久久久久久久| 久久免费视频色| 成人爱爱电影网址| 亚洲国产日韩精品| 国产欧美va欧美不卡在线| 国产一区二区三区四区五区入口 | 欧美天堂一区二区三区| 一区二区久久久| 欧美日韩在线不卡| 蓝色福利精品导航| 亚洲国产精品精华液ab| 在线观看91视频| 日韩 欧美一区二区三区| 精品欧美一区二区三区精品久久| 国产成人精品三级| 亚洲精品成人精品456| 91精品国产综合久久精品麻豆| 国产一区二区日韩精品| 中文字幕一区二区三区在线观看 | 欧洲精品在线观看| 日韩精品欧美精品| 中文欧美字幕免费| 欧美日韩在线播放| 国产91丝袜在线播放九色| 亚洲成人午夜影院| 91福利在线播放| 国产一区二三区好的| 色综合天天综合网国产成人综合天| 欧美激情一区三区| 狂野欧美性猛交blacked| av电影在线观看一区| 国产欧美日韩另类一区| 中文字幕一区免费在线观看| 国产精品网曝门| 亚洲日本护士毛茸茸| 亚洲一区二区在线播放相泽| 日韩欧美国产综合在线一区二区三区| 秋霞电影网一区二区| 久久亚洲捆绑美女| 欧美色电影在线| 粉嫩久久99精品久久久久久夜| 日韩二区在线观看| 国产精品久久久久9999吃药| 日韩欧美色综合| 在线观看日韩高清av| 国产91综合一区在线观看| 麻豆视频观看网址久久| 丝袜亚洲精品中文字幕一区| 亚洲乱码国产乱码精品精98午夜 | 日韩一区二区影院| 在线精品国精品国产尤物884a|