From 96771cc6a7ba52de1fef7742ba3ba5fc40e14bc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=AB=E8=B0=B7=E5=89=91=E4=BB=99?= Date: Wed, 10 Aug 2022 17:42:55 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0svg=E7=9A=84=E5=86=85?= =?UTF-8?q?=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- images/card-frame.svg | 57 +++ images/icon-awoken-count.svg | 46 +- images/icon-awoken.svg | 557 ++++++++++++++++++++++ images/icon-latent-block-bg.svg | 21 +- images/icon-type.svg | 77 +++ images/project file/build symble svgs.js | 58 ++- images/project file/card-frame/main-0.png | Bin 0 -> 2132 bytes images/project file/card-frame/main-1.png | Bin 0 -> 2182 bytes images/project file/card-frame/main-2.png | Bin 0 -> 2237 bytes images/project file/card-frame/main-3.png | Bin 0 -> 2212 bytes images/project file/card-frame/main-4.png | Bin 0 -> 2267 bytes images/project file/card-frame/main-6.png | Bin 0 -> 773 bytes images/project file/card-frame/sub-0.png | Bin 0 -> 1671 bytes images/project file/card-frame/sub-1.png | Bin 0 -> 1753 bytes images/project file/card-frame/sub-2.png | Bin 0 -> 1758 bytes images/project file/card-frame/sub-3.png | Bin 0 -> 1750 bytes images/project file/card-frame/sub-4.png | Bin 0 -> 1862 bytes service-worker.js | 12 +- 18 files changed, 780 insertions(+), 48 deletions(-) create mode 100644 images/card-frame.svg create mode 100644 images/icon-awoken.svg create mode 100644 images/icon-type.svg create mode 100644 images/project file/card-frame/main-0.png create mode 100644 images/project file/card-frame/main-1.png create mode 100644 images/project file/card-frame/main-2.png create mode 100644 images/project file/card-frame/main-3.png create mode 100644 images/project file/card-frame/main-4.png create mode 100644 images/project file/card-frame/main-6.png create mode 100644 images/project file/card-frame/sub-0.png create mode 100644 images/project file/card-frame/sub-1.png create mode 100644 images/project file/card-frame/sub-2.png create mode 100644 images/project file/card-frame/sub-3.png create mode 100644 images/project file/card-frame/sub-4.png diff --git a/images/card-frame.svg b/images/card-frame.svg new file mode 100644 index 00000000..56ea647d --- /dev/null +++ b/images/card-frame.svg @@ -0,0 +1,57 @@ + + + + + + card-frame-sub-0 + + + + + card-frame-sub-1 + + + + + card-frame-sub-2 + + + + + card-frame-sub-3 + + + + + card-frame-sub-4 + + + + + card-frame-main-0 + + + + + card-frame-main-1 + + + + + card-frame-main-2 + + + + + card-frame-main-3 + + + + + card-frame-main-4 + + + + + card-frame-main-6 + \ No newline at end of file diff --git a/images/icon-awoken-count.svg b/images/icon-awoken-count.svg index 35e6b4e7..35522998 100644 --- a/images/icon-awoken-count.svg +++ b/images/icon-awoken-count.svg @@ -1,24 +1,4 @@ - @@ -79,4 +59,30 @@ + + awoken-count-bg(由外部CSS来改变颜色) + + + + + + + + awoken-count-common + + + + + + + + awoken-count-can-assist + + + + + + + + awoken-count-latent diff --git a/images/icon-awoken.svg b/images/icon-awoken.svg new file mode 100644 index 00000000..6b26f9f5 --- /dev/null +++ b/images/icon-awoken.svg @@ -0,0 +1,557 @@ + + + + + + awoken-0 + + + + + awoken-1 + + + + + awoken-2 + + + + + awoken-3 + + + + + awoken-4 + + + + + awoken-5 + + + + + awoken-6 + + + + + awoken-7 + + + + + awoken-8 + + + + + awoken-9 + + + + + awoken-10 + + + + + awoken-11 + + + + + awoken-12 + + + + + awoken-13 + + + + + awoken-14 + + + + + awoken-15 + + + + + awoken-16 + + + + + awoken-17 + + + + + awoken-18 + + + + + awoken-19 + + + + + awoken-20 + + + + + awoken-21 + + + + + awoken-22 + + + + + awoken-23 + + + + + awoken-24 + + + + + awoken-25 + + + + + awoken-26 + + + + + awoken-27 + + + + + awoken-28 + + + + + awoken-29 + + + + + awoken-30 + + + + + awoken-31 + + + + + awoken-32 + + + + + awoken-33 + + + + + awoken-34 + + + + + awoken-35 + + + + + awoken-36 + + + + + awoken-37 + + + + + awoken-38 + + + + + awoken-39 + + + + + awoken-40 + + + + + awoken-40-en + + + + + awoken-41 + + + + + awoken-42 + + + + + awoken-43 + + + + + awoken-44 + + + + + awoken-45 + + + + + awoken-46 + + + + + awoken-46-en + + + + + awoken-46-zh + + + + + awoken-47 + + + + + awoken-47-en + + + + + awoken-47-zh + + + + + awoken-48 + + + + + awoken-48-en + + + + + awoken-49 + + + + + awoken-50 + + + + + awoken-51 + + + + + awoken-52 + + + + + awoken-53 + + + + + awoken-54 + + + + + awoken-55 + + + + + awoken-56 + + + + + awoken-57 + + + + + awoken-58 + + + + + awoken-59 + + + + + awoken-60 + + + + + awoken-61 + + + + + awoken-62 + + + + + awoken-63 + + + + + awoken-64 + + + + + awoken-65 + + + + + awoken-66 + + + + + awoken-67 + + + + + awoken-68 + + + + + awoken-69 + + + + + awoken-70 + + + + + awoken-71 + + + + + awoken-72 + + + + + awoken-73 + + + + + awoken-74 + + + + + awoken-75 + + + + + awoken-76 + + + + + awoken-77 + + + + + awoken-78 + + + + + awoken-79 + + + + + awoken-80 + + + + + awoken-81 + + + + + awoken-82 + + + + + awoken-83 + + + + + awoken-84 + + + + + awoken-85 + + + + + awoken-86 + + + + + awoken-87 + + + + + awoken-88 + + + + + awoken-89 + + + + + awoken-90 + + + + + awoken-91 + + + + + awoken-92 + + + + + awoken-93 + + + + + awoken-94 + + + + + awoken-95 + + + + + awoken-96 + + + + + awoken-97 + + + + + awoken-98 + + + + + awoken-99 + + + + + awoken-100 + + + + + awoken-101 + + + + + awoken-102 + + + + + awoken-103 + + + + + awoken-104 + \ No newline at end of file diff --git a/images/icon-latent-block-bg.svg b/images/icon-latent-block-bg.svg index 8532d33f..832b9c4e 100644 --- a/images/icon-latent-block-bg.svg +++ b/images/icon-latent-block-bg.svg @@ -1,4 +1,4 @@ - + diff --git a/images/icon-type.svg b/images/icon-type.svg new file mode 100644 index 00000000..3537cf6c --- /dev/null +++ b/images/icon-type.svg @@ -0,0 +1,77 @@ + + + + + + type-0 + + + + + type-1 + + + + + type-2 + + + + + type-3 + + + + + type-4 + + + + + type-5 + + + + + type-6 + + + + + type-7 + + + + + type-8 + + + + + type-9 + + + + + type-9-en + + + + + type-12 + + + + + type-12-en + + + + + type-14 + + + + + type-15 + \ No newline at end of file diff --git a/images/project file/build symble svgs.js b/images/project file/build symble svgs.js index 7e329fc9..99e2433f 100644 --- a/images/project file/build symble svgs.js +++ b/images/project file/build symble svgs.js @@ -37,41 +37,64 @@ class Icon { //const dt = new DOMImplementation().createDocumentType('svg:svg', '-//W3C//DTD SVG 1.1//EN', 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'); //const svg = new DOMImplementation().createDocument(svgNS, 'svg', dt); -async function main({directory, idPre, svgFilename}) { +async function main({directory, idPre, svgFilename, rectFunc}) { const files = fs.readdirSync(directory); - const iconArr = []; - for (const file of files) - { - const icon = new Icon(file, directory); + const iconArr = files.map(file=>new Icon(file, directory)); + + for (const icon of iconArr) { await icon.init(); - iconArr.push(icon); } + iconArr.sort((a,b)=>{ - function nameNum(fileName){return parseInt(/^\d+/.exec(fileName)[0] || 0)} + function nameNum(fileName){return parseInt(/^\d+/.exec(fileName)?.[0] || 0)} return (nameNum(a.fileName) - nameNum(b.fileName)) || //先判断数字 (a.fileName.length - b.fileName.length); //然后判断文件名长度 }); + const svgDoc = new DOMImplementation().createDocument(svgNS, 'svg'); - for (const icon of iconArr) + let heightSum = 0; + for (let i = 0; i < iconArr.length; i++) { + const icon = iconArr[i]; console.log('正在处理 %s %s', directory, icon.fileName); - const symbol = svgDoc.createElement('symbol'); const parseName = path.parse(icon.fileName); - const regRes = /^(\d+)(.*)$/ig.exec(parseName.name); - let aid = regRes ? `${parseInt(regRes[1])}${regRes[2]}` : parseName.name; - symbol.setAttribute('id', `${idPre}-${aid}`); - symbol.setAttribute('viewBox', `0 0 32 32`); - svgDoc.documentElement.appendChild(symbol); + const iconId = regRes ? `${parseInt(regRes[1])}${regRes[2]}` : parseName.name; + const symbolId = `${idPre}-${iconId}`; + + const imgWidth = icon.webpInfo.width, imgHeight = icon.webpInfo.height; + const {x=0, y=0, width=imgWidth, height=imgHeight} = rectFunc ? rectFunc(imgWidth, imgHeight, parseName.name) : {}; const image = svgDoc.createElement('image'); - image.setAttribute('width', icon.webpInfo.width); - image.setAttribute('height', icon.webpInfo.height); + image.setAttribute('width', imgWidth); + image.setAttribute('height', imgHeight); image.setAttribute('href', icon.webpBase64()); + const symbol = svgDoc.createElement('symbol'); + symbol.setAttribute('id', symbolId); + symbol.setAttribute('viewBox', `${x} ${y} ${width} ${height}`); symbol.appendChild(image); + svgDoc.documentElement.appendChild(symbol); + + const use = svgDoc.createElement('use'); + use.setAttribute('href',`#${symbolId}`); + use.setAttribute('width', width); + use.setAttribute('height', height); + use.setAttribute('y', heightSum); + svgDoc.documentElement.appendChild(use); + + const text = svgDoc.createElement('text'); + text.textContent = symbolId; + text.setAttribute('dominant-baseline', "hanging"); + text.setAttribute('x', width); + text.setAttribute('y', heightSum); + svgDoc.documentElement.appendChild(text); + + heightSum += height; } + svgDoc.documentElement.setAttribute('height', heightSum); + const serialized = new XMLSerializer().serializeToString(svgDoc); const formattedXml = xmlFormatter(serialized, { indentation: '\t', @@ -85,6 +108,9 @@ async function main({directory, idPre, svgFilename}) { const tasks = [ {directory: './awokens', idPre: 'awoken', svgFilename: '../icon-awoken.svg'}, {directory: './types', idPre: 'type', svgFilename: '../icon-type.svg'}, + {directory: './card-frame', idPre: 'card-frame', svgFilename: '../card-frame.svg', rectFunc: (imgWidth, imgHeight, fileName)=>{ + return {x: fileName.includes("sub") ? -4 : 0, y: fileName.includes("sub") ? -4 : 0, width: 100, height: 100}; + }}, ]; tasks.forEach(main); \ No newline at end of file diff --git a/images/project file/card-frame/main-0.png b/images/project file/card-frame/main-0.png new file mode 100644 index 0000000000000000000000000000000000000000..db640b2f0732617fe62f2f8c1e7637fa22290fcc GIT binary patch literal 2132 zcmZ{ldo&Xc8^<@-tx4O;*hm|VNSM0_Z4+|8=8~`&bJ>`?+(`;WF)Ozuysi~Lu}D)P zxxBe#l}jVaC6}TwmtOt(p7XxXInVPs&vU-#e4pp9=emuR$-x7t0{{TvpqVMrZl9$6 zybKcBubx})YxW@!iZ^or?ME!gJAJaW6{Mh=VgqWb{OdecZg=yMdhPb7^V5Q-+)Yt6Ma zWC8%fwPwV#4pD_mMYxD@9eA1{C0D0bmoHY}#CWy=eg)=gl6@0hQE+{p{1uiNruGG7 zKTob7`DkH-20wLeh$wzq{Ba(oll6)Y7jnFgS!X%p- zk%Tdxy0X=?n;{J-?aMMX9^ap4jIT@&%j^HZ^Ky}Pd)SA!WWsR4W1U<5R3Xl8B8nr< z&cEi)S!(4z6-|CE+KV(VYfjEb1Lsd44`Y&T&Mfpdph|clKKj7+Gv7VdX$`2jx0zd4 zH=1zC>~Fg_CB}6KcGRw1eci1&i}8g-)%(KnDx8loETNdDUjY-HfOqa5`mV>5OR{nBZL7pMzE2}n6=pgAk7FQY(v4PNa8BYxerSwJxr8E~c-{9oI7GRZ$a zq-(c?1i?=(o=?3vz!EZ$*8OvV1n44gV!%`+crc5p&TQrbPa-S7BNX_tD#mwm`}Mw~ zLwldpGEwlh&v*N1YooTy!P;w8ipN~;{W_@p#?AB1Gp!VeSBsD11QvKNh$<%JT_6Be z>Db7t7pyJhk3Z-LRdCuUDLNEdg0u!^SN{z7{l-x4=yEW}AvUwhZS)4MSR+H`xF)?T z@*d4slSDyjd32G*ueyZSv6gS8M&||A`eZJfnfe{+P%CVRg$Vc zgkI-M?{!eWU8_W)mNm)SfOPx%t zz4GxDNwwlGKPj&WOS?>i3JY=mB<^9FgxT{E@CS=Lh~i*Gy7FtL8u=Wk7}|H~$@Nu{ z45-CQ6c(swT^F-w79_gq)Hg3m6D&=?Uo8L=mu|t|L;Ck-J8qBzJKzoDr*| zL~u|~%N@kQoNp()1l^E?D-$!m7Vj?#N{!xt^D`CW9@Qu*IzBgRL90P>9Fflzygvp1 zGQMajnVcw5`cS5JCR3!tn{H-OVVvX<%TApty}pWf!naJhi=3AWN0eDjpUPwPvIgQ$s5Y#FEmOtm;Vp!Ul7^X_ zic&wv4!t$w)J%wKooay0PKiGJrE1#4b>X{13Iogq2dbalm0${cKy;@p2XEW?e-UE9>IZK}8YXqN)gW*!dMF)(-xnsAt8X-h zy8N+Sr}VJYAHzv2i>fd9HhftHk$vaWx0P4Fwcl~icH>T2Y^*CQK>8RmY=SuKgMDQQ z%CN-$al)2E(ZIKgNO@N2xu&6&`?=gYy|JR_{0nm%JqTR?>9)Nk4K5P%_H712yD;6? zHT7(PuL08ffUV`Sh80_pqhWgr6o7A2yye8JL%RJ5rb~mpv>=0YD|zqTEfD$?m7>2j z(Wb4~YUmH!Z9r66t{3i~O4$-|cgqMPIpK4!W6HA_Rs-kLe?x%Whv=4B!^5c`K$huQ@BSCKA2|r;62U9f>VHC{Z`KF+ z7v5k5e3JTq@>M_0s4uDi9O?f3*W|C4*^5T{Dz{edRkUAChqmcqlB@D}Az`nM!`pB?-J1sWxkZ)U0b0#oBV&~iT!uIJsHx5g9 w&wuveY|qMkI@^~!CPe*N$Dnm~)kH1PERL1FwTUj|?f-XxnXwhI9`Bj_AI@skTL1t6 literal 0 HcmV?d00001 diff --git a/images/project file/card-frame/main-1.png b/images/project file/card-frame/main-1.png new file mode 100644 index 0000000000000000000000000000000000000000..430c95da9cdc8b83f0147ad23c8e60e9aaebf21e GIT binary patch literal 2182 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 C-Wh)Y literal 0 HcmV?d00001 diff --git a/images/project file/card-frame/main-3.png b/images/project file/card-frame/main-3.png new file mode 100644 index 0000000000000000000000000000000000000000..2e6d52aa102821fea6af19f97461608ede565499 GIT binary patch literal 2212 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 G5}E*zI6-{? literal 0 HcmV?d00001 diff --git a/images/project file/card-frame/sub-0.png b/images/project file/card-frame/sub-0.png new file mode 100644 index 0000000000000000000000000000000000000000..1d66e22d26c656fa25fbc7d62637fb5af24a06f6 GIT binary patch literal 1671 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 ASO5S3 literal 0 HcmV?d00001 diff --git a/images/project file/card-frame/sub-3.png b/images/project file/card-frame/sub-3.png new file mode 100644 index 0000000000000000000000000000000000000000..5d95b0676ca7cf4c476aa120352312f46ed76b66 GIT binary patch literal 1750 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 A6#xJL literal 0 HcmV?d00001 diff --git a/service-worker.js b/service-worker.js index a0746f68..fb2f23ce 100644 --- a/service-worker.js +++ b/service-worker.js @@ -6169,6 +6169,10 @@ const cachesMap = new Map([ "images/badge.png", "b0102fb737cfe9b6be6cf288f28950c7" ], + [ + "images/card-frame.svg", + "6138155bddb716d91ba0df6b17a8e876" + ], [ "images/CARDFRAME2.PNG", "2f744d67fba0e3fcfdcb1222daf2d95f" @@ -6191,11 +6195,11 @@ const cachesMap = new Map([ ], [ "images/icon-awoken-count.svg", - "c129f96e33314d17e849c64df5249474" + "1cdfd0cb59e447ad039446199e94ca7f" ], [ "images/icon-awoken.svg", - "13cecc7407f4d9af1d37118f5bed309b" + "3848e4f032573c3955adfd1187692302" ], [ "images/icon-bind.png", @@ -6215,7 +6219,7 @@ const cachesMap = new Map([ ], [ "images/icon-latent-block-bg.svg", - "8cd753af046ca4a333197afe3827fedc" + "bc557a806c57eec5fcccf0ef5a072e19" ], [ "images/icon-latent.png", @@ -6259,7 +6263,7 @@ const cachesMap = new Map([ ], [ "images/icon-type.svg", - "ba3f57a4b0ef72a91ffb15a460457397" + "e7925c55f255fd89c9df759144884ae7" ], [ "images/icon.png",