fix draw and add new design
continuous-integration/drone/push Build is passing Details

This commit is contained in:
Владимир Фёдоров 2023-07-01 20:16:47 +07:00
parent d41b2c4c06
commit 573237fe1f
6 changed files with 52 additions and 13 deletions

View File

@ -27,11 +27,17 @@ const savePng = async () => {
<template> <template>
<div class="container"> <div class="container">
<Sidebar> <Sidebar>
<Input v-model="hMargin">Отступ для горизонтальных линий, мм</Input> <div class="l-sidebar-block">
<Input v-model="vMargin">Отступ для вертикальных линии, мм</Input> <h1>Линии</h1>
<Input v-model="imageWidth">Высота изображения, мм</Input> <Input v-model="vMargin">Отступ по горизонтали, мм</Input>
<Input v-model="imageHeight">Ширина изображения, мм</Input> <Input v-model="hMargin">Отступ по вертикали, мм</Input>
<button @click="savePng">Сохранить png</button> </div>
<div class="l-sidebar-block">
<h1>Изображение</h1>
<Input v-model="imageHeight">Высота, мм</Input>
<Input v-model="imageWidth">Ширина, мм</Input>
<button class="l-button" @click="savePng">Сохранить как png</button>
</div>
</Sidebar> </Sidebar>
<Page> <Page>
<Canvas :vMargin="vMargin" :hMargin="hMargin" :imageWidth="imageWidth" :imageHeight="imageHeight" /> <Canvas :vMargin="vMargin" :hMargin="hMargin" :imageWidth="imageWidth" :imageHeight="imageHeight" />
@ -53,9 +59,37 @@ html {
align-items: center; align-items: center;
height: 100vh; height: 100vh;
width: 100vw; width: 100vw;
font-family: MPLUS1p, sans-serif;
} }
body { body {
background-color: aqua; background-color: aqua;
} }
.l-button {
color: #22333B;
background-color: #EAE0D5;
border: 1px solid #5E503F;
border-radius: 10px;
margin: 5px;
padding: 10px;
}
@font-face {
font-family: 'MPLUS1p';
font-style: normal;
src: local('MPLUS1p'), url(/fonts/ttf/MPLUS1p-Light.ttf) format('truetype');
}
h1 {
color: #C6AC8F;
}
.l-sidebar-block {
border: 1px solid #C6AC8F;
border-radius: 10px;
margin: 0 0 30px 0;
padding: 20px;
background-color: white;
}
</style> </style>

View File

@ -16,6 +16,7 @@ const clearCanvas = () => {
if (ctx.value) { if (ctx.value) {
ctx.value.clearRect(0, 0, imageWidth * ONE_MM, imageHeight * ONE_MM); ctx.value.clearRect(0, 0, imageWidth * ONE_MM, imageHeight * ONE_MM);
ctx.value.beginPath();
} }
}; };

View File

@ -4,10 +4,11 @@ const modelValue = defineModel();
<template> <template>
<div class="input"> <div class="input">
<label> <label class="l-label">
<slot></slot> <slot></slot>
</label> </label>
<input type="number" v-model="modelValue" /> <br>
<input class="l-input" type="number" v-model="modelValue" />
</div> </div>
</template> </template>
@ -20,4 +21,11 @@ const modelValue = defineModel();
input { input {
border: #333 1px solid; border: #333 1px solid;
} }
.l-input {
margin: 10px 0;
border: 1px solid #C6AC8F;
padding: 10px;
border-radius: 10px;
}
</style> </style>

View File

@ -9,14 +9,10 @@
position: fixed; position: fixed;
top: 0; top: 0;
left: 0; left: 0;
width: 330px;
background-color: white;
margin: 10px; margin: 10px;
padding: 10px; padding: 10px;
z-index: 2; z-index: 2;
border-radius: 10px;
border: 1px solid #333;
} }
</style> </style>

View File

@ -1,8 +1,8 @@
/** 1 миллиметр в пикселях */ /** 1 миллиметр в пикселях */
export const ONE_MM = 12; export const ONE_MM = 12;
export const DEFAULT_IMAGE_WIDTH = 210; export const DEFAULT_IMAGE_WIDTH = 100;
export const DEFAULT_IMAGE_HEIGHT = 297; export const DEFAULT_IMAGE_HEIGHT = 100;
export const DEFAULT_VERTICAL_MARGIN = 10; export const DEFAULT_VERTICAL_MARGIN = 10;
export const DEFAULT_HORIZONTAL_MARGIN = 10; export const DEFAULT_HORIZONTAL_MARGIN = 10;

Binary file not shown.