精品欧美一区二区三区在线观看 _久久久久国色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ù)棧公眾號

91黄页在线观看| 国产男女裸体做爰爽爽| 伊人精品一区| 欧美日韩国产另类不卡| 亚洲av综合色区| 神宫寺奈绪一区二区三区| 亚洲黄色av| 中文字幕免费精品一区| 国产免费无码一区二区| 免费亚洲电影| 亚洲综合激情小说| 日韩性感在线| 三级网站在线看| 免费精品视频最新在线| 91高潮精品免费porn| 亚洲av成人无码久久精品| 亚洲天堂中文字幕在线观看| 欧美性色综合网| 亚洲精品久久久久久久蜜桃臀| 97最新国自产拍视频在线完整在线看| 国产馆精品极品| 国产精品久久久久久av福利软件 | 国产精品333| 麻豆视频在线免费观看| 久久久青草青青国产亚洲免观| 91亚洲国产成人久久精品网站| www毛片com| 亚洲天堂偷拍| 欧美久久精品午夜青青大伊人 | av网站免费线看精品| 国产不卡在线观看| 成年人免费看毛片| 欧美二区不卡| 色七七影院综合| 国产精品jizz| 精品精品国产毛片在线看| 欧美理论电影在线| 99热手机在线| 香蕉成人av| 欧美视频专区一二在线观看| 国产xxxx振车| 在线看福利影| 亚洲私人影院在线观看| 色姑娘综合av| 九色视频在线观看免费播放| 91网页版在线| 久久精品日韩| 亚洲欧洲综合在线| 99久久久免费精品国产一区二区| 亚洲a区在线视频| 国产一区二区在线播放视频| 麻豆视频一区二区| 国产狼人综合免费视频| 中文字幕在线观看视频一区| 奇米精品一区二区三区四区 | 日韩中文字幕在线| 在线视频这里只有精品| 日韩免费久久| 久久精品成人动漫| 极品魔鬼身材女神啪啪精品| 中文字幕一区二区三区在线视频| 美女扒开尿口让男人操亚洲视频网站| 天天爽天天爽天天爽| 99久久激情| 欧美成人免费全部观看天天性色| 欧美成人精品欧美一级| 国产一区日韩欧美| 国内精品视频久久| 日韩av片在线播放| 亚洲一区黄色| 国产不卡av在线| 国产又大又粗又硬| 国产精品一区二区三区乱码| yy111111少妇影院日韩夜片 | 波多野结衣视频一区| 精品一区二区国产| 免费福利在线视频| 国产欧美一区二区三区网站 | 91精彩刺激对白露脸偷拍| 亚洲小说图片| 精品国产自在精品国产浪潮| 久久中文字幕无码| 久久久久国产一区二区| 国产精品一香蕉国产线看观看| 国产免费不卡av| 成人三级伦理片| 日韩精品最新在线观看| 成人免费网址| 色婷婷一区二区| 欧美哺乳videos| 性感美女久久精品| 欧美日韩视频免费| 亚洲精品福利电影| 欧美日韩在线观看一区二区 | xxxx日本免费| 久久精品国产亚洲夜色av网站| 精品中文字幕视频| 日韩欧美在线观看免费| 韩国av一区二区三区| 久久99精品久久久水蜜桃| 在线观看黄av| 亚洲国产美国国产综合一区二区| 国产成人无码av在线播放dvd| 亚洲日本中文| 亚洲欧美另类在线观看| 2021亚洲天堂| 奇米影视一区二区三区| 精品在线一区| 丝袜美腿av在线| 欧洲视频一区二区| www.17c.com喷水少妇| 日韩美女一区二区三区在线观看| 18久久久久久| 超碰在线人人干| 国产精品萝li| 国产日韩一区二区在线| 99精品在免费线中文字幕网站一区 | 欧美韩国日本在线观看| 欧美亚州一区二区三区| 性欧美一区二区三区| 国产精品日韩成人| 777久久久精品一区二区三区| 国产一区二区三区免费在线| 亚洲女人天堂成人av在线| 精品无码久久久久久久久| 久久99国内精品| 日韩精品久久久| 天堂√中文最新版在线| 精品处破学生在线二十三| 国产精品丝袜一区二区| 久久成人免费网| 亚洲mv在线看| 国产精成人品2018| 亚洲人成网站777色婷婷| 欧美成人精品欧美一级乱黄| 国产黄色精品视频| 中国老女人av| 国产精品777777在线播放| 色黄久久久久久| 99re热视频| 国产午夜精品久久久久久久| 国产日产欧美视频| 亚洲aa在线| 国产成人在线亚洲欧美| 欧美拍拍视频| 日本道色综合久久| 一级片视频免费看| 视频一区二区国产| 日韩视频专区| 精品176极品一区| 最新国产精品亚洲| 亚洲国产无线乱码在线观看| 国产午夜久久久久| 日本爱爱免费视频| 日韩一区自拍| 91九色国产视频| 国产黄a三级三级三级av在线看| 欧美男女性生活在线直播观看| 黄色免费一级视频| 久久91精品久久久久久秒播| 国产精品夜夜夜爽张柏芝| 国产麻豆一区二区三区| 欧美风情在线观看| 日本人妻熟妇久久久久久| 精品久久久久人成| 国产成人无码精品久久二区三| 国产欧美二区| 日韩精品久久久毛片一区二区| 四虎影视精品永久在线观看| 欧美超级乱淫片喷水| 蜜臀av午夜精品| 日韩欧美亚洲综合| 综合 欧美 亚洲日本| 久久精品国产亚洲一区二区三区| aaa免费在线观看| 国产成人高清精品免费5388| 日本中文字幕成人| 三级外国片在线观看视频| 欧美一区二区三区视频在线 | a黄色片在线观看| 亚洲精品一区二区精华| 免费视频久久久| 亚洲欧美综合色| 欧美性生交xxxxx| 午夜在线视频观看日韩17c| 神马影院一区二区三区| 国产免费av国片精品草莓男男| 久久久久久久久久久免费精品 | 日韩中文字幕在线看| 亚洲成熟女性毛茸茸| 欧美午夜精品久久久久久人妖| 中文字幕伦理片| 国产电影一区在线| 97在线播放视频| 国产精品伦理久久久久久| 国产伦精品一区二区三| yy6080久久伦理一区二区| 久99久在线视频| 黄色美女网站在线观看| 日韩色在线观看| 中文字幕第四页| 亚洲精品乱码久久久久| 色欲av无码一区二区三区| 精品一区二区三区蜜桃| 中国一区二区三区| 亚洲色图另类小说| 欧美日免费三级在线| 久久久精品一区二区涩爱| 久久精品夜色噜噜亚洲a∨| 久久精品亚洲天堂| 日韩精品每日更新| 欧美日韩激情四射| 国产精品一区2区3区| aa成人免费视频| 四虎影视国产精品| 成人国产精品视频| 亚洲女人天堂视频| 99热这里只有精品在线观看| 欧美日韩一区二区在线播放| 任我爽在线视频精品一| 一二区在线观看| 亚洲v中文字幕| 91香蕉一区二区三区在线观看| a级影片在线观看| 精品美女在线播放| 91国内精品久久久| 色94色欧美sute亚洲13| 免费观看一级视频| 亚洲天堂网中文字| youjizz亚洲女人| 久久综合成人精品亚洲另类欧美| 无码人妻一区二区三区精品视频| 激情综合一区二区三区| 一级在线免费视频| 日韩精品乱码免费| 欧美精品色婷婷五月综合| 99精品免费网| 日韩伦理在线免费观看| 欧美久久视频| 激情五月婷婷六月| 好看的av在线不卡观看| 久久久天堂国产精品| 日本激情一区| 亚洲福利av| 欧美电影三区| 欧美日韩在线免费观看视频| 99久久精品网站| 亚洲精品偷拍视频| 欧美va天堂在线| 亚洲一区 在线播放| 欧美另类视频| 僵尸世界大战2 在线播放| 国产日韩欧美一区在线| 中文字幕日本最新乱码视频| 欧美亚洲视频| 999精品网站| 久久狠狠亚洲综合| 北条麻妃亚洲一区| 国产**成人网毛片九色| 91视频在线免费| 91在线视频官网| 熟女俱乐部一区二区| 国产亚洲视频系列| 网站永久看片免费| 亚洲欧美一区二区三区久本道91| 日本一级二级视频| 亚洲午夜激情网页| 91香蕉在线视频| 在线欧美日韩国产| 伊人免费在线观看高清版| 在线播放中文一区| 亚洲精品一区二区口爆| 日韩精品免费电影| 超碰国产在线| 欧美理论片在线观看| 免费v片在线观看| 国产精品视频最多的网站| а天堂中文最新一区二区三区| 国产 高清 精品 在线 a| 爽爽窝窝午夜精品一区二区| 日韩中文字幕av在线| 91av精品| 中文字幕乱码人妻综合二区三区| 精品在线免费视频| 免费不卡的av| 中文字幕av一区二区三区| 丰满少妇xbxb毛片日本| 丰满岳乱妇一区二区三区| 特大黑人巨人吊xxxx| 国产欧美日本一区视频| 欧美做爰爽爽爽爽爽爽| 亚洲妇女屁股眼交7| 少妇精品久久久久久久久久| 亚洲激情中文在线| 欧美a在线视频| 狠狠色综合播放一区二区| 中文字幕一区二区三区乱码不卡| 国产婷婷色一区二区三区在线| 全程偷拍露脸中年夫妇| 色香色香欲天天天影视综合网| 国产情侣激情自拍| 亚洲男人av电影| 免费网站在线观看人| 国产精品福利无圣光在线一区| 91精品入口| 欧美 日韩 国产 在线观看 | 中文字幕日韩免费视频| 国产三级伦理在线| 成人黄色大片在线免费观看| 综合亚洲色图| 精品人妻人人做人人爽| 日本aⅴ亚洲精品中文乱码| 一边摸一边做爽的视频17国产| 中文字幕色av一区二区三区| 伊人手机在线视频| 精品欧美乱码久久久久久1区2区| 永久av在线| 国产精品草莓在线免费观看 | 丁香婷婷久久| 欧美18视频| 99精品免费| 天堂www中文在线资源| 亚洲三级免费电影| 日批视频免费观看| 亚洲日本中文字幕| 日本午夜大片a在线观看| 国产91一区二区三区| 中文一区一区三区免费在线观看| 污污网站免费观看| 国产日韩一级二级三级| 日本熟女毛茸茸| 日韩成人激情视频| 国产自产自拍视频在线观看| 国产在线精品一区二区中文| 国产综合精品一区| 人妻精油按摩bd高清中文字幕| 亚洲天天做日日做天天谢日日欢 | 成人av网站在线播放| 精品无人国产偷自产在线| 国产三级伦理在线| 国产精品二区在线观看| 欧美日韩少妇| 任你躁av一区二区三区| 亚洲午夜一区二区| 隣の若妻さん波多野结衣| 欧美激情免费视频| 红杏一区二区三区| 欧美激情视频免费看| 99精品久久免费看蜜臀剧情介绍 | 欧美日韩国产天堂| 日本三级视频在线播放| 国产在线精品自拍| 午夜国产一区二区| 亚洲精品在线视频播放| 亚洲免费在线观看视频| 性一交一乱一精一晶| 91精品国产91久久久久久吃药| 奇米777国产一区国产二区| 中文字幕无码精品亚洲35| 久久噜噜亚洲综合| 中文字幕乱码人妻二区三区| 久久精品2019中文字幕| 18国产精品| 夫妻免费无码v看片| 国产午夜精品久久| 国产孕妇孕交大片孕| 欧美大片第1页| 色婷婷av一区二区三区丝袜美腿| 亚洲精品乱码久久久久久自慰| 国产精品天干天干在观线| 国产女人18毛片水真多| 国内精品久久久久久久| 精品理论电影在线| 在线观看视频在线观看| 亚洲成人av一区二区三区| 九九九伊在人线综合| 成人淫片在线看| 国产美女精品| 成人黄色短视频| 亚洲福利在线看| 国产91在线播放精品| 国产av熟女一区二区三区| 久久综合资源网| 在线免费看91| 久久久欧美一区二区| 波多野结衣在线观看一区二区三区| 国产一级免费大片| 色综合视频在线观看| 成人无遮挡免费网站视频在线观看| 久久国产手机看片| 精品午夜久久福利影院| 欧美日韩乱国产| 久久九九全国免费精品观看| 日韩美脚连裤袜丝袜在线| 91视频这里只有精品| 岛国av一区二区| 影音先锋在线播放| 日韩欧美99| www.亚洲激情.com| 国产手机av在线|