1 Commits

Author SHA1 Message Date
e0f6337a96 Use local fonts 2025-06-03 10:42:48 +02:00
39 changed files with 2755 additions and 68475 deletions

1
.gitignore vendored
View File

@@ -83,5 +83,6 @@ data/*
# Ignore html files for now
# TODO: Remove later
*.html
index_cache
index_files

1
CNAME
View File

@@ -1 +0,0 @@
defense.berrisch.biz

29
Patrick+Hand.css Normal file
View File

@@ -0,0 +1,29 @@
/* vietnamese */
@font-face {
font-family: 'Patrick Hand';
font-style: normal;
font-weight: 400;
font-display: swap;
src: "./LDI1apSQOAYtSuYWp8ZhfYe8UcLLq7s.woff2" format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Patrick Hand';
font-style: normal;
font-weight: 400;
font-display: swap;
src: "./LDI1apSQOAYtSuYWp8ZhfYe8UMLLq7s.woff2" format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Patrick Hand';
font-style: normal;
font-weight: 400;
font-display: swap;
src: "./LDI1apSQOAYtSuYWp8ZhfYe8XsLL.woff2" format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

56
Roboto+Condensed.css Normal file
View File

@@ -0,0 +1,56 @@
/* cyrillic-ext */
@font-face {
font-family: 'Roboto Condensed';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/robotocondensed/v30/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBD5XxxKA.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'Roboto Condensed';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/robotocondensed/v30/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBK5XxxKA.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
font-family: 'Roboto Condensed';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/robotocondensed/v30/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBC5XxxKA.woff2) format('woff2');
unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
font-family: 'Roboto Condensed';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/robotocondensed/v30/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBN5XxxKA.woff2) format('woff2');
unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
font-family: 'Roboto Condensed';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/robotocondensed/v30/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBB5XxxKA.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Roboto Condensed';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/robotocondensed/v30/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBA5XxxKA.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Roboto Condensed';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/robotocondensed/v30/ieVo2ZhZI2eCN5jzbjEETS9weq8-_d6T_POl0fRJeyWyosBO5Xw.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

81
Roboto.css Normal file
View File

