精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

圖形編輯器開發(fā):顏色 Hex 標準化

開發(fā) 后端
顏色 Hex 的通用規(guī)則是:字符的范圍需要為 0~9,a~f,A~F。長度有要求,需要為 6 位字符串(ABCDEF);也可以為 3 位,比如 ABC,它等價于 6 位的 AABBCC。

大家好,我是前端西瓜哥。

最近做圖形編輯器,有這么一個需求,在輸入框輸入顏色十六進制值(hex),自動轉(zhuǎn)為對應(yīng) 6 位長度的 hex。

如果值不合法,回退為上次合法輸入。

我正在開發(fā)的圖形設(shè)計工具:

https://github.com/F-star/suika

線上體驗:

https://blog.fstars.wang/app/suika/

顏色 hex 規(guī)則

顏色 hex 的通用規(guī)則是:

  • 字符的范圍需要為 0~9,a~f,A~F。
  • 長度有要求,需要為 6 位字符串(ABCDEF);也可以為 3 位,比如 ABC,它等價于 6 位的 AABBCC。

處理用戶輸入

但是用戶的輸入你是無法預(yù)測的,大概率是不符合這兩個規(guī)則。

簡單地判斷不符合規(guī)則讓用戶的輸入無效,然后回退,并不是很好的做法。

為了有更好的用戶體驗,我們要做一下優(yōu)化。

當用戶輸入完內(nèi)容,回車,我們對輸入字符串進行處理。

  • 首先轉(zhuǎn)換大寫,這是為了統(tǒng)一格式和對比,其實和優(yōu)化無關(guān)。你也可以轉(zhuǎn)小寫。
  • 取出字符串中從左開始第一個匹配上面規(guī)則的子字符串,用正則表達式是最合適的,正則為:/[0-9A-F]{1,6}/,表示匹配第一個字符為 0~9 和 A~F 的長度為 1 到 6 的字符串。
  • 如果沒匹配到,返回一個空字符串表示沒找到合法值,輸入框的內(nèi)容會進行回退到上一次輸入的合法值。
  • 如果匹配到,就會根據(jù)子字符串的長度執(zhí)行不同的邏輯
  • 長度為 6,剛好,直接返回它。
  • 長度為 4 和 5,屬于是 “高不成低不就”,我們將其截斷為 3。(或者你可以給它末尾補 0 補滿到 6 位)
  • 長度為 3,我們應(yīng)用的規(guī)則是,從 ABC 轉(zhuǎn)換為 AABBCC,因為對應(yīng)經(jīng)典規(guī)則,前者是后者的縮寫。
  • 長度為 2 或 1,則不斷地將自己添加到末尾,直到滿 6 位,比如:AB 會變成 AABBCC,A 會變成 AAAAAA。

這樣用戶輸入 #0,這個輸入本身不符合顏色 hex 規(guī)則,但我們理解用戶其實是想要一個純黑色。

通過上面的處理,我們會返回一個 000000,而不是簡單地認為用戶輸入不合法,將其丟掉。

代碼實現(xiàn)

const normalizeHex = (hex: string) => {
  // (1)轉(zhuǎn)大寫
  hex = hex.toUpperCase();
  // (2)找出其中的符合顏色 hex 規(guī)則的子字符串
  const match = hex.match(/[0-9A-F]{1,6}/);
  if (!match) {
    return '';
  }
  hex = match[0];

  if (hex.length === 6) {
    return hex;
  }
  if (hex.length === 4 || hex.length === 5) {
    hex = hex.slice(0, 3);
  }
  // ABC -> AABBCC
  if (hex.length === 3) {
    return hex
      .split('')
      .map((c) => c + c)
      .join('');
  }
  // AB -> ABABAB
  // A -> AAAAAA
  return hex.padEnd(6, hex);
};

符合經(jīng)典規(guī)則(AABBCC 和 ABC)的情況:

找不到 hex 字符串的情況,會回退到上次的合法值

其他情況:

圖片

責任編輯:姜華 來源: 前端西瓜哥
相關(guān)推薦

2023-10-19 10:12:34

圖形編輯器開發(fā)縮放圖形

2023-09-07 08:24:35

圖形編輯器開發(fā)繪制圖形工具

2023-08-31 11:32:57

圖形編輯器contain

2023-09-26 07:39:21

2024-01-08 08:30:05

光標圖形編輯器開發(fā)游標

2023-09-11 09:02:31

圖形編輯器模塊間的通信

2023-10-10 16:04:30

圖形編輯器格式轉(zhuǎn)換

2023-10-08 08:11:40

圖形編輯器快捷鍵操作

