diff --git a/components/IscnCard.vue b/components/IscnCard.vue index 97a7ae06..eadc4fee 100644 --- a/components/IscnCard.vue +++ b/components/IscnCard.vue @@ -8,7 +8,6 @@
+
@@ -107,7 +118,6 @@ export default class IscnCard extends Vue { static baseWidth = 560 static baseHeight = 280 static baseBorderWidth = 18 - static baseBorderRadius = 24 static baseAnimationDuration = 500 static baseShapeMorphingMagnitude = 4 static baseColorMultiplier = 10 @@ -210,10 +220,6 @@ export default class IscnCard extends Vue { return this.orientation === IscnCardOrientation.portrait } - get borderRadius() { - return IscnCard.baseBorderRadius * this.width / this.svgSizeProps.width - } - get viewBox() { return this.isPortrait ? `0 0 ${IscnCard.baseHeight} ${IscnCard.baseWidth}` @@ -224,12 +230,6 @@ export default class IscnCard extends Vue { return !this.isAnimated && this.isQRCodeRendering } - get rootStyle() { - return { - borderRadius: `${this.borderRadius}px`, - } - } - get rootProps() { return { class: [ @@ -239,7 +239,10 @@ export default class IscnCard extends Vue { 'animate-pulse': this.isShowLoadingIndicator, }, ], - style: this.rootStyle, + style: { + maskSize: 'contain', + maskImage: `url(/images/iscn-card/mask-${this.isPortrait ? 'portrait' : 'landscape'}.png)`, + }, } } @@ -505,8 +508,7 @@ export default class IscnCard extends Vue { // eslint-disable-next-line no-param-reassign s.setup = () => { - const canvas = s.createCanvas(this.width, this.height) - canvas.style('border-radius', `${this.borderRadius}px`) + s.createCanvas(this.width, this.height) if (!this.isAnimated) { s.noLoop() } diff --git a/locales/en.json b/locales/en.json index 46b14a5b..cf0ed1e5 100644 --- a/locales/en.json +++ b/locales/en.json @@ -174,6 +174,10 @@ "iscn.meta.usage.info": "Usage Info", "iscn.meta.version.placeholder": "Version", "iscn.meta.version": "Version", + "IscnCardPage.button.back": "Back", + "IscnCardPage.button.landscape": "Landscape", + "IscnCardPage.button.portrait": "Portrait", + "IscnCardPage.button.print": "Print", "IscnRegisterForm.arweave.link": "ar://{arweaveId}", "IscnRegisterForm.button.back": "Back", "IscnRegisterForm.button.confirm": "Confirm", diff --git a/pages/view/_iscnId/card.vue b/pages/view/_iscnId/card.vue new file mode 100644 index 00000000..d48e4171 --- /dev/null +++ b/pages/view/_iscnId/card.vue @@ -0,0 +1,128 @@ + + + diff --git a/pages/view/_iscnId.vue b/pages/view/_iscnId/index.vue similarity index 96% rename from pages/view/_iscnId.vue rename to pages/view/_iscnId/index.vue index b4489d20..b9eb43d6 100644 --- a/pages/view/_iscnId.vue +++ b/pages/view/_iscnId/index.vue @@ -128,30 +128,37 @@ 'lg:max-w-[280px]', ]" > - - + + + +