@@ -0,0 +1,81 @@
/* cyrillic-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmZiArmlw.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmQiArmlw.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmYiArmlw.woff2) format('woff2');
unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmXiArmlw.woff2) format('woff2');
unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* math */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVnoiArmlw.woff2) format('woff2');
unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVn6iArmlw.woff2) format('woff2');
unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* vietnamese */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmbiArmlw.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmaiArmlw.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-stretch: 100%;
src: url(https://fonts.gstatic.com/s/roboto/v48/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmUiAo.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

56
Source+Code+Pro.css Normal file
View File

@@ -0,0 +1,56 @@
/* cyrillic-ext */
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/sourcecodepro/v30/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtMRrTEUc.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/sourcecodepro/v30/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtM1rTEUc.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/sourcecodepro/v30/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtMVrTEUc.woff2) format('woff2');
unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/sourcecodepro/v30/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtMprTEUc.woff2) format('woff2');
unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/sourcecodepro/v30/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtMZrTEUc.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/sourcecodepro/v30/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtMdrTEUc.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Source Code Pro';
font-style: normal;
font-weight: 400;
src: url(https://fonts.gstatic.com/s/sourcecodepro/v30/HI_diYsKILxRpg3hIP6sJ7fM7PqPMcMnZFqUwX28DMyQtMlrTA.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

View File

@@ -10,8 +10,6 @@ contributes:
config:
pointer:
key: "q"
color: "red"
pointerSize: 16
alwaysVisible: false
hideDelay: 3000
color: "#202020FF"
scaleFactor: 0.03 # 3% of viewport height
icon: "fa fa-hand-point-up"

View File

@@ -1,41 +1 @@
:root {
--pointer-scale-factor: 0.025;
/* 2.5% of viewport height */
}
.cursor-dot,
.cursor-dot-outline {
pointer-events: none;
position: absolute;
top: 0;
left: 0;
opacity: 0;
transform: translate(-30%, 0%);
transition: opacity 0.4s ease-in-out;
z-index: 99;
}
.cursor-dot {
font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands", "Font Awesome 5 Free", "Font Awesome 5 Brands";
font-weight: 900;
color: red;
font-size: calc(var(--pointer-scale-factor) * 100vh);
}
.cursor-dot.visible {
opacity: 0.8 !important;
}
.cursor-dot.hidden {
opacity: 0 !important;
}
.no-cursor {
cursor: none;
}
.no-cursor a,
.no-cursor div,
.no-cursor span {
cursor: none;
}
.cursor-dot,.cursor-dot-outline{pointer-events:none;position:absolute;top:0;left:0;border-radius:50%;opacity:0;transform:translate(-50%,-50%);transition:opacity 0.3s ease-in-out,transform 0.3s ease-in-out;}.cursor-dot{width:12px;height:12px;background-color:red;z-index:99;}.no-cursor{cursor:none;}.no-cursor a,.no-cursor div,.no-cursor span{cursor:none;}

View File

@@ -1 +1 @@
var RevealPointer=function(){"use strict";var e={backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,pausebreak:19,capslock:20,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,leftarrow:37,uparrow:38,rightarrow:39,downarrow:40,insert:45,delete:46,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90,leftwindowkey:91,rightwindowkey:92,selectkey:93,numpad0:96,numpad1:97,numpad2:98,numpad3:99,numpad4:100,numpad5:101,numpad6:102,numpad7:103,numpad8:104,numpad9:105,multiply:106,add:107,subtract:109,decimalpoint:110,divide:111,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,numlock:144,scrolllock:145,semicolon:186,equalsign:187,comma:188,dash:189,period:190,forwardslash:191,graveaccent:192,openbracket:219,backslash:220,closebracket:221,singlequote:222};return function(){var t={},o=!1,a=null,n={x:0,y:0,isVisible:!1},i={x:0,y:0,scale:1},hideTimer=null;function l(o){var a;null==(t=o.pointer||{}).key?t.key="q":t.key=t.key.toLowerCase(),null!=t.tailLength&&"number"==typeof t.tailLength||(t.tailLength=10),null!=t.color&&"string"==typeof t.color||(t.color="red"),null!=t.alwaysVisible&&"boolean"==typeof t.alwaysVisible||(t.alwaysVisible=!1),null!=t.icon&&"string"==typeof t.icon||(t.icon="fa-solid fa-arrow-pointer"),null!=t.hideDelay&&"number"==typeof t.hideDelay||(t.hideDelay=3e3),null!=t.scaleFactor&&"number"==typeof t.scaleFactor||(t.scaleFactor=0.025),t.keyCode=(a=t.key,e[a])}function updatePointerSize(){document.documentElement.style.setProperty("--pointer-scale-factor",t.scaleFactor)}function showPointer(){if(!n.isVisible){n.isVisible=!0;a.classList.remove("hidden");setTimeout(()=>{a.classList.add("visible")},10);if(hideTimer){clearTimeout(hideTimer);hideTimer=null}if(!t.alwaysVisible){hideTimer=setTimeout(hidePointer,t.hideDelay)}}}function hidePointer(){if(n.isVisible){n.isVisible=!1;a.classList.remove("visible");if(hideTimer){clearTimeout(hideTimer);hideTimer=null}}}function s(){a.style.top="".concat((n.y-i.y)/i.scale,"px"),a.style.left="".concat((n.x-i.x)/i.scale,"px")}function c(e){n.x=e.pageX,n.y=e.pageY;var t=document.body.style.transform;""!==t?(i.x=Number.parseInt(/translate\((.*)px,/gm.exec(t)[1]),i.y=Number.parseInt(/px,\s(.*)px\)/gm.exec(t)[1]),i.scale=Number.parseFloat(/scale\((.)\)/gm.exec(t)[1])):(i.x=0,i.y=0,i.scale=1),requestAnimationFrame(s);if(o&&!t.alwaysVisible){showPointer()}}function r(){(o=!o)?(document.addEventListener("mousemove",c),document.body.classList.add("no-cursor"),showPointer()):(document.removeEventListener("mousemove",c),document.body.classList.remove("no-cursor"),hidePointer())}return{id:"pointer",init:function(e){var o;l(e.getConfig()),updatePointerSize(),t.alwaysVisible?r():e.addKeyBinding({keyCode:t.keyCode,key:t.key},(function(){r()})),(o=document.createElement("i")).className="cursor-dot "+t.icon,o.style.color=t.color,t.alwaysVisible&&o.classList.add("visible"),document.body.appendChild(o),a=o,window.addEventListener("resize",updatePointerSize)}}}}();
var RevealPointer=function(){"use strict";var e={backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,pausebreak:19,capslock:20,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,leftarrow:37,uparrow:38,rightarrow:39,downarrow:40,insert:45,delete:46,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90,leftwindowkey:91,rightwindowkey:92,selectkey:93,numpad0:96,numpad1:97,numpad2:98,numpad3:99,numpad4:100,numpad5:101,numpad6:102,numpad7:103,numpad8:104,numpad9:105,multiply:106,add:107,subtract:109,decimalpoint:110,divide:111,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,numlock:144,scrolllock:145,semicolon:186,equalsign:187,comma:188,dash:189,period:190,forwardslash:191,graveaccent:192,openbracket:219,backslash:220,closebracket:221,singlequote:222};return function(){var t={},o=!1,a=null,n={x:0,y:0,isVisible:!1},i={x:0,y:0,scale:1};function l(o){var a;null==(t=o.pointer||{}).key?t.key="q":t.key=t.key.toLowerCase(),null!=t.pointerSize&&"number"==typeof t.pointerSize||(t.pointerSize=12),null!=t.tailLength&&"number"==typeof t.tailLength||(t.tailLength=10),null!=t.color&&"string"==typeof t.color||(t.color="red"),null!=t.alwaysVisible&&"boolean"==typeof t.alwaysVisible||(t.alwaysVisible=!1),t.keyCode=(a=t.key,e[a])}function s(){a.style.top="".concat((n.y-i.y)/i.scale,"px"),a.style.left="".concat((n.x-i.x)/i.scale,"px"),n.isVisible?a.style.opacity="0.8":a.style.opacity="0",1!==i.scale?(a.style.width="".concat(t.pointerSize/i.scale,"px"),a.style.height="".concat(t.pointerSize/i.scale,"px")):(a.style.width="".concat(t.pointerSize,"px"),a.style.height="".concat(t.pointerSize,"px"))}function c(e){n.x=e.pageX,n.y=e.pageY;var t=document.body.style.transform;""!==t?(i.x=Number.parseInt(/translate\((.*)px,/gm.exec(t)[1]),i.y=Number.parseInt(/px,\s(.*)px\)/gm.exec(t)[1]),i.scale=Number.parseFloat(/scale\((.)\)/gm.exec(t)[1])):(i.x=0,i.y=0,i.scale=1),requestAnimationFrame(s)}function r(){(o=!o)?(document.addEventListener("mousemove",c),document.body.classList.add("no-cursor"),n.isVisible=!0):(document.removeEventListener("mousemove",c),document.body.classList.remove("no-cursor"),n.isVisible=!1,requestAnimationFrame(s))}return{id:"pointer",init:function(e){var o;l(e.getConfig()),t.alwaysVisible?r():e.addKeyBinding({keyCode:t.keyCode,key:t.key},(function(){r()})),(o=document.createElement("div")).className="cursor-dot",o.style.width="".concat(t.pointerSize,"px"),o.style.height="".concat(t.pointerSize,"px"),o.style.backgroundColor=t.color,t.alwaysVisible&&(o.style.opacity="0.8"),document.body.appendChild(o),a=o}}}}();

File diff suppressed because it is too large Load Diff

View File

@@ -1,206 +0,0 @@
---
title: "CDF Weights"
date: 2025-07-10
format:
revealjs:
embed-resources: true
execute:
daemon: false
highlight-style: github
---
```{ojs}
d3 = require("d3@7")
```
```{ojs}
cdf_data = FileAttachment("cdf_data.csv").csv({ typed: true })
```
```{ojs}
function updateChartInner(g, x, y, linesGroup, color, line, data) {
// Update axes with transitions
x.domain(d3.extent(data, d => d.x));
g.select(".x-axis").transition().duration(1500).call(d3.axisBottom(x).ticks(10));
y.domain([0, d3.max(data, d => d.y)]);
g.select(".y-axis").transition().duration(1500).call(d3.axisLeft(y).ticks(5));
// Group data by basis function
const dataByFunction = Array.from(d3.group(data, d => d.b));
const keyFn = d => d[0];
// Update basis function lines
const u = linesGroup.selectAll("path").data(dataByFunction, keyFn);
u.join(
enter => enter.append("path").attr("fill","none").attr("stroke-width",3)
.attr("stroke", (_, i) => color(i)).attr("d", d => line(d[1].map(pt => ({x: pt.x, y: 0}))))
.style("opacity",0),
update => update,
exit => exit.transition().duration(1000).style("opacity",0).remove()
)
.transition().duration(1000)
.attr("d", d => line(d[1]))
.attr("stroke", (_, i) => color(i))
.style("opacity",1);
}
chart = {
// State variable for selected mu parameter
let selectedMu = 1;
const filteredData = () => cdf_data.filter(d =>
Math.abs(selectedMu - d.mu) < 0.001
);
const container = d3.create("div")
.style("max-width", "none")
.style("width", "100%");
const controlsContainer = container.append("div")
.style("display", "flex")
.style("gap", "20px")
.style("align-items", "center");
// Single slider control for mu
const sliderContainer = controlsContainer.append('div')
.style('display','flex')
.style('align-items','center')
.style('gap','10px')
.style('flex','1');
sliderContainer.append('label')
.text('Naive:')
.style('font-size','20px');
const muSlider = sliderContainer.append('input')
.attr('type','range')
.attr('min', 0)
.attr('max', 1)
.attr('step', 0.1)
.property('value', selectedMu)
.on('input', function(event) {
selectedMu = +this.value;
muDisplay.text(selectedMu.toFixed(1));
updateChart(filteredData());
})
.style('width', '100%')
//.style('-webkit-appearance', 'none')
.style('appearance', 'none')
.style('height', '8px')
.style('background', '#BDBDBDFF');
const muDisplay = sliderContainer.append('span')
.text(selectedMu.toFixed(1))
.style('font-size','20px');
// Add Reset button
controlsContainer.append('button')
.text('Reset')
.style('font-size', '20px')
.style('align-self', 'center')
.style('margin-left', 'auto')
.on('click', () => {
selectedMu = 0.5;
muSlider.property('value', selectedMu);
muDisplay.text(selectedMu.toFixed(1));
updateChart(filteredData());
});
// Build SVG
const width = 800;
const height = 450;
const margin = {top: 40, right: 20, bottom: 40, left: 40};
const innerWidth = width - margin.left - margin.right;
const innerHeight = height - margin.top - margin.bottom;
// Set controls container width to match SVG plot width
controlsContainer.style("max-width", "none").style("width", "100%");
// Distribute each control evenly and make sliders full-width
controlsContainer.selectAll("div").style("flex", "1").style("min-width", "0px");
controlsContainer.selectAll("input").style("width", "100%").style("box-sizing", "border-box");
// Create scales
const x = d3.scaleLinear()
.range([0, innerWidth]);
const y = d3.scaleLinear()
.range([innerHeight, 0]);
// Create a color scale for the basis functions
const color = d3.scaleOrdinal(["#80C684FF", "#FFD44EFF", "#D81A5FFF"]);
// Create SVG
const svg = d3.create("svg")
.attr("width", "100%")
.attr("height", "auto")
.attr("viewBox", [0, 0, width, height])
.attr("preserveAspectRatio", "xMidYMid meet")
.attr("style", "max-width: 100%; height: auto;");
// Create the chart group
const g = svg.append("g")
.attr("transform", `translate(${margin.left},${margin.top})`);
// Add axes
const xAxis = g.append("g")
.attr("transform", `translate(0,${innerHeight})`)
.attr("class", "x-axis")
.call(d3.axisBottom(x).ticks(10))
.style("font-size", "20px");
const yAxis = g.append("g")
.attr("class", "y-axis")
.call(d3.axisLeft(y).ticks(5))
.style("font-size", "20px");
// Add a horizontal line at y = 0
g.append("line")
.attr("x1", 0)
.attr("x2", innerWidth)
.attr("y1", y(0))
.attr("y2", y(0))
.attr("stroke", "#000")
.attr("stroke-opacity", 0.2);
// Add gridlines
g.append("g")
.attr("class", "grid-lines")
.selectAll("line")
.data(y.ticks(5))
.join("line")
.attr("x1", 0)
.attr("x2", innerWidth)
.attr("y1", d => y(d))
.attr("y2", d => y(d))
.attr("stroke", "#ccc")
.attr("stroke-opacity", 0.5);
// Create a line generator
const line = d3.line()
.x(d => x(d.x))
.y(d => y(d.y))
.curve(d3.curveBasis);
// Group to contain the basis function lines
const linesGroup = g.append("g")
.attr("class", "basis-functions");
// Store the current basis functions for transition
let currentBasisFunctions = new Map();
// Function to update the chart with new data
function updateChart(data) {
updateChartInner(g, x, y, linesGroup, color, line, data);
}
// Store the update function
svg.node().update = updateChart;
// Initial render
updateChart(filteredData());
container.node().appendChild(svg.node());
return container.node();
}
```

View File

@@ -1,78 +0,0 @@
library(tidyverse)
source("assets/01_common.R")
set.seed(2002)
# Experts
N <- 2
# Observations
T <- 2^5
# Size of probability grid
P <- 999
prob_grid <- 1:P / (P + 1)
# Realized observations
y <- rnorm(T)
# Deviation of the experts
dev <- c(-1, 3)
experts_sd <- c(1, sqrt(4))
# Expert predictions
experts <- array(dim = c(P, N))
seq(-5, 10, length.out = P) -> x_grid
experts[, 1] <- qnorm(prob_grid, mean = dev[1], sd = experts_sd[1])
experts[, 2] <- qnorm(prob_grid, mean = dev[2], sd = experts_sd[2])
experts <- rbind(c(rep(min(experts), N)), experts)
experts <- rbind(experts, c(rep(max(experts), N)))
prob_grid <- c(0, prob_grid, 1)
naive <- 1
df <- data.frame(
x = rep(prob_grid, each = N),
y = c(t(experts)),
expert = rep(1:N, (P + 2)),
naive = rep(naive, (P + 2) * N)
)
naive <- seq(0, 1, length.out = 11)
dfs <- list()
df_old <- df
for (i in seq_along(naive)) {
df_old$naive <- naive[i]
df_new <- data.frame(
x = prob_grid,
y = (experts[, 1] * (naive[i] * (0.5) + (1 - naive[i]) * (1 - prob_grid)) + (naive[i] * 0.5 + (1 - naive[i]) * (prob_grid)) * experts[, 2]),
expert = 3,
naive = rep(naive[i], (P + 2))
)
dfs[[i + 1]] <- bind_rows(df_old, df_new)
}
dfs <- reduce(dfs, bind_rows)
colnames(dfs) <- c("y", "x", "b", "mu")
dfs %>%
ggplot(aes(x = x, y = y, color = factor(b))) +
geom_line() +
labs(
title = "Expert Predictions",
x = "Probability Grid",
y = "Predicted Value"
) +
theme_minimal() +
scale_color_brewer(palette = "Set1") +
theme(legend.position = "top") +
facet_wrap(. ~ mu, ncol = 3)
write_csv(dfs, "assets/crps_learning/weights_plot/cdf_data.csv")

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 84 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 64 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 42 KiB

View File

@@ -184,14 +184,4 @@
publisher = {Cornell University},
doi = {10.48550/arXiv.2201.06808},
url = {https://arxiv.org/abs/2201.06808}
}
@article{taylor2023angular,
title = {Angular Combining of Forecasts of Probability Distributions},
author = {Taylor, James W and Meng, Xiaochun},
year = {2023},
month = {5},
journal = {arXiv preprint arXiv:2305.16735},
publisher = {Cornell University},
doi = {10.48550/arXiv.2305.16735},
url = {https://arxiv.org/abs/2305.16735}
}

BIN
assets/logos_combined.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 KiB

BIN
assets/logos_combined.xcf Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

@@ -1,25 +0,0 @@
<!--
Below is the original version of: https://stackoverflow.com/questions/76261113/repeat-title-slide-at-end-of-reveal-js-presentation-and-add-additionnal-slides-a
Which *clones* the title slide to the placeholder slide.
You can add the placeholder slide like this:
## {.placeholder-for-titleSlide visibility="uncounted"}
-->
<script>
function move_titleSlide() {
var titleSlide = document.querySelector('section#title-slide');
var titleSlideClone = titleSlide.cloneNode(true);
titleSlideClone.id = 'title-slide-cloned';
var placeholder = document.querySelector('section.placeholder-for-titleSlide');
var visibility = placeholder.getAttribute('data-visibility');
if (visibility !== null) {
titleSlideClone.setAttribute('data-visibility', visibility);
}
placeholder.replaceWith(titleSlideClone);
Reveal.sync();
}
window.document.addEventListener("DOMContentLoaded", function (event) {
move_titleSlide();
});
</script>

View File

@@ -1,35 +0,0 @@
<script src="assets/revealjs/custom.js"></script>
<div
style="position: fixed; bottom: 10px; right: 20px; display: flex; justify-content: flex-end; align-items: center; gap: 20px; flex-wrap: wrap;">
<a href="https://www.uni-due.de/">
<img src="assets/ude_signet.svg" alt="Uni Duisburg-Essen Logo" style="height: 4vh; width: auto;">
</a>
<a href="https://www.hemf.wiwi.uni-due.de/en/">
<img src="assets/hecf_signet.svg" alt="HECF Logo" style="height: 4vh; width: auto;">
</a>
</div>
<script>
function move_titleSlide() {
var titleSlide = document.querySelector('section#title-slide');
var placeholder = document.querySelector('section.placeholder-for-titleSlide');
if (titleSlide && placeholder) {
// Transfer visibility attribute from placeholder to title slide
var visibility = placeholder.getAttribute('data-visibility');
if (visibility !== null) {
titleSlide.setAttribute('data-visibility', visibility);
}
// Move the title slide to replace the placeholder
placeholder.parentNode.replaceChild(titleSlide, placeholder);
Reveal.sync();
}
}
window.document.addEventListener("DOMContentLoaded", function (event) {
move_titleSlide();
});
</script>

View File

@@ -1,36 +0,0 @@
<!--
Below is an adjusted version of: https://stackoverflow.com/questions/76261113/repeat-title-slide-at-end-of-reveal-js-presentation-and-add-additionnal-slides-a
Which *moves* the title slide to the placeholder slide.
You can add the placeholder slide like this:
## {.placeholder-for-titleSlide visibility="uncounted"}
-->
<script>
function move_titleSlide() {
var titleSlide = document.querySelector('section#title-slide');
var placeholder = document.querySelector('section.placeholder-for-titleSlide');
if (titleSlide && placeholder) {
// Transfer visibility attribute from placeholder to title slide
var visibility = placeholder.getAttribute('data-visibility');
if (visibility !== null) {
titleSlide.setAttribute('data-visibility', visibility);
}
// Move the title slide to replace the placeholder
placeholder.parentNode.replaceChild(titleSlide, placeholder);
Reveal.sync();
}
}
window.document.addEventListener("DOMContentLoaded", function (event) {
move_titleSlide();
});
</script>
<style>
#title-slide .subtitle {
margin-bottom: 2.5rem
}
</style>

View File

@@ -1,66 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.2" viewBox="0 0 1052.3625 414.5675" height="414.5675" width="1052.3625" id="ude-logo" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
<style type="text/css">
path { fill:#003B7A;fill-opacity:1;fill-rule:nonzero;stroke:none }
</style>
<defs id="defs6">
<clipPath id="clipPath16" clipPathUnits="userSpaceOnUse">
<path id="path18" d="m 0,331.654 841.89,0 L 841.89,0 0,0 0,331.654 Z"/>
</clipPath>
</defs>
<g transform="matrix(1.25,0,0,-1.25,0,414.5675)">
<g>
<g clip-path="url(#clipPath16)">
<g transform="translate(59.0718,56.833)">
<path d="m 0,0 c 0,5.246 -1.094,7.721 -4.588,7.721 -8.666,0 -13.325,-17.549 -13.325,-29.418 0,-5.17 1.093,-7.645 4.659,-7.645 C -4.588,-29.342 0,-11.869 0,0 m -14.271,-36.988 c -8.595,0 -13.474,5.24 -13.474,15.074 0,17.035 7.501,37.279 24.249,37.279 8.446,0 13.324,-5.314 13.324,-15.146 0,-16.963 -7.426,-37.207 -24.099,-37.207"/>
</g>
<g transform="translate(82.8135,20.5752)">
<path d="m 0,0 c -1.384,-6.846 -4.079,-14.199 -13.98,-14.199 -3.352,0 -6.482,0.437 -6.482,1.238 0,0.287 0.072,0.506 0.145,0.799 l 1.529,5.099 c 0.147,0.36 0.294,0.508 0.512,0.508 0.216,0 1.455,-0.365 2.984,-0.365 4.951,0 5.825,3.348 6.772,8.008 l 5.68,28.836 -5.172,0 c -0.436,0 -1.018,0.074 -1.018,0.73 0,0.291 0.075,0.58 0.144,0.871 l 0.874,4.082 c 0.075,0.651 0.219,0.87 1.021,0.87 l 5.388,0 0.875,4.589 c 1.092,5.897 2.985,11.651 12.959,11.651 3.058,0 7.355,-0.949 7.355,-2.041 0,-0.221 -0.074,-0.363 -0.146,-0.582 L 17.694,44.996 C 17.475,44.559 17.256,44.49 17.11,44.49 c -0.728,0 -2.184,0.944 -4.369,0.944 -3.786,0 -4.296,-2.838 -4.951,-5.825 l -0.654,-3.132 8.3,0 c 0.655,0 0.874,-0.364 0.874,-0.653 0,-0.293 -0.146,-0.586 -0.219,-0.875 L 14.78,30.727 c -0.219,-0.655 -0.291,-0.803 -1.019,-0.803 l -7.864,0 L 0,0 Z"/>
</g>
<g transform="translate(108.4463,20.5752)">
<path d="m 0,0 c -1.384,-6.846 -4.079,-14.199 -13.98,-14.199 -3.35,0 -6.482,0.437 -6.482,1.238 0,0.287 0.072,0.506 0.147,0.799 l 1.528,5.099 c 0.146,0.36 0.29,0.508 0.509,0.508 0.218,0 1.456,-0.365 2.986,-0.365 4.954,0 5.825,3.348 6.772,8.008 l 5.679,28.836 -5.169,0 c -0.437,0 -1.021,0.074 -1.021,0.73 0,0.291 0.073,0.58 0.148,0.871 l 0.873,4.082 c 0.071,0.651 0.219,0.87 1.019,0.87 l 5.388,0 0.873,4.589 c 1.092,5.897 2.986,11.651 12.962,11.651 3.059,0 7.354,-0.949 7.354,-2.041 0,-0.221 -0.072,-0.363 -0.146,-0.582 L 17.691,44.996 C 17.475,44.559 17.257,44.49 17.11,44.49 c -0.728,0 -2.184,0.944 -4.367,0.944 -3.788,0 -4.298,-2.838 -4.953,-5.825 l -0.656,-3.132 8.301,0 c 0.656,0 0.875,-0.364 0.875,-0.653 0,-0.293 -0.146,-0.586 -0.219,-0.875 L 14.78,30.727 c -0.218,-0.655 -0.291,-0.803 -1.019,-0.803 l -7.865,0 L 0,0 Z"/>
</g>
<g transform="translate(132.6211,41.4697)">
<path d="m 0,0 c 3.132,0 12.889,0 12.889,6.697 0,1.893 -1.165,3.573 -3.351,3.573 C 2.694,10.27 0.655,2.693 0,0 m 16.893,-16.453 c 0.073,-0.219 0.219,-0.438 0.219,-0.656 0,-0.95 -6.772,-4.516 -14.199,-4.516 -8.736,0 -12.67,5.459 -12.67,13.543 0,14.562 9.394,24.906 20.607,24.906 6.846,0 10.776,-3.793 10.776,-9.615 0,-13.76 -18.494,-13.76 -22.645,-13.76 0,-2.185 -0.582,-7.791 6.262,-7.791 4.295,0 8.155,2.91 9.248,2.91 0.363,0 0.438,-0.216 0.582,-0.509 l 1.82,-4.512 z"/>
</g>
<g transform="translate(183.5234,21.9561)" id="g36">
<path d="m 0,0 c -0.145,-0.801 -0.291,-0.873 -1.019,-0.873 l -6.771,0 c -0.582,0 -0.947,0.148 -0.947,0.728 0,0.219 0.072,0.508 0.072,0.801 l 4.805,20.752 c 0.365,1.455 0.656,2.91 0.656,4.442 0,1.673 -0.656,2.841 -2.185,2.841 -6.698,0 -9.101,-9.031 -10.266,-14.273 L -18.785,0 c -0.146,-0.801 -0.293,-0.873 -1.021,-0.873 l -6.771,0 c -0.584,0 -0.946,0.148 -0.946,0.728 0,0.219 0.074,0.508 0.074,0.801 l 4.948,21.918 c 0.438,1.819 0.875,3.637 0.875,5.969 0,2.186 -0.656,3.203 -0.656,4.516 0,0.509 0.511,0.656 0.874,0.798 l 5.827,2.26 c 0.219,0.071 0.363,0.221 0.727,0.221 0.802,0 1.457,-3.279 1.457,-7.359 1.965,2.33 6.116,7.359 12.085,7.359 4.734,0 7.355,-3.643 7.355,-7.647 0,-1.892 -0.29,-3.859 -0.727,-5.683 L 0,0 Z"/>
</g>
<g transform="translate(230.2773,65.1338)" id="g40">
<path id="path42" d="m 0,0 c -2.257,0 -4.079,1.822 -4.079,4.078 0,2.186 1.822,4.08 4.079,4.08 2.184,0 4.077,-1.894 4.077,-4.08 C 4.077,1.822 2.184,0 0,0 m -6.917,-42.594 c -0.148,-0.658 -0.22,-1.457 -0.947,-1.457 l -3.861,0 c -0.437,0 -0.728,0.149 -0.728,0.367 0,0.288 0.073,0.649 0.147,0.87 l 6.262,29.49 -5.752,0 c -0.51,0 -0.584,0.219 -0.584,0.511 0,0.145 0,0.288 0.074,0.583 l 0.51,2.328 c 0.146,0.511 0.365,0.8 0.874,0.8 l 9.685,0 c 1.017,0 1.162,-0.07 1.162,-0.582 0,-0.435 -0.218,-1.017 -0.362,-1.818 l -6.48,-31.092 z"/>
</g>
<g transform="translate(275.9316,46.1318)">
<path id="path46" d="m 0,0 c 0.219,0.949 0.438,1.967 0.438,2.912 0,2.041 -1.092,3.129 -3.277,3.129 -7.646,0 -9.902,-7.643 -11.65,-15.506 l -3.277,-14.855 c -0.147,-0.512 -0.29,-0.729 -0.875,-0.729 l -3.786,0 c -0.364,0 -0.582,0.149 -0.582,0.436 0,0.144 0,0.363 0.074,0.511 L -17.838,0 c 0.218,0.949 0.437,1.967 0.437,2.912 0,2.041 -1.093,3.129 -3.279,3.129 -7.645,0 -10.483,-9.684 -11.503,-14.488 l -3.352,-15.873 c -0.144,-0.512 -0.287,-0.729 -0.871,-0.729 l -3.788,0 c -0.363,0 -0.582,0.149 -0.582,0.436 0,0.144 0,0.363 0.075,0.511 l 5.166,24.463 c 0.294,1.532 0.513,3.131 0.513,4.155 0,1.453 -0.293,2.91 -0.582,4.367 0,0.291 0.363,0.51 0.654,0.582 l 2.476,1.092 c 0.437,0.144 0.728,0.363 1.018,0.363 0.8,0 1.312,-1.82 1.312,-3.637 0,-1.461 -0.147,-2.33 -0.147,-3.279 l 0.147,0 c 2.402,3.496 5.898,6.916 11.65,6.916 3.495,0 6.116,-1.963 6.116,-6.916 l 0.145,0 C -9.685,7.5 -6.188,10.92 -0.654,10.92 3.132,10.92 5.972,8.957 5.972,5.098 5.972,3.348 5.607,1.674 5.244,0 L 0.072,-24.32 c -0.143,-0.512 -0.29,-0.729 -0.871,-0.729 l -3.788,0 c -0.364,0 -0.581,0.149 -0.581,0.436 0,0.144 0,0.363 0.073,0.511 L 0,0 Z"/>
</g>
<g transform="translate(320.9395,25.9619)" id="g48">
<path id="path50" d="m 0,0 c 4.441,0 8.301,1.891 10.776,5.02 4.732,5.466 7.572,19.009 7.572,26 0,8.519 -4.661,9.099 -9.611,9.099 l -4.66,0 L -4.369,0 0,0 Z m 7.427,45 c 8.372,0 16.892,-0.293 16.892,-14.055 0,-7.134 -2.186,-17.256 -6.481,-25.486 C 13.687,-2.402 6.844,-4.879 -1.821,-4.879 l -8.667,0 c -0.362,0 -0.581,0.149 -0.581,0.512 L -0.729,44.27 C -0.583,44.852 -0.293,45 0.145,45 l 7.282,0 z"/>
</g>
<g transform="translate(371.4771,47.5127)" id="g52">
<path id="path54" d="m 0,0 c 0,3.061 -1.749,5.027 -5.316,5.027 -8.299,0 -10.63,-9.468 -11.431,-13.037 C -12.743,-8.01 0,-8.01 0,0 m 2.184,-21.916 c 0.074,-0.143 0.146,-0.217 0.146,-0.361 0,-0.875 -6.408,-5.172 -13.471,-5.172 -8.227,0 -11.795,5.24 -11.795,13.324 0,12.381 7.572,23.664 18.422,23.664 6.479,0 9.609,-3.932 9.609,-9.32 0,-12.668 -16.017,-12.668 -22.426,-12.74 0,-0.657 -0.072,-1.241 -0.072,-1.823 0,-5.166 2.039,-8.008 6.771,-8.008 6.481,0 9.392,3.493 10.414,3.493 0.29,0 0.509,-0.215 0.653,-0.432 l 1.749,-2.625 z"/>
</g>
<g transform="translate(385.9688,46.4932)" id="g56">
<path id="path58" d="m 0,0 c 0.291,1.531 0.509,3.131 0.509,4.154 0,1.453 -0.29,2.91 -0.581,4.367 0,0.292 0.363,0.51 0.655,0.583 l 2.622,1.091 c 0.437,0.145 0.728,0.364 1.021,0.364 0.581,0 1.38,-2.182 1.38,-4.444 0,-1.453 -0.218,-2.617 -0.218,-3.273 l 0.147,0 c 2.694,3.785 6.698,7.717 13.177,7.717 3.789,0 6.628,-1.963 6.628,-5.823 0,-1.75 -0.362,-3.423 -0.727,-5.097 l -5.169,-24.321 c -0.148,-0.511 -0.294,-0.728 -0.876,-0.728 l -3.785,0 c -0.365,0 -0.584,0.148 -0.584,0.435 0,0.145 0,0.364 0.072,0.512 l 5.097,24.102 c 0.219,0.949 0.438,1.966 0.438,2.912 0,2.041 -1.094,3.129 -3.277,3.129 C 8.667,5.68 4.37,-4.004 3.351,-8.809 L 0,-24.682 c -0.147,-0.511 -0.291,-0.728 -0.872,-0.728 l -3.788,0 c -0.365,0 -0.584,0.148 -0.584,0.435 0,0.145 0,0.364 0.075,0.512 L 0,0 Z"/>
</g>
<g transform="translate(421.8706,21.8115)" id="g60">
<path id="path62" d="m 0,0 c -0.145,-0.512 -0.291,-0.729 -0.872,-0.729 l -3.788,0 c -0.363,0 -0.583,0.149 -0.583,0.436 0,0.145 0,0.363 0.076,0.512 L 5.388,49.805 c 0.073,0.437 0.219,1.019 0.73,1.164 l 3.642,0.873 c 0.144,0 0.363,0.144 0.653,0.144 0.509,0 0.584,-0.216 0.509,-0.58 L 4.151,19.805 4.297,19.658 21.917,35.314 c 0.146,0.073 0.365,0.293 0.583,0.293 0.148,0 0.438,-0.22 0.584,-0.293 l 2.474,-2.037 c 0.147,-0.15 0.293,-0.293 0.293,-0.437 0,-0.295 -0.146,-0.438 -0.293,-0.512 L 9.466,18.859 20.389,1.383 c 0.072,-0.145 0.219,-0.289 0.219,-0.438 0,-0.216 -0.291,-0.507 -0.509,-0.582 l -3.205,-1.967 c -0.219,-0.144 -0.437,-0.218 -0.582,-0.218 -0.218,0 -0.437,0.218 -0.511,0.367 L 3.932,18.641 0,0 Z"/>
</g>
<g transform="translate(470.0039,47.5127)" id="g64">
<path id="path66" d="m 0,0 c 0,3.061 -1.746,5.027 -5.316,5.027 -8.299,0 -10.629,-9.468 -11.433,-13.037 C -12.743,-8.01 0,-8.01 0,0 m 2.185,-21.916 c 0.073,-0.143 0.145,-0.217 0.145,-0.361 0,-0.875 -6.406,-5.172 -13.469,-5.172 -8.228,0 -11.798,5.24 -11.798,13.324 0,12.381 7.575,23.664 18.422,23.664 6.482,0 9.612,-3.932 9.612,-9.32 0,-12.668 -16.017,-12.668 -22.426,-12.74 0,-0.657 -0.074,-1.241 -0.074,-1.823 0,-5.166 2.041,-8.008 6.77,-8.008 6.485,0 9.396,3.493 10.415,3.493 0.292,0 0.51,-0.215 0.656,-0.432 l 1.747,-2.625 z"/>
</g>
<g transform="translate(484.498,46.4932)" id="g68">
<path id="path70" d="m 0,0 c 0.291,1.531 0.509,3.131 0.509,4.154 0,1.453 -0.29,2.91 -0.581,4.367 0,0.292 0.363,0.51 0.655,0.583 l 2.621,1.091 c 0.438,0.145 0.728,0.364 1.021,0.364 0.582,0 1.38,-2.182 1.38,-4.444 0,-1.453 -0.217,-2.617 -0.217,-3.273 l 0.145,0 c 2.696,3.785 6.7,7.717 13.179,7.717 3.788,0 6.628,-1.963 6.628,-5.823 0,-1.75 -0.363,-3.423 -0.729,-5.097 l -5.169,-24.321 c -0.146,-0.511 -0.294,-0.728 -0.874,-0.728 l -3.786,0 c -0.366,0 -0.584,0.148 -0.584,0.435 0,0.145 0,0.364 0.073,0.512 l 5.098,24.102 c 0.218,0.949 0.436,1.966 0.436,2.912 0,2.041 -1.093,3.129 -3.277,3.129 C 8.667,5.68 4.369,-4.004 3.351,-8.809 L 0,-24.682 c -0.146,-0.511 -0.291,-0.728 -0.872,-0.728 l -3.789,0 c -0.364,0 -0.583,0.148 -0.583,0.435 0,0.145 0,0.364 0.074,0.512 L 0,0 Z"/>
</g>
<path id="path72" d="m 0,122.181 841.89,0 0,209.473 -841.89,0 0,-209.473 z"/>
<g transform="translate(57.2827,204.4829)" id="g74">
<path id="path76" d="m 0,0 c -2.759,-1.852 -6.607,-2.191 -11.827,-2.191 l -12.117,0 0,41.984 12.117,0 c 5.22,0 9.018,-0.238 11.827,-2.127 3.386,-2.296 5.401,-6.66 5.401,-12.4 l 0,-12.867 C 5.401,6.658 3.386,2.236 0,0 m -4.02,23.254 c 0,6.09 -2.347,8.438 -8.438,8.438 l -2.184,0 0,-25.788 2.184,0 c 6.025,0 8.438,2.415 8.438,8.506 l 0,8.844 z M 51.456,-3.225 c -10.17,0 -15.049,4.829 -15.049,14.653 l 0,28.365 9.307,0 0,-26.246 c 0,-6.084 0.918,-8.668 5.742,-8.668 4.877,0 5.74,2.636 5.74,8.668 l 0,26.246 9.301,0 0,-28.365 c 0,-9.882 -4.825,-14.653 -15.041,-14.653 m 48.232,1.034 -0.06,41.984 9.307,0 0.053,-41.984 -9.3,0 z m 53.46,35.615 c -2.873,0 -4.648,-1.611 -4.648,-3.853 0,-2.128 1.667,-3.681 5.05,-5.169 4.251,-1.838 7.987,-3.043 10.509,-5.052 2.811,-2.244 4.422,-5.633 4.422,-9.708 0,-7.644 -5.735,-12.915 -14.47,-12.915 -6.605,0 -11.653,2.873 -15.165,8.492 l 7.241,5.117 c 2.413,-3.969 4.772,-5.799 8.158,-5.799 3.216,0 5.281,1.889 5.281,4.412 0,2.296 -1.493,4.024 -4.647,5.346 -4.137,1.719 -7.757,2.934 -10.396,4.987 -2.93,2.31 -4.423,5.517 -4.423,9.417 0,7.412 5.221,12.184 13.609,12.184 6.083,0 10.74,-2.52 13.724,-7.408 l -6.663,-4.776 c -2.242,3.172 -4.71,4.725 -7.582,4.725 m 67.077,-13.509 c 4.477,-1.431 6.713,-4.757 6.713,-10.048 0,-8.212 -4.82,-12.058 -14.7,-12.058 l -14.181,0 0,41.984 13.897,0 c 9.473,0 14.125,-3.398 14.125,-10.687 0,-4.538 -1.775,-7.346 -5.854,-9.191 m -9.189,13.388 -3.676,0 0,-10.399 3.676,0 c 3.79,0 5.624,1.73 5.624,5.223 0,3.621 -1.782,5.176 -5.624,5.176 m 0.346,-16.934 -4.022,0 0,-11.715 4.022,0 c 4.187,0 6.203,1.836 6.203,5.845 0,4.022 -2.016,5.87 -6.203,5.87 m 61.044,-19.594 c -10.173,0 -15.051,4.829 -15.051,14.653 l 0,28.365 9.3,0 0,-26.246 c 0,-6.084 0.925,-8.668 5.751,-8.668 4.874,0 5.741,2.636 5.741,8.668 l 0,26.246 9.297,0 0,-28.365 c 0,-9.882 -4.824,-14.653 -15.038,-14.653 m 68.678,19.239 9.18,-18.205 -10.268,0 -8.158,17.111 -3.104,0 0,-17.111 -9.298,0 0,41.984 10.557,0 c 5.631,0 9.882,-0.174 12.924,-1.787 3.788,-2.004 5.857,-5.742 5.857,-10.613 0,-5.633 -2.702,-9.655 -7.69,-11.379 m -9.769,16.656 -2.581,0 0,-11.024 2.581,0 c 5.631,0 8.151,0.801 8.151,5.508 0,4.717 -2.52,5.516 -8.151,5.516 m 61.037,-19.807 0,7.174 14.303,0 0,-22.746 -4.131,0 -1.329,3.398 c -2.466,-2.766 -5.219,-3.962 -9.066,-3.962 -4.242,0 -7.87,1.421 -10.224,3.906 -3.438,3.549 -3.722,7.97 -3.722,14.462 l 0,7.412 c 0,6.427 0.284,10.917 3.722,14.471 2.415,2.525 6.033,3.905 10.504,3.905 8.511,0 13.845,-4.822 14.246,-12.918 l -9.417,0 c -0.226,3.15 -1.901,4.814 -4.829,4.814 -4.591,0 -4.816,-2.918 -4.816,-8.661 l 0,-10.571 c 0,-5.685 0.225,-8.668 4.816,-8.668 3.396,0 4.829,2.004 4.829,6.366 l 0,1.618 -4.886,0 z" style="fill:white !important;"/>
</g>
<g transform="translate(91.1489,168.4702)" id="g78">
<path id="path80" d="m 0,0 0,-8.094 -29.519,0 0,41.98 28.315,0 0,-8.104 -19.012,0 0,-7.527 12.98,0 0,-8.09 -12.98,0 L -20.216,0 0,0 Z m 39.045,27.509 c -2.87,0 -4.647,-1.61 -4.647,-3.852 0,-2.123 1.662,-3.668 5.052,-5.171 4.251,-1.831 7.985,-3.034 10.509,-5.052 2.809,-2.23 4.421,-5.627 4.421,-9.695 0,-7.644 -5.743,-12.921 -14.474,-12.921 -6.598,0 -11.654,2.861 -15.16,8.495 l 7.239,5.111 c 2.413,-3.958 4.767,-5.802 8.158,-5.802 3.209,0 5.28,1.893 5.28,4.42 0,2.295 -1.497,4.021 -4.651,5.338 -4.139,1.726 -7.759,2.927 -10.391,5.002 -2.928,2.295 -4.429,5.512 -4.429,9.415 0,7.413 5.229,12.171 13.609,12.171 6.091,0 10.739,-2.52 13.731,-7.406 L 46.63,22.797 c -2.243,3.161 -4.713,4.712 -7.585,4.712 m 54.037,0 c -2.872,0 -4.655,-1.61 -4.655,-3.852 0,-2.123 1.674,-3.668 5.058,-5.171 4.249,-1.831 7.985,-3.034 10.514,-5.052 2.81,-2.23 4.414,-5.627 4.414,-9.695 0,-7.644 -5.742,-12.921 -14.464,-12.921 -6.611,0 -11.657,2.861 -15.164,8.495 l 7.235,5.111 c 2.407,-3.958 4.768,-5.802 8.151,-5.802 3.222,0 5.287,1.893 5.287,4.42 0,2.295 -1.493,4.021 -4.653,5.338 -4.138,1.726 -7.751,2.927 -10.395,5.002 -2.926,2.295 -4.416,5.512 -4.416,9.415 0,7.413 5.22,12.171 13.604,12.171 6.09,0 10.736,-2.52 13.721,-7.406 l -6.657,-4.765 c -2.242,3.161 -4.709,4.712 -7.58,4.712 M 165.266,0 l 0,-8.094 -29.513,0 0,41.98 28.304,0 0,-8.104 -19.008,0 0,-7.527 12.987,0 0,-8.09 -12.987,0 0,-10.165 20.217,0 z m 50.588,-8.094 -14.754,28.365 0.17,-28.365 -8.091,0 0,41.98 8.952,0 13.44,-25.506 -0.172,25.506 8.095,0 0,-41.98 -7.64,0 z" style="fill:white !important;"/>
</g>
<g transform="translate(44.564,269.7212)" id="g82">
<path id="path84" d="m 0,0 c -7.519,0 -11.122,3.566 -11.122,10.835 l 0,20.974 6.877,0 0,-19.414 c 0,-4.499 0.673,-6.408 4.245,-6.408 3.616,0 4.249,1.955 4.249,6.408 l 0,19.414 6.876,0 0,-20.974 C 11.125,3.527 7.563,0 0,0 m 36.652,0.756 -10.913,20.985 0.125,-20.985 -5.985,0 0,31.053 6.621,0 9.944,-18.86 -0.132,18.86 5.994,0 0,-31.053 -5.654,0 z m 15.033,0 -0.039,31.053 6.883,0 0.039,-31.053 -6.883,0 z m 29.858,0 -7.262,0 -9.509,31.053 6.878,0 6.282,-21.704 6.242,21.704 6.886,0 -9.517,-31.053 z m 36.735,5.993 0,-5.993 -21.824,0 0,31.053 20.933,0 0,-5.988 -14.049,0 0,-5.562 9.593,0 0,-5.989 -9.593,0 0,-7.521 14.94,0 z m 22.898,7.477 6.795,-13.47 -7.602,0 -6.033,12.664 -2.297,0 0,-12.664 -6.878,0 0,31.053 7.814,0 c 4.166,0 7.307,-0.129 9.561,-1.317 2.797,-1.488 4.327,-4.246 4.327,-7.854 0,-4.165 -1.998,-7.128 -5.687,-8.412 m -7.222,12.316 -1.915,0 0,-8.151 1.915,0 c 4.167,0 6.032,0.591 6.032,4.07 0,3.494 -1.865,4.081 -6.032,4.081 m 28.326,0.555 c -2.123,0 -3.439,-1.193 -3.439,-2.849 0,-1.566 1.234,-2.719 3.744,-3.816 3.133,-1.354 5.897,-2.256 7.767,-3.739 2.08,-1.656 3.27,-4.164 3.27,-7.179 0,-5.654 -4.245,-9.559 -10.702,-9.559 -4.883,0 -8.625,2.126 -11.22,6.29 l 5.353,3.777 c 1.788,-2.932 3.532,-4.286 6.033,-4.286 2.381,0 3.915,1.399 3.915,3.262 0,1.703 -1.103,2.984 -3.445,3.951 -3.058,1.277 -5.738,2.166 -7.683,3.698 -2.166,1.704 -3.274,4.082 -3.274,6.968 0,5.479 3.868,9.004 10.063,9.004 4.503,0 7.943,-1.869 10.153,-5.477 l -4.925,-3.527 c -1.663,2.34 -3.484,3.482 -5.61,3.482 m 18.861,-26.341 -0.044,31.053 6.877,0 0.047,-31.053 -6.88,0 z m 27.44,25.065 0,-25.065 -6.886,0 0,25.065 -7.859,0 0,5.988 22.592,0 0,-5.988 -7.847,0 z m 24.161,13.584 5.222,0 0,-5.599 -5.222,0 0,5.599 z m -7.518,0 5.183,0 0,-5.599 -5.183,0 0,5.599 z m 10.403,-7.596 8.923,-31.053 -6.666,0 -1.664,6.203 -9.34,0 -1.616,-6.203 -6.672,0 8.925,31.053 8.11,0 z m -0.719,-19.538 -3.314,14.02 -3.353,-14.02 6.667,0 z m 26.585,13.55 0,-25.065 -6.877,0 0,25.065 -7.861,0 0,5.988 22.597,0 0,-5.988 -7.859,0 z" style="fill:white !important;"/>
</g>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
id="Ebene_1"
data-name="Ebene 1"
viewBox="0 0 188.964 175.744"
version="1.1"
sodipodi:docname="ude_signet.svg"
width="188.964"
height="175.744"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview4"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1" />
<defs
id="defs1">
<style
id="style1">.cls-1{fill:#004c93;}</style>
</defs>
<title
id="title1">signet_ude_rgb</title>
<path
class="cls-1"
d="M 174.102,167.072 H 8.67 V 8.676 h 158.4 v 31.05 a 2.05,2.05 0 0 0 1.33,1.919 l 6.527,2.447 a 0.611,0.611 0 0 0 0.215,0.041 0.6,0.6 0 0 0 0.6,-0.6 V 4.336 A 4.336,4.336 0 0 0 171.406,0 H 4.336 A 4.336,4.336 0 0 0 0,4.336 v 167.072 a 4.337,4.337 0 0 0 4.336,4.336 h 169.766 a 1.639,1.639 0 0 0 1.639,-1.639 v -5.4 a 1.638,1.638 0 0 0 -1.639,-1.633 z"
id="path1" />
<path
class="cls-1"
d="m 74.282,118.574 c 0,14.137 -4.934,23.625 -22.865,23.625 -17.931,0 -22.866,-9.488 -22.866,-23.625 V 77.585 c 0,-1.707 0.379,-1.992 1.992,-1.992 h 8.823 c 1.614,0 1.994,0.285 1.994,1.992 v 40.989 c 0,6.831 0.474,13.378 10.057,13.378 9.583,0 10.057,-6.547 10.057,-13.378 V 77.585 c 0,-1.707 0.379,-1.992 1.992,-1.992 h 8.824 c 1.613,0 1.992,0.285 1.992,1.992 z"
id="path2" />
<path
class="cls-1"
d="m 109.765,75.593 c 18.121,0 27.61,5.883 27.61,32.165 0,27.23 -11.007,32.828 -27.895,32.828 H 94.963 c -1.612,0 -1.992,-0.38 -1.992,-1.993 V 77.585 c 0,-1.707 0.38,-1.992 2.087,-1.992 z m -0.57,54.745 c 10.722,0 14.707,-4.649 14.707,-22.771 0,-16.982 -4.08,-21.727 -14.707,-21.727 h -3.415 v 44.5 z"
id="path3" />
<path
class="cls-1"
d="m 188.584,138.593 c 0,1.708 -0.284,1.993 -1.9,1.993 h -31.212 c -1.613,0 -1.993,-0.285 -1.993,-1.993 V 77.585 c 0,-1.707 0.38,-1.992 1.993,-1.992 h 31.12 c 1.9,0 2.372,0.19 2.372,1.044 a 4.188,4.188 0 0 1 -0.285,1.329 l -1.8,6.356 a 1.936,1.936 0 0 1 -2.183,1.518 h -18.409 v 15.655 h 16.131 c 1.707,0 1.992,0.285 1.992,1.993 v 6.262 c 0,1.708 -0.38,1.992 -1.992,1.992 h -16.131 v 18.6 h 20.305 c 1.708,0 1.992,0.286 1.992,1.993 z"
id="path4" />
</svg>

Before

Width:  |  Height:  |  Size: 2.4 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 23 KiB

BIN
assets/web_pres.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 80 KiB

View File

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="326.464 209.764 188.9641 175.744" width="188.964px" height="175.744px">
<defs>
<style>.default{fill:#004c93;}</style>
</defs>
<path class="default" d="M500.566,376.836H335.134V218.44h158.4v31.05a2.05,2.05,0,0,0,1.33,1.919l6.527,2.447a.611.611,0,0,0,.215.041.6.6,0,0,0,.6-.6V214.1a4.336,4.336,0,0,0-4.336-4.336H330.8a4.336,4.336,0,0,0-4.336,4.336V381.172a4.337,4.337,0,0,0,4.336,4.336H500.566a1.639,1.639,0,0,0,1.639-1.639v-5.4A1.638,1.638,0,0,0,500.566,376.836Z" transform="matrix(1, 0, 0, 1, 3.552713678800501e-15, 0)"/>
<g transform="matrix(0.571585, 0, 0, -0.572302, 342.738, 530.144)" style="">
<path d="M 0.548 -0.232 Q 0.548 -0.166 0.536 -0.127 Q 0.524 -0.088 0.493 -0.056 Q 0.423 0.017 0.295 0.017 Q 0.156 0.017 0.1 -0.07 Q 0.066 -0.123 0.066 -0.232 L 0.066 -0.665 Q 0.066 -0.679 0.069 -0.683 Q 0.073 -0.686 0.087 -0.686 L 0.182 -0.686 Q 0.2 -0.686 0.202 -0.677 Q 0.203 -0.673 0.203 -0.665 L 0.203 -0.232 Q 0.203 -0.152 0.223 -0.126 Q 0.25 -0.091 0.305 -0.091 Q 0.364 -0.091 0.39 -0.123 Q 0.416 -0.156 0.416 -0.23 L 0.416 -0.665 Q 0.416 -0.683 0.425 -0.685 Q 0.429 -0.686 0.437 -0.686 L 0.527 -0.686 Q 0.541 -0.686 0.544 -0.683 Q 0.548 -0.679 0.548 -0.665 Z M 1.227 -0.342 Q 1.227 -0.089 1.1 -0.025 Q 1.051 0 0.937 0 L 0.78 0 Q 0.762 0 0.76 -0.009 Q 0.759 -0.013 0.759 -0.021 L 0.759 -0.665 Q 0.759 -0.683 0.768 -0.685 Q 0.772 -0.686 0.78 -0.686 L 0.937 -0.686 Q 1.009 -0.686 1.041 -0.68 Q 1.227 -0.645 1.227 -0.342 Z M 1.083 -0.336 Q 1.083 -0.514 1.02 -0.557 Q 0.991 -0.577 0.931 -0.577 L 0.896 -0.577 L 0.896 -0.109 L 0.931 -0.109 Q 1.006 -0.109 1.035 -0.135 Q 1.083 -0.178 1.083 -0.336 Z M 1.789 -0.675 Q 1.789 -0.672 1.787 -0.662 L 1.767 -0.594 Q 1.762 -0.577 1.745 -0.577 L 1.551 -0.577 L 1.551 -0.413 L 1.718 -0.413 Q 1.736 -0.413 1.738 -0.404 Q 1.739 -0.4 1.739 -0.392 L 1.739 -0.325 Q 1.739 -0.307 1.73 -0.305 Q 1.726 -0.304 1.718 -0.304 L 1.551 -0.304 L 1.551 -0.109 L 1.761 -0.109 Q 1.779 -0.109 1.781 -0.1 Q 1.782 -0.096 1.782 -0.088 L 1.782 -0.021 Q 1.782 -0.007 1.779 -0.003 Q 1.775 0 1.761 0 L 1.435 0 Q 1.421 0 1.418 -0.003 Q 1.414 -0.007 1.414 -0.021 L 1.414 -0.665 Q 1.414 -0.679 1.418 -0.683 Q 1.421 -0.686 1.435 -0.686 L 1.769 -0.686 Q 1.789 -0.686 1.789 -0.675 Z" transform="matrix(135, 0, 0, -135, 0, 427)" style="fill: rgb(0, 76, 147); text-wrap-mode: nowrap;"/>
</g>
<path d="M 412.843 305.231 C 412.843 305.586 412.754 305.942 412.665 306.297 L 399.716 363.4 C 399.45 364.466 398.828 364.999 397.764 364.999 L 389.87 364.999 C 389.161 364.999 388.717 364.91 388.451 364.733 C 388.185 364.556 388.007 364.111 387.919 363.4 L 382.154 333.117 C 381 327.344 380.29 322.371 380.024 318.108 C 379.759 321.038 379.316 323.704 378.872 326.279 C 378.694 327.167 378.428 328.499 378.162 330.186 C 377.896 330.63 377.719 331.696 377.541 333.205 L 370.711 363.4 C 370.535 364.199 370.357 364.644 370.179 364.733 C 370.002 364.91 369.557 364.999 368.76 364.999 L 360.777 364.999 C 359.98 364.999 359.536 364.91 359.358 364.733 C 359.181 364.644 359.004 364.199 358.827 363.4 L 347.118 306.03 C 347.03 305.764 346.941 305.409 346.941 305.143 C 346.941 304.52 347.473 304.166 348.537 303.899 L 356.342 302.389 L 357.318 302.3 C 357.939 302.3 358.294 302.833 358.471 303.899 L 363.794 333.383 C 364.414 336.936 365.035 341.997 365.655 348.57 C 365.655 348.481 365.922 346.882 366.454 343.597 C 366.632 342.263 367.075 339.6 367.784 335.604 L 374.792 304.698 C 374.968 303.899 375.146 303.455 375.324 303.366 C 375.59 303.188 376.034 303.1 376.831 303.1 L 383.928 303.1 C 384.726 303.1 385.169 303.188 385.347 303.366 C 385.524 303.455 385.701 303.899 385.878 304.698 L 391.911 332.673 C 392.709 336.313 393.33 340.399 393.95 344.839 L 394.482 349.014 C 395.103 342.531 395.813 337.024 396.611 332.673 L 401.755 303.899 C 401.934 302.833 402.289 302.3 402.909 302.3 C 402.998 302.3 403.352 302.389 403.883 302.477 L 411.335 304.077 C 412.31 304.343 412.843 304.698 412.843 305.231 Z M 432.179 363.312 C 432.179 364.29 431.647 364.822 430.67 364.822 L 422.333 364.822 C 421.358 364.822 420.914 364.29 420.914 363.312 L 420.914 329.209 L 420.914 322.637 C 420.914 321.661 421.446 321.128 422.512 321.128 L 430.67 320.95 C 431.647 320.95 432.179 321.483 432.179 322.46 L 432.179 363.312 Z M 496.735 321.395 C 496.735 321.395 496.646 321.661 496.469 322.282 L 484.229 363.223 C 483.963 364.023 483.431 364.466 482.544 364.466 L 475.182 364.466 C 474.561 364.466 474.118 364.378 474.029 364.29 C 473.851 364.111 473.674 363.667 473.585 363.046 L 469.417 340.577 C 469.328 340.133 469.15 338.623 468.795 336.047 L 468.44 332.762 L 468.175 330.63 C 467.909 332.673 467.376 335.959 466.578 340.577 L 461.345 363.134 C 461.079 364.023 460.546 364.466 459.749 364.466 L 452.475 364.466 C 451.677 364.466 451.144 364.023 450.878 363.134 L 440.147 322.282 C 440.058 321.837 439.969 321.483 439.969 321.305 C 439.969 320.862 440.412 320.506 441.299 320.417 L 449.105 319.262 C 449.193 319.174 449.371 319.174 449.814 319.174 C 450.346 319.174 450.701 319.618 450.878 320.417 L 455.047 340.844 C 455.49 343.063 456.111 347.77 456.91 354.785 C 457.442 348.659 457.973 344.396 458.507 341.997 L 462.942 321.216 C 463.119 320.327 463.652 319.885 464.537 319.885 L 472.52 319.885 C 473.407 319.885 473.939 320.327 474.118 321.216 L 478.108 341.198 C 478.73 344.306 479.262 348.836 479.883 354.785 C 480.681 347.238 481.302 342.354 481.834 340.044 L 486.357 320.417 C 486.534 319.618 486.889 319.174 487.332 319.174 C 487.776 319.174 488.043 319.174 488.132 319.262 L 495.405 320.417 C 496.291 320.506 496.735 320.862 496.735 321.395 Z" style="fill: rgb(0, 76, 147); text-wrap-mode: nowrap;"/>
<ellipse style="fill: rgb(0, 76, 147);" cx="426.691" cy="309.51" rx="5.704" ry="5.711"/>
<path d="M 515.046 363.294 C 515.046 364.269 514.514 364.803 513.539 364.803 L 505.201 364.803 C 504.226 364.803 503.782 364.269 503.782 363.294 L 503.782 329.191 L 503.782 322.619 C 503.782 321.642 504.314 321.109 505.378 321.109 L 513.539 320.932 C 514.514 320.932 515.046 321.464 515.046 322.442 L 515.046 363.294 Z" style="fill: rgb(0, 76, 147); text-wrap-mode: nowrap;"/>
<ellipse style="fill: rgb(0, 76, 147);" cx="509.338" cy="309.501" rx="5.704" ry="5.711"/>
</svg>

Before

Width:  |  Height:  |  Size: 6.1 KiB

1704
bootstrap-icons.css vendored Normal file

File diff suppressed because it is too large Load Diff

261
clean.scss Normal file
View File

@@ -0,0 +1,261 @@
/*-- scss:defaults --*/
// Custom colours and variables
$jet: #131516;
$accent: #107895;
$accent2: #9a2515;
// $accent2: #e64173;
$right-arrow: "\2192"; // Unicode character for right arrow
// fonts
/*
Note: This theme uses the Roboto font family, which it imports from Google
Fonts to ensure consistent weighting in addition to availability. While
you can use a local installation of Roboto, this is generally not
recommended since the weighting will likely be wrong (probably too
light). OTOH, importing from Google Fonts can cause some issues in
certain secure environments due the external CDN (see:
https://github.com/grantmcdermott/quarto-revealjs-clean/issues/7). If
that's the case for you, simply comment out the `@import url(...)` line
below and it will default for the default Sans Serif font on your system
(e.g., Helvetica on a Mac). Circling back to the earlier point about
preserving consistent font weights, you may also wish to remove "Roboto"
from the choice set if the family is installed locally.
*/
@import url(https://fonts.googleapis.com/css?family=Roboto:200,200i,300,300i,350,350i,400,400i);
$font-family-sans-serif: "Roboto", sans-serif !default;
$presentation-heading-font: "Roboto", sans-serif !default;
$presentation-heading-color: $jet !default;
$presentation-heading-font-weight: lighter;
//$presentation-heading-line-height: 2;
//$presentation-block-margin: 28px;
$presentation-font-size-root: 32px;
// colors
//$body-bg: #f0f1eb !default;
$body-color: $jet !default;
$link-color: $accent !default;
$selection-bg: #26351c !default;
/*-- scss:rules --*/
.reveal a {
line-height: 1.5em;
}
.reveal p {
// font-weight: 300;
font-weight: lighter;
margin-top: 1.25em;
}
// title and headings
#title-slide {
text-align: left;
.title {
color: $body-color;
font-size: 1.4em;
// font-weight: 350;
font-weight: lighter;
}
.subtitle {
color: $accent;
font-style: italic;
margin-top: 0em;
font-weight: lighter;
}
.institute,
.quarto-title-affiliation,
.quarto-title-author-email {
font-style: italic;
// font-size: 80%;
// color: #7F7F7F;
}
.author,
.quarto-title-author-name {
color: $body-color;
}
.quarto-title-authors {
display: flex;
justify-content: left;
.quarto-title-author {
padding-left: 0em;
padding-right: 0em;
width: 100%;
}
}
}
.reveal h2 {
// font-weight: 350;
font-weight: lighter;
font-size: 1.4em;
}
.reveal h3 {
color: $accent;
font-style: italic;
// font-weight: 350;
font-weight: lighter;
font-size: 0.95em;
}
.reveal h4 {
color: $accent2;
// font-weight: 350;
font-weight: normal;
margin-top: 1.25em;
}
// alerts etc.
.alert {
color: $accent2;
}
.fg {
color: var(--col, $jet);
}
.bg {
background-color: var(--col, #fff);
padding: 0.1em;
border-radius: 5px;
display: inline-block;
}
// lists
// Unordered lists
.reveal ul {
// font-weight: 300;
font-weight: lighter;
padding-left: 16px;
li::marker {
color: mix($accent, white, 70%);
}
}
.reveal ul ul {
list-style: none;
li:before {
content: $right-arrow;
color: mix($accent, white, 60%);
display: inline-block;
width: 1em;
margin-left: -1em;
margin-right: 0.5em;
}
}
// Ordered lists
.reveal ol {
// font-weight: 300;
font-weight: lighter;
padding-left: 16px;
li::marker {
color: $accent;
}
}
// Move "hamburger" menu button to top right
.reveal .slide-menu-button {
position: fixed;
top: 6px;
right: 0;
display: flex;
justify-content: flex-end;
align-items: flex-start;
pointer-events: none;
}
.reveal .slide-menu-button > * {
pointer-events: auto;
}
// Same for chalkboard buttons (with an offset)
.reveal .slide-chalkboard-buttons {
position: fixed;
top: 12px;
right: 24px;
display: flex;
justify-content: flex-end;
align-items: flex-start;
pointer-events: none;
}
.reveal .slide-chalkboard-buttons > * {
pointer-events: auto;
}
// Beamer-style button link environment
.button {
display: inline-block;
padding: 6px 12px;
margin-bottom: 0;
font-size: 14px;
font-weight: 400;
line-height: 1.42857143;
text-align: center;
white-space: nowrap;
vertical-align: middle;
cursor: pointer;
background-color: $accent;
border: 1px solid $accent;
color: #fff !important;
text-decoration: none;
border-radius: 4px;
transition: all 0.2s ease-in-out;
}
.button:hover {
background-color: #0056b3;
border-color: #0056b3;
}
.button::before {
content: "";
margin-right: 5px;
}
// Special catch for etable environment to ensure these table images
// don't overflow the slide.
// See: https://lrberge.github.io/fixest/articles/etable_new_features.html
.etable {
width: 100%;
height: calc(100% - 3em); /* Adjust 3em based on the height of your header, if necessary */
display: flex;
align-items: center;
justify-content: center;
}
.etable img {
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;
object-fit: contain;
}

1
custom.html Normal file
View File

@@ -0,0 +1 @@
<script src="custom.js"></script>

View File

@@ -220,15 +220,6 @@
color: #777777 !important;
}
// Alternatively center the slide numbers
// .slide-number,
// .reveal.has-logo .slide-number {
// bottom: 10px !important;
// left: 50% !important;
// top: unset !important;
// color: #777777 !important;
// }
.sup-zero-width {
display: inline-block;
vertical-align: super;

BIN
hemf_logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

30005
index.html

File diff suppressed because one or more lines are too long

1250
index.qmd

File diff suppressed because it is too large Load Diff

View File

@@ -10,13 +10,26 @@ $brand-grey: #F1F1F1;
/*-- scss:defaults --*/
// icons
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.8.1/font/bootstrap-icons.css");
// @import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.8.1/font/bootstrap-icons.css");
@import "./bootstrap-icons.css";
// fonts
@import url('https://fonts.googleapis.com/css2?family=Roboto');
@import url(https://fonts.googleapis.com/css?family=Roboto+Condensed);
@import url(https://fonts.googleapis.com/css?family=Source+Code+Pro);
@import url('https://fonts.googleapis.com/css2?family=Patrick+Hand&display=swap');
// Comment from BerriJ:
// I had problems with rendering when 'embed-resources: true' (important for
// offline use), so I had to use local copies of the fonts.
// @import url(https://fonts.googleapis.com/css?family=Source+Code+Pro);
// @import url('https://fonts.googleapis.com/css2?family=Patrick+Hand&display=swap');
// @import url('https://fonts.googleapis.com/css2?family=Roboto');
// @import url(https://fonts.googleapis.com/css?family=Roboto+Condensed);
@import "./Roboto.css";
@import "./Roboto+Condensed.css";
@import "./Source+Code+Pro.css";
@import "./Patrick+Hand.css";
;
$roboto: 'Roboto', Arial, sans-serif;
$roboto-cond: 'Roboto Condensed', Arial, sans-serif;