2023-07-07 13:56:01

圖形編輯器畫布縮放

2024-01-03 08:43:17

圖形編輯器旋轉(zhuǎn)控制點縮放控制點

2023-07-31 08:46:07

圖形編輯器圖形自動對齊

2023-02-06 16:59:57

Canvas編輯器

2023-04-07 08:02:30

圖形編輯器對齊功能

2023-01-18 08:30:40

圖形編輯器元素

2023-02-01 09:21:59

圖形編輯器標尺

2023-06-12 08:22:56

圖形編輯器工具

2023-05-09 08:15:32

圖形編輯器撤銷重做功能

2023-04-10 08:45:44

圖形編輯器排列移動功能

2023-02-09 07:02:30

圖形編輯器修改圖形

2016-10-07 22:09:59

點贊
收藏

51CTO技術(shù)棧公眾號

国产69精品久久久久毛片| 中文字幕av一区二区三区四区| 久久久久久综合| 国产精品直播网红| 国产suv一区二区三区| 亚洲国产中文在线| 色乱码一区二区三区88| 在线观看免费91| 黄色小视频免费观看| 久久久久久黄| 欧美精品免费播放| 中文字幕一区二区人妻在线不卡| 巨大黑人极品videos精品| 亚洲一区av在线| 视频一区国产精品| 免费观看黄色一级视频| 日韩av一二三| 久久久亚洲福利精品午夜| 公肉吊粗大爽色翁浪妇视频| 亚洲精品一区二区三区中文字幕 | 欧美成人a交片免费看| 亚洲国产成人午夜在线一区| 成人免费观看网站| 中文字幕永久在线视频| 中文高清一区| 欧美大片网站在线观看| 一本在线免费视频| 国产成人精品一区二区免费看京 | 精品自拍一区| av成人免费在线观看| 成人免费黄色网| 夜夜躁日日躁狠狠久久av| 海角社区69精品视频| 最近2019好看的中文字幕免费| 污污内射在线观看一区二区少妇| 韩国一区二区三区视频| 欧美午夜精品久久久久久孕妇 | 日本免费高清不卡| 日韩中文字幕观看| 国产不卡高清在线观看视频| 国产有码在线一区二区视频| 日韩不卡高清视频| 久久精品伊人| 日韩美女免费观看| 天堂在线免费观看视频| 亚洲毛片在线| 国色天香2019中文字幕在线观看| 国产一区二区播放| 99久久亚洲精品蜜臀| 一区二区三区天堂av| 美女100%无挡| 国产欧美日韩在线观看视频| 日韩h在线观看| 亚洲成人av免费在线观看| 第四色在线一区二区| 亚洲а∨天堂久久精品9966| 波多野结衣中文字幕在线播放| www999久久| 欧美一区二区三区人| 久久无码人妻一区二区三区| 亚洲三区欧美一区国产二区| 欧美xxxxx牲另类人与| 国产欧美视频一区| 精品欧美午夜寂寞影院| 亚洲乱码国产乱码精品精| 人人妻人人澡人人爽人人精品| 免费日韩一区二区三区| 亚洲乱码av中文一区二区| 91久久免费视频| 欧美日韩中文一区二区| 最新的欧美黄色| 午夜剧场免费在线观看| 国自产拍偷拍福利精品免费一 | 国产农村妇女aaaaa视频| 国产精品亚洲产品| 国产成人精品一区二区| 国产又粗又大又黄| 福利一区在线观看| 久久久av水蜜桃| 大乳在线免费观看| 中文字幕在线不卡国产视频| 黄色一级片国产| 在线观看福利电影| 欧美午夜免费电影| 国产乱国产乱老熟300部视频| 国产日韩三级| 中文字幕精品一区二区精品| 波多野结衣亚洲一区二区| 精品1区2区3区4区| 日本免费一区二区三区视频观看| 夜夜爽8888| 成人免费视频国产在线观看| 日本不卡一区二区三区在线观看| 日本www在线观看视频| 亚洲综合一区二区精品导航| 97国产精东麻豆人妻电影| 精品欧美日韩精品| 欧美mv和日韩mv的网站| 非洲一级黄色片| 欧美日韩视频| 国产精品精品一区二区三区午夜版 | 中文字幕这里只有精品| 欧美高清视频在线高清观看mv色露露十八 | 国产精品18久久久久| 欧美成人综合一区| www免费在线观看| 日韩欧美在线观看视频| 亚洲女人在线观看| 神马影视一区二区| 欧美激情xxxxx| 色婷婷久久综合中文久久蜜桃av| 国产盗摄视频一区二区三区| 亚洲春色在线| 性欧美freesex顶级少妇| 51久久夜色精品国产麻豆| 中文精品在线观看| 国产精品a久久久久| 国产精品欧美日韩| 日本精品一二区| 亚洲欧美偷拍另类a∨色屁股| 免费在线观看日韩视频| 99精品在免费线中文字幕网站一区| 亚洲精品视频二区| 日本系列第一页| 国产福利电影一区二区三区| 一区高清视频| 九九热线视频只有这里最精品| 精品国产在天天线2019| 国产乱国产乱老熟300| 精品无人区卡一卡二卡三乱码免费卡| 久久这里精品国产99丫e6| 特级毛片在线| 日韩一区二区电影网| 一级片一级片一级片| 免费成人美女在线观看| 奇米888一区二区三区| 欧美激情网站| 亚洲成人av在线| 精品人妻在线播放| 国产白丝精品91爽爽久久| 四虎永久免费网站| 中文字幕综合| 久久久成人精品| 国产精品女同一区二区| 亚洲欧洲精品天堂一级| 亚洲理论中文字幕| 久久中文亚洲字幕| 国产女精品视频网站免费| yw193.com尤物在线| 在线一区二区观看| 怡红院一区二区三区| 日韩av不卡一区二区| 日韩精品国内| 欧美视频在线视频精品| 日韩在线观看免费高清| 国产精品-色哟哟| 亚洲丝袜美腿综合| 日本少妇一区二区三区| 欧美区日韩区| 国产麻豆日韩| 韩日精品一区二区| 国产亚洲精品91在线| 成人免费一级片| 中文字幕av一区 二区| 久久久久久久久久久久久久久国产| 91亚洲自偷观看高清| 91免费国产网站| 国产啊啊啊视频在线观看| 亚洲福利视频网站| 日韩欧美在线观看免费| 国产精品视频麻豆| 永久免费黄色片| 亚洲国产国产亚洲一二三| 久久偷看各类wc女厕嘘嘘偷窃| 性感美女一区二区在线观看| 色狠狠久久aa北条麻妃 | 亚洲精品第一国产综合精品| 国产成人在线免费视频| 国产精品日产欧美久久久久| 国产高清av片| 日韩午夜一区| 亚洲精品在线观看免费| 一区二区三区视频免费视频观看网站 | 国产稀缺真实呦乱在线| 日本一区二区免费在线| 伦伦影院午夜理论片| 一本色道久久| 国产又爽又黄ai换脸| 麻豆国产欧美一区二区三区r| 国产精品99久久99久久久二8| 欧美激情午夜| 日韩精品免费一线在线观看| 一级久久久久久久| 婷婷成人激情在线网| 久久一级免费视频| 99久久伊人久久99| 日本高清一区二区视频| 国产欧美在线| 国产911在线观看| 奇米色欧美一区二区三区| 亚洲tv在线观看| 欧美xx视频| 国模gogo一区二区大胆私拍| www.中文字幕久久久| 亚洲国产精品久久久久秋霞不卡 | 国产精品 欧美 日韩| 亚洲国产精品av| 五月开心播播网| 国产精品性做久久久久久| 久久久国产欧美| 国产欧美午夜| 日本wwwcom| 亚洲一区二区三区无吗| 欧美日韩一区二区视频在线| 91久久精品无嫩草影院| 国产精品尤物福利片在线观看| 亚洲天堂资源| 久久久久久久久电影| 看女生喷水的网站在线观看| 国产午夜一区二区| 天堂a√在线| 日韩欧美亚洲一区二区| 97免费观看视频| 欧美午夜在线一二页| 手机av免费观看| 欧美日韩午夜剧场| 国产91av视频| 亚洲午夜激情网站| www青青草原| 亚洲欧美日韩成人高清在线一区| 91狠狠综合久久久久久| 久久久五月婷婷| 中文字幕在线观看网址| 99精品欧美一区| 亚洲成人av免费在线观看| 不卡电影免费在线播放一区| 色婷婷狠狠18禁久久| 国产一区二区三区久久久| 中文av一区二区三区| 日韩电影在线免费观看| 久久精品一区二| 在线亚洲免费| 国产精品丝袜久久久久久消防器材| 一本不卡影院| 欧美aⅴ在线观看| 久久久777| chinese少妇国语对白| 日韩精品国产欧美| 熟妇人妻无乱码中文字幕真矢织江| 久久黄色网页| 91国产精品视频在线观看| 日韩精品免费视频人成| 狠狠躁狠狠躁视频专区| 麻豆国产欧美日韩综合精品二区| 国产嫩草在线观看| 麻豆久久久久久| 天天综合天天添夜夜添狠狠添| 精品一区二区三区欧美| 国产xxxxhd| 成人激情黄色小说| 免费a级黄色片| 久久久久久久久久美女| 国产第一页精品| 亚洲免费av网站| 日韩精品一区二区不卡| 色综合中文字幕| 在线免费看av的网站| 欧美一区二区三区在线观看视频| 性生活黄色大片| 亚洲精品国产精品乱码不99按摩| 青青草在线视频免费观看| 国产小视频91| caopo在线| 97福利一区二区| 九色成人搞黄网站| 亚洲free嫩bbb| 欧美日韩精品一区二区三区在线观看| 欧美日韩高清免费| 香蕉视频官网在线观看日本一区二区| 日韩一级免费看| 天堂蜜桃一区二区三区| 精品国产乱码久久久久久1区二区| 成人高清视频在线观看| 公肉吊粗大爽色翁浪妇视频| 亚洲日本电影在线| 成人免费看片98欧美| 欧美日韩午夜在线视频| 亚洲第一页综合| 亚洲天堂视频在线观看| 伊人手机在线| 国产精品jvid在线观看蜜臀| 日韩精品久久久久久久软件91| 国产综合精品一区二区三区| 成人在线丰满少妇av| 人妻无码一区二区三区四区| 久久久久久一区二区| 色婷婷一区二区三区在线观看| 91日韩一区二区三区| 18岁成人毛片| 欧美性极品少妇| 日韩中文字幕影院| 久久精品小视频| 日韩影片中文字幕| 99久久综合狠狠综合久久止| 久久av综合| 性高湖久久久久久久久aaaaa| 日本美女一区二区| 免费无码一区二区三区| 亚洲精品乱码久久久久久久久| 波多野结衣视频免费观看| 欧美精品一区二区三区高清aⅴ| 1024视频在线| 热草久综合在线| 福利欧美精品在线| 亚洲色图都市激情| 日本不卡视频一二三区| 亚洲最大免费视频| 一卡二卡欧美日韩| 国产内射老熟女aaaa∵| 在线观看国产精品淫| 亚洲精品国产精品国产| 国产传媒一区二区| 亚洲自拍偷拍网| 日本中文字幕精品—区二区| 久久久欧美精品sm网站| 91在线看视频| 精品国产乱子伦一区| www.久久ai| 成人免费激情视频| 日韩中文欧美| 超碰在线97免费| 国产日韩欧美激情| 免费观看日批视频| 亚洲人午夜色婷婷| 成人美女大片| 免费观看国产成人| 麻豆成人在线| 国精产品一区二区三区| 色婷婷国产精品综合在线观看| 五月婷婷六月丁香| 91福利视频网| 亚洲传媒在线| 好男人www社区| 中文字幕精品在线不卡| 欧美高清69hd| 波霸ol色综合久久| 国产精品一区三区在线观看| www.-级毛片线天内射视视| 韩国一区二区三区| 中文字幕av免费在线观看| 欧美成人伊人久久综合网| 污网站在线免费看| 国产精品免费在线播放| 在线观看一区| 黑人巨大精品欧美| 色狠狠色狠狠综合| av网页在线| 亚洲一区二区三区久久| 黑丝一区二区| 三级男人添奶爽爽爽视频| 懂色aⅴ精品一区二区三区蜜月 | 久久99国产精品久久99大师| 国产3p露脸普通话对白| 91女神在线视频| 伊人色综合久久久| 久久精品视频中文字幕| 成人精品毛片| 999精品网站| 亚洲精品videosex极品| 亚洲av片一区二区三区| 国产www精品| 久久久久国产精品| 娇妻高潮浓精白浆xxⅹ| 91黄色免费版| www红色一片_亚洲成a人片在线观看_| 国产精品免费一区二区三区在线观看 | 久久精品亚洲人成影院| 欧美极品jizzhd欧美仙踪林| 在线视频欧美精品| 高h视频在线观看| 国产91aaa| 日本成人在线视频网站| 国产盗摄一区二区三区在线| 亚洲免费av网址| 国产高清精品二区| 女人和拘做爰正片视频| 国产精品国产三级国产有无不卡| 亚洲av少妇一区二区在线观看| 欧美性做爰毛片| 伊人成综合网| 亚洲第一综合网| 亚洲电影在线看| 99视频这里有精品| 欧美日韩中文在线视频| 亚洲精品国产第一综合99久久| 日本福利片在线| 成人av资源网| 蜜臀av性久久久久蜜臀aⅴ流畅 | 在线不卡日本v二区707| 日本一区二区高清视频|