Skip to content

Commit f1a42f5

Browse files
silverwindlunny
andauthored
Add SVG favicon (#12437)
Co-authored-by: Lunny Xiao <[email protected]>
1 parent 983cbb2 commit f1a42f5

File tree

3 files changed

+24
-1
lines changed

3 files changed

+24
-1
lines changed

build/generate-images.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ const {fabric} = require('fabric');
66
const {DOMParser, XMLSerializer} = require('xmldom');
77
const {readFile, writeFile} = require('fs').promises;
88
const {resolve} = require('path');
9+
const Svgo = require('svgo');
910

1011
function exit(err) {
1112
if (err) console.error(err);
@@ -20,6 +21,25 @@ function loadSvg(svg) {
2021
});
2122
}
2223

24+
async function generateSvgFavicon(svg, outputFile) {
25+
const svgo = new Svgo({
26+
plugins: [
27+
{removeDimensions: true},
28+
{
29+
addAttributesToSVGElement: {
30+
attributes: [
31+
{'width': '32'},
32+
{'height': '32'},
33+
],
34+
},
35+
},
36+
],
37+
});
38+
39+
const {data} = await svgo.optimize(svg);
40+
await writeFile(outputFile, data);
41+
}
42+
2343
async function generate(svg, outputFile, {size, bg, removeDetail} = {}) {
2444
const parser = new DOMParser();
2545
const serializer = new XMLSerializer();
@@ -67,6 +87,7 @@ async function generate(svg, outputFile, {size, bg, removeDetail} = {}) {
6787

6888
async function main() {
6989
const svg = await readFile(resolve(__dirname, '../assets/logo.svg'), 'utf8');
90+
await generateSvgFavicon(svg, resolve(__dirname, '../public/img/favicon.svg'));
7091
await generate(svg, resolve(__dirname, '../public/img/gitea-lg.png'), {size: 880});
7192
await generate(svg, resolve(__dirname, '../public/img/gitea-512.png'), {size: 512});
7293
await generate(svg, resolve(__dirname, '../public/img/gitea-192.png'), {size: 192});

public/img/favicon.svg

Lines changed: 1 addition & 0 deletions
Loading

templates/base/head.tmpl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,8 @@
5858
{{end}}
5959
};
6060
</script>
61-
<link rel="shortcut icon" href="{{StaticUrlPrefix}}/img/favicon.png">
61+
<link rel="icon" href="{{StaticUrlPrefix}}/img/favicon.svg" type="image/svg+xml">
62+
<link rel="alternate icon" href="{{StaticUrlPrefix}}/img/favicon.png" type="image/png">
6263
<link rel="mask-icon" href="{{StaticUrlPrefix}}/img/gitea-safari.svg" color="#609926">
6364
<link rel="fluid-icon" href="{{StaticUrlPrefix}}/img/gitea-lg.png" title="{{AppName}}">
6465
{{if .RequireSimpleMDE}}

0 commit comments

Comments
 (0)