redaction polishing #2

Merged
botalex merged 2 commits from dev into main 2025-10-09 07:25:21 +02:00
2 changed files with 126 additions and 109 deletions
Showing only changes of commit 7524eb3fe5 - Show all commits

View file

@ -46,16 +46,17 @@
} }
</script> </script>
<title>{$re?.name ?? "Alex"}'s CV {getFormattedDate()}</title> <div>
<meta content="{$re?.name ?? 'Alex'}'s CV" property="og:title" /> <title>{$re?.name ?? "Alex"}'s CV {getFormattedDate()}</title>
<meta <meta content="{$re?.name ?? 'Alex'}'s CV" property="og:title" />
<meta
content="This CV is made completely with svelte + html + css + js" content="This CV is made completely with svelte + html + css + js"
property="og:description" property="og:description"
/> />
<meta content={preveiwImage} property="og:image" /> <meta content={preveiwImage} property="og:image" />
<meta content="#bdd6ee" data-react-helmet="true" name="theme-color" /> <meta content="#bdd6ee" data-react-helmet="true" name="theme-color" />
<div class="cv-info-container hide-on-print"> <div class="cv-info-container hide-on-print">
<div> <div>
Under here is my CV rev1 for an application made entirely in HTML and CSS. Under here is my CV rev1 for an application made entirely in HTML and CSS.
The page is designed to be saved as PDF. This can be done by pressing <div The page is designed to be saved as PDF. This can be done by pressing <div
@ -71,9 +72,22 @@
I have to sadly recommend chrome for this process. Firefox somehow messes with I have to sadly recommend chrome for this process. Firefox somehow messes with
the quality of the PDF :( the quality of the PDF :(
</div> </div>
</div> </div>
<div class="w-full h-full flex flex-col justify-center overflow-hidden">
<div class=" w-full flex h-[1131.25px] justify-center">
<RepeatedSkills
class="cozette-force text-5xl text-base-300 {$re?.name ? 'hidden' : ''}"
style="transform: translateY(-90rem)"
textOverride={["REDACTED VERSION"]}
targetTextHeight={90}
targetTextWidth={150}
textRowPadding={"1rem"}
/>
</div>
<div class="NotoSans cv-config cv-container-container include-in-print"> <div
class="NotoSans cv-config cv-container-container include-in-print absolute"
>
<div class="cv-container sections decorations"> <div class="cv-container sections decorations">
<div id="left-section" class="bg-grid-cv flex justify-center"> <div id="left-section" class="bg-grid-cv flex justify-center">
<LeftTopDecor /> <LeftTopDecor />
@ -97,7 +111,7 @@
</div> </div>
</div> </div>
<div id="leftSectionSeperator"></div> <div id="leftSectionSeperator"></div>
<div id="right-section" class="text-[var(--right-text-color)]"> <div id="right-section" class="text-[var(--right-text-color)] bg-white">
<AlexWatermark Style="pointer-events: none;" /> <AlexWatermark Style="pointer-events: none;" />
<div id="TopRightSkillsText"> <div id="TopRightSkillsText">
<RepeatedSkills <RepeatedSkills
@ -115,6 +129,8 @@
</div> </div>
</div> </div>
</div> </div>
</div>
</div>
</div> </div>
<style lang="scss"> <style lang="scss">

View file

@ -2,13 +2,14 @@
// Width of num chars and height nom of chars // Width of num chars and height nom of chars
export let targetTextWidth: number; export let targetTextWidth: number;
export let targetTextHeight: number; export let targetTextHeight: number;
export let textRowPadding: string = "";
export let applyRotation: boolean = true; export let applyRotation: boolean = true;
export let textOverride: string[] | undefined = undefined; export let textOverride: string[] | undefined = undefined;
// Assign default value if textOverride is undefined // Assign default value if textOverride is undefined
let repeatingText : string[] = textOverride ?? [ let repeatingText: string[] = textOverride ?? [
"C++", "C++",
"C#", "C#",
"ARDUINO", "ARDUINO",
@ -27,10 +28,7 @@
function GrabRandomString() { function GrabRandomString() {
let outString: string = ""; let outString: string = "";
while (outString.length < targetTextWidth) { while (outString.length < targetTextWidth) {
outString += outString += repeatingText[getRandomInt(repeatingText.length)] + " ";
repeatingText[
getRandomInt(repeatingText.length)
] + " ";
} }
return outString; // At about target size return outString; // At about target size
@ -39,7 +37,10 @@
<div {...$$restProps}> <div {...$$restProps}>
{#each { length: targetTextHeight } as _, i} {#each { length: targetTextHeight } as _, i}
<span class="{applyRotation ? "rotate45" : ""} SkillsText"> <span
class="{applyRotation ? 'rotate45' : ''} SkillsText"
style="padding: {textRowPadding};"
>
{GrabRandomString()} {GrabRandomString()}
</span> </span>
{/each} {/each}