Commit 0834896a by 朱哲铨

添加less

parent 165fd6cb
{
"name": "vue-exectron-express-lowdb",
"name": "JomallProductionAssistant",
"version": "0.1.0",
"lockfileVersion": 1,
"requires": true,
......@@ -9248,6 +9248,13 @@
}
}
},
"image-size": {
"version": "0.5.5",
"resolved": "https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz",
"integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==",
"dev": true,
"optional": true
},
"immediate": {
"version": "3.0.6",
"resolved": "https://registry.npmmirror.com/immediate/-/immediate-3.0.6.tgz",
......@@ -10182,6 +10189,12 @@
"graceful-fs": "^4.1.9"
}
},
"klona": {
"version": "2.0.6",
"resolved": "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz",
"integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==",
"dev": true
},
"latest-version": {
"version": "5.1.0",
"resolved": "https://registry.npmmirror.com/latest-version/-/latest-version-5.1.0.tgz",
......@@ -10239,6 +10252,46 @@
"invert-kv": "^1.0.0"
}
},
"less": {
"version": "3.5.0",
"resolved": "https://registry.npmmirror.com/less/-/less-3.5.0.tgz",
"integrity": "sha512-fLbJGxtoCV2FTDGeXlUXXUZ8sgMej2c5u8om8inOZt5M3tzXqF/aS7W0txWhCN6iA6qPtPGGzj0sp/vd8ztl6Q==",
"dev": true,
"requires": {
"errno": "^0.1.1",
"graceful-fs": "^4.1.2",
"image-size": "~0.5.0",
"mime": "^1.4.1",
"mkdirp": "^0.5.0",
"promise": "^7.1.1",
"request": "^2.83.0",
"source-map": "~0.6.0"
}
},
"less-loader": {
"version": "7.3.0",
"resolved": "https://registry.npmmirror.com/less-loader/-/less-loader-7.3.0.tgz",
"integrity": "sha512-Mi8915g7NMaLlgi77mgTTQvK022xKRQBIVDSyfl3ErTuBhmZBQab0mjeJjNNqGbdR+qrfTleKXqbGI4uEFavxg==",
"dev": true,
"requires": {
"klona": "^2.0.4",
"loader-utils": "^2.0.0",
"schema-utils": "^3.0.0"
},
"dependencies": {
"schema-utils": {
"version": "3.3.0",
"resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz",
"integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"requires": {
"@types/json-schema": "^7.0.8",
"ajv": "^6.12.5",
"ajv-keywords": "^3.5.2"
}
}
}
},
"leven": {
"version": "2.1.0",
"resolved": "https://registry.npmmirror.com/leven/-/leven-2.1.0.tgz",
......
......@@ -58,6 +58,8 @@
"eslint": "^6.7.2",
"eslint-plugin-prettier": "^3.1.1",
"eslint-plugin-vue": "^6.1.2",
"less": "^3.5.0",
"less-loader": "^7.3.0",
"prettier": "^1.19.1",
"pug": "^2.0.4",
"pug-html-loader": "^1.1.5",
......
......@@ -20,14 +20,7 @@ const routes = [
},
component: resolve => require(["../views/design/index.vue"], resolve)
},
{
path: "/design-copy",
name: "design",
meta: {
title: "设计页面"
},
component: resolve => require(["../views/design/copy.vue"], resolve)
},
{
path: "/design-detail",
name: "design",
......@@ -48,7 +41,6 @@ const router = new VueRouter({
routes
});
router.beforeEach((to, from, next) => {
let user = Vue.prototype.$dataStore.get("user");
if (to.path.includes("design-detail")) {
return next();
......@@ -67,7 +59,6 @@ router.beforeEach((to, from, next) => {
} else {
return next("/");
}
}
});
export default router;
<script>
import VueDragResizeRotate from "@minogin/vue-drag-resize-rotate";
export default {
components: {VueDragResizeRotate},
data() {
return {
selectIndex:0,
imgList:[
{
x:0,
url:'https://pic2.zhimg.com/v2-5fb13110e1de13d4c11e6e7f5b8026da_r.jpg',
y:0,
zIndex:1,
h:100,
w:100,
r:0
},
{
x:0,
url:'https://ts1.cn.mm.bing.net/th/id/R-C.987f582c510be58755c4933cda68d525?rik=C0D21hJDYvXosw&riu=http%3a%2f%2fimg.pconline.com.cn%2fimages%2fupload%2fupc%2ftx%2fwallpaper%2f1305%2f16%2fc4%2f20990657_1368686545122.jpg&ehk=netN2qzcCVS4ALUQfDOwxAwFcy41oxC%2b0xTFvOYy5ds%3d&risl=&pid=ImgRaw&r=0',
y:0,
zIndex:2,
h:100,
w:100,
r:0
}
]
}
},
methods:{
resizing(x, y, w, h) {
this.$set(this.imgList[this.selectIndex], 'w', w)
this.$set(this.imgList[this.selectIndex], 'h', h)
this.$set(this.imgList[this.selectIndex], 'x', x)
this.$set(this.imgList[this.selectIndex], 'y', y)
},
onDragDebounce(data,item){
console.log(data,item)
this.imgList[this.selectIndex].x = left
this.imgList[this.selectIndex].y = top
},
},
mounted() {
}
}
</script>
<template>
<div class="page">
<vue-drag-resize-rotate
:w="item.w"
class-name="my-drag-resize-rotate"
:prevent-deactivation="true"
:h="item.h"
:parent="true"
:x="item.x"
:z="item.zIndex"
:isActive="index===selectIndex"
:aspectRatio="true"
:active="index===selectIndex"
:y="item.y"
v-for="(item,index) in imgList"
:key="index"
:draggable="true"
:resizable="true"
:rotatable="true"
@dragstop="(a)=>onDragDebounce(a,item)"
@resizing="resizing"
:angle="item.r"
>
<div ref="sucaitu-img" @click="selectItem(index)"
:class="{'active': index === selectIndex}"
class="sucaitu-img img element">
<img :src="item.url" alt="" class="sucaitu-img">
<i v-if="index===selectIndex" class=" close el-icon-close"></i>
<div v-if="index===selectIndex" class="control-point control-rotator"></div>
</div>
</vue-drag-resize-rotate>
</div>
</template>
<style scoped>
.sucaitu-img{
width: 100%;
height: 100%;
}
.sucaitu-img img{
width: 100%;
height: 100%;
}
.page {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}
</style>
\ No newline at end of file
......@@ -570,119 +570,206 @@ export default {
</template>
<style scoped>
::v-deep .el-dialog__body {
box-sizing: border-box;
flex: 1;
flex-shrink: 0;
overflow: hidden;
}
::v-deep .el-dialog {
display: flex;
height: calc(100% - 50px);
margin-top: 50px;
flex-direction: column;
<style lang="less" scoped>
::v-deep {
.el-dialog__body {
box-sizing: border-box;
flex: 1;
flex-shrink: 0;
overflow: hidden;
}
.el-dialog {
display: flex;
height: calc(100% - 50px);
margin-top: 50px;
flex-direction: column;
}
.el-carousel__container {
height: 100%;
}
.el-form-item__label {
font-weight: bold;
color: white;
}
.el-dialog__title {
font-weight: bold;
font-size: 37px;
color: black;
position: relative;
left: 47%;
top: 13px;
}
}
.sure-btn {
position: absolute;
right: 62px;
top: 14px;
}
.detail-div {
display: flex;
height: 100%;
flex-direction: column;
justify-content: space-between;
.detail-images {
.scroll-list {
background: #ececec;
display: flex;
height: 100px;
width: 100%;
padding: 5px;
.scroll-content {
margin-left: 10px;
overflow-x: auto;
overflow-y: hidden;
flex: 1;
display: flex;
flex-wrap: nowrap;
flex-shrink: 0;
.scroll-item {
height: 100%;
min-width: 100px;
background: white;
width: 80px;
margin-right: 5px;
}
}
.img-title {
display: flex;
flex-direction: column;
justify-content: center;
background: white;
padding: 10px;
b {
text-align: center;
color: black;
font-weight: bold;
font-size: 16px;
margin-bottom: 15px;
}
.id {
display: flex;
align-items: center;
padding: 3px 5px;
background: #ececec;
justify-content: center;
img {
width: 15px;
margin-right: 8px;
}
}
}
}
}
.detail-content {
display: flex;
width: 100%;
flex: 1;
margin-bottom: 10px;
flex-shrink: 0;
justify-content: space-between;
}
.right {
width: 710px;
height: 100%;
display: flex;
flex-direction: column;
.btn {
margin: 20px 0;
display: flex;
align-items: center;
justify-content: space-between;
height: 50px;
width: 100%;
}
.div-text {
.div-content {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
padding: 15px 10px;
box-sizing: border-box;
position: relative;
border: 1px solid #ececec;
.div-item {
width: 50%;
margin-bottom: 10px;
font-size: 15px;
display: flex;
align-items: center;
p {
font-weight: 400;
color: black;
}
span {
display: inline-block;
text-align: right;
width: 100px;
&::after {
content: ':';
margin: 0 3px;
}
}
}
}
b {
position: relative;
background: white;
top: 9px;
left: 13px;
padding: 0 10px;
font-size: 18px;
color: black;
z-index: 3;
}
}
.input {
display: flex;
align-items: center;
margin: 30px 0;
}
}
.left {
flex: 1;
flex-shrink: 0;
margin-right: 20px;
overflow: hidden;
display: flex;
justify-content: center;
align-items: center;
.left-image {
display: flex;
height: 100%;
flex-direction: column;
justify-content: center;
img {
height: auto;
width: 100%;
max-height: 90%;
}
b {
color: black;
font-size: 18px;
margin-bottom: 15px;
}
}
.left-images {
display: flex;
width: 95%;
height: 100%;
flex-direction: column;
b {
color: black;
text-align: center;
margin-bottom: 15px;
}
}
}
}
.detail-div .detail-images .scroll-list {
background: #ececec;
display: flex;
height: 100px;
width: 100%;
padding: 5px;
}
.detail-div .detail-images .scroll-list .scroll-content {
margin-left: 10px;
overflow-x: auto;
overflow-y: hidden;
flex: 1;
display: flex;
flex-wrap: nowrap;
flex-shrink: 0;
}
.detail-div .detail-images .scroll-list .scroll-content .scroll-item {
height: 100%;
min-width: 100px;
background: white;
width: 80px;
margin-right: 5px;
}
.detail-div .detail-images .scroll-list .img-title {
display: flex;
flex-direction: column;
justify-content: center;
background: white;
padding: 10px;
}
.detail-div .detail-images .scroll-list .img-title b {
text-align: center;
color: black;
font-weight: bold;
font-size: 16px;
margin-bottom: 15px;
}
.detail-div .detail-images .scroll-list .img-title .id {
display: flex;
align-items: center;
padding: 3px 5px;
background: #ececec;
justify-content: center;
}
.detail-div .detail-images .scroll-list .img-title .id img {
width: 15px;
margin-right: 8px;
}
.detail-div .detail-content {
display: flex;
width: 100%;
flex: 1;
margin-bottom: 10px;
flex-shrink: 0;
justify-content: space-between;
}
.detail-div .right {
width: 710px;
height: 100%;
display: flex;
flex-direction: column;
}
.detail-div .right .btn {
margin: 20px 0;
display: flex;
align-items: center;
justify-content: space-between;
height: 50px;
width: 100%;
}
.detail-div .right .btn .btn-sure, .detail-div .right .btn .btn-down {
width: 100%;
position: relative;
}
.detail-div .right .btn .btn-sure .check, .detail-div .right .btn .btn-down .check {
position: absolute;
width: 144px;
......@@ -694,149 +781,34 @@ export default {
right: 0;
top: 1px;
}
.detail-div .right .div-text .div-content {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
padding: 15px 10px;
box-sizing: border-box;
}
.detail-div .right .div-text .div-content .div-item {
width: 50%;
margin-bottom: 10px;
font-size: 15px;
display: flex;
align-items: center;
}
.detail-div .right .div-text .div-content .div-item p {
font-weight: 400;
color: black;
}
.detail-div .right .div-text .div-content .div-item span {
display: inline-block;
text-align: right;
width: 100px;
}
.detail-div .right .div-text .div-content .div-item span::after {
content: ':';
margin: 0 3px;
}
.detail-div .right .div-text b {
position: relative;
background: white;
top: 9px;
left: 13px;
padding: 0 10px;
font-size: 18px;
color: black;
z-index: 3;
}
.detail-div .right .div-text .div-content {
position: relative;
border: 1px solid #ececec;
}
.detail-div .right .input {
display: flex;
align-items: center;
margin: 30px 0;
}
.detail-div .left {
flex: 1;
flex-shrink: 0;
margin-right: 20px;
overflow: hidden;
display: flex;
justify-content: center;
align-items: center;
}
.detail-div .left .left-image {
display: flex;
height: 100%;
flex-direction: column;
justify-content: center;
}
.detail-div .left .left-image img {
height: auto;
width: 100%;
max-height: 90%;
}
.detail-div .left .left-image b {
color: black;
font-size: 18px;
margin-bottom: 15px;
}
.detail-div .left .left-images {
display: flex;
width: 95%;
height: 100%;
flex-direction: column;
}
.detail-div .left .left-images b {
color: black;
text-align: center;
margin-bottom: 15px;
}
::v-deep .el-carousel__container {
height: 100%;
}
::v-deep .el-form-item__label {
font-weight: bold;
color: white;
}
::v-deep .el-dialog__title {
font-weight: bold;
font-size: 37px;
color: black;
position: relative;
left: 47%;
top: 13px;
}
.btn {
position: relative;
.check {
::v-deep {
.el-checkbox__inner {
background-color: transparent !important;
border-color: white !important;
width: 12px;
height: 12px;
&::after {
left: 3px;
}
}
.el-checkbox__label {
padding-left: 5px;
font-size: 12px;
color: white !important;
}
}
}
}
.btn .check ::v-deep .el-checkbox__inner {
background-color: transparent !important;
border-color: white !important;
width: 12px;
height: 12px;
}
.btn .check ::v-deep .el-checkbox__inner::after {
left: 3px;
}
.btn .check ::v-deep .el-checkbox__label {
padding-left: 5px;
font-size: 12px;
color: white !important;
}
.page{
.page {
width: 100%;
height: 100%;
}
p{
margin: 0 ;
p {
margin: 0;
}
</style>
......@@ -177,18 +177,14 @@ export default {
}
if (this.productionNo === "") return this.$message.warning("请录入生产单号");
try {
//查找生产单号信息传给第二个显示器
const findByPodProductionNo = await this.$api.post("/findByPodProductionNo", {
podProductionNo: this.productionNo,
status: "IN_PRODUCTION"
});
this.detail = findByPodProductionNo.data;
ipcRenderer.send("win-subScreen", findByPodProductionNo.data);
} catch (err) {
this.productionNo = "";
this.$refs.searchRef.focus();
}
try {
// 根据生产单号查找 素材图片 下载到本地 然后返回本地地址去显示
let res = await this.$api.post("/getPodProductionInfo", { productionNo: this.productionNo });
if (res.data.length === 0) return this.$message.warning("未找到素材图!");
let arr = [];
......@@ -199,38 +195,22 @@ export default {
arr.push({
...it,
...{
designId:el.designId
designId: el.designId
}
});
});
}
});
console.log(arr,'arr');
res.data = arr.filter(el=>el.type!==1);
// for (let i = 0; i < res.data.length; i++) {
// this.$api.post("/getPngImg", { fileName: res.data[i].fileName }, {
// headers: {
// "responseType": "blob"
// }
// }).then(r => {
//
// res.data[i].file = new File([r], res.data[i].fileName, { type: "image/png" });
// if (i === res.data.length - 1) {
// this.imgList = res.data;
//
// }
// });
// }
console.log(arr, "arr");
res.data = arr.filter(el => el.type !== 1);
bus.$emit("busEmit", { type: "sendFile", value: res.data });
this.productionNo = "";
this.$refs.searchRef.focus();
} catch (err) {
bus.$emit("busEmit", { type: "sendFile", value: [] });
this.productionNo = "";
this.$refs.searchRef.focus();
}
},
changeActionIndex(t) {
let index = this.actionIndex;
......@@ -436,7 +416,7 @@ export default {
<el-dropdown @command="dropdownCommand">
<b style="cursor:pointer;">{{ user.employeeName }}</b>
<el-dropdown-menu slot="dropdown">
<!-- <el-dropdown-item command="clear">清除缓存</el-dropdown-item>-->
<!-- <el-dropdown-item command="clear">清除缓存</el-dropdown-item>-->
<el-dropdown-item command="company">切换系统</el-dropdown-item>
<el-dropdown-item command="logout">退出登录</el-dropdown-item>
</el-dropdown-menu>
......@@ -448,42 +428,42 @@ export default {
</div>
</template>
<style scoped>
<style lang="less" scoped>
.right-user {
display: flex;
align-items: center;
b {
margin: 0 10px;
display: inline-block;
color: black;
font-size: 15px;
font-weight: bold;
}
p {
margin: 0 10px;
font-weight: bold;
display: inline-block;
font-size: 15px;
color: #e6a23c;
}
}
.right-user b {
margin: 0 10px;
display: inline-block;
color: black;
font-size: 15px;
font-weight: bold;
}
.right-user p {
margin: 0 10px;
font-weight: bold;
display: inline-block;
font-size: 15px;
color: #e6a23c;
}
.setting-form .el-form {
padding: 10px;
box-sizing: border-box;
}
.form-block:nth-last-of-type(1) {
border-bottom: 1px solid #ececec;
.setting-form {
.el-form {
padding: 10px;
box-sizing: border-box;
}
}
.form-block {
padding: 15px 0;
border-top: 1px solid #ececec;
&:nth-last-of-type(1) {
border-bottom: 1px solid #ececec;
}
}
.block-item {
......@@ -493,11 +473,9 @@ export default {
font-size: 14px;
padding: 10px 10px;
}
.block-item:hover {
background-color: #ececec;
&:hover {
background-color: #ececec;
}
}
.center-input {
......@@ -508,7 +486,6 @@ export default {
flex-shrink: 0;
overflow: hidden;
padding-left: 100px;
}
.sure-btn {
......@@ -517,11 +494,15 @@ export default {
display: flex;
align-items: center;
justify-content: center;
}
.sure-btn ::v-deep .el-button span {
position: relative;
left: -40px;
::v-deep {
.el-button {
span {
position: relative;
left: -40px;
}
}
}
}
.check {
......@@ -533,4 +514,5 @@ export default {
z-index: 2;
color: white;
}
</style>
\ No newline at end of file
......@@ -30,7 +30,6 @@ export default {
{
label: "仅黑色油墨"
}
],
detailShow: false,
showPopover: false,
......@@ -80,7 +79,7 @@ export default {
},
mounted() {
this.$dataStore.set("default-print-setting", this.printSetting);
this.getPrintSettingList(()=>{
this.getPrintSettingList(() => {
let select = this.$dataStore.get("print-setting-select");
console.log(this.$dataStore, "select");
if (select) {
......@@ -104,11 +103,10 @@ export default {
);
}
});
},
computed: {
inkNum() {
return 200 + (Number(this.printSetting.byHighlight) * 50) - 50;
return 200 + Number(this.printSetting.byHighlight) * 50 - 50;
},
defaultTime() {
if ([6, 7].includes(Number(this.printSetting.byHighlight))) {
......@@ -127,21 +125,17 @@ export default {
},
created() {
this.getPrinter();
},
methods: {
delSetting() {
this.$confirm(
`确定删除该预设?`,
"提示",
{
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}
).then(() => {
this.$dataStore.delete(this.printSettingList[this.printSettingVal].label + "-print-setting");
this.$confirm(`确定删除该预设?`, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.$dataStore.delete(
this.printSettingList[this.printSettingVal].label + "-print-setting"
);
this.getPrintSettingList();
this.printSettingVal = 0;
});
......@@ -162,7 +156,9 @@ export default {
printSettingChange(v) {
let label = this.printSettingList[v].label;
this.$dataStore.set("print-setting-select", label);
this.printSetting = JSON.parse(JSON.stringify(this.printSettingList[v].value));
this.printSetting = JSON.parse(
JSON.stringify(this.printSettingList[v].value)
);
},
saveSetting() {
if (this.settingName.trim() === "") {
......@@ -171,7 +167,10 @@ export default {
if (this.printSettingList.find(el => el.label === this.settingName)) {
return this.$message.warning("预设名称不能重复");
}
this.$dataStore.set(`${this.settingName}-print-setting`, this.printSetting);
this.$dataStore.set(
`${this.settingName}-print-setting`,
this.printSetting
);
this.showPopover = false;
this.printSettingVal = this.printSettingList.length;
this.getPrintSettingList();
......@@ -193,7 +192,10 @@ export default {
str = "000" + str;
}
} else {
str = str.toString().replace(".", "").replace("-", "");
str = str
.toString()
.replace(".", "")
.replace("-", "");
if (str.length >= 4) {
str = str.slice(0, 5);
} else if (str.length === 3) {
......@@ -228,9 +230,8 @@ export default {
},
moreImageCmd(arr) {
var canvas1 = document.createElement("canvas");
let _canvas = document.getElementsByClassName("sucaitu")[0];//目标块
let _canvas = document.getElementsByClassName("sucaitu")[0]; //目标块
var bodyW = parseInt(window.getComputedStyle(_canvas).width);
var bodyH = parseInt(window.getComputedStyle(_canvas).height);
canvas1.width = bodyW;
......@@ -249,7 +250,6 @@ export default {
useCORS: true,
allowTaint: true
}).then(async function(canvas) {
let dataURL = canvas.toDataURL("image/png");
let pageBlob = that.dataURLtoBlob(dataURL);
let params = new FormData();
......@@ -263,14 +263,17 @@ export default {
});
let w_mm = Number((canvas1.width * 0.84183).toFixed(1));
let h_mm = Number((canvas1.height * 0.84183).toFixed(1));
let size = `${that.singleStr(Number(w_mm).toFixed(1))}${that.singleStr(Number(h_mm).toFixed(1))}`;
let size = `${that.singleStr(Number(w_mm).toFixed(1))}${that.singleStr(
Number(h_mm).toFixed(1)
)}`;
await that.sendCmd(data.fileName, size, "00000000", 0);
//canvas转换成url,然后利用a标签的download属性,直接下载,绕过上传服务器再下载
// document.querySelector(".down").setAttribute('href', canvas.toDataURL());
});
},
async getPrintCmd() {
if (this.imgList.length === 0) return this.$message.warning("素材不能为空");
if (this.imgList.length === 0)
return this.$message.warning("素材不能为空");
console.log(this.imgList[0]);
if (this.imgList.length > 1) {
let dom = document.getElementsByClassName("drr");
......@@ -285,8 +288,8 @@ export default {
return;
}
let { x, y, r, w, h } = this.imgList[0];
y = (Number(y) - Number(h) / 2);
x = (Number(x) - Number(w) / 2);
y = Number(y) - Number(h) / 2;
x = Number(x) - Number(w) / 2;
let x_mm = Number((x * 0.84183).toFixed(1));
let w_mm = Number((w * 0.84183).toFixed(1));
let h_mm = Number((h * 0.84183).toFixed(1));
......@@ -298,13 +301,18 @@ export default {
let position = ""; // 位置
let size = ""; // 图像大小
if (Number(x_mm) < 0 || Number(y_mm) < 0) {
position = `"${this.singleStr(Number(x_mm).toFixed(1))},${this.singleStr(Number(y_mm).toFixed(1))}"`;
position = `"${this.singleStr(
Number(x_mm).toFixed(1)
)},${this.singleStr(Number(y_mm).toFixed(1))}"`;
} else {
position = `${this.singleStr(x_mm.toFixed(1))}${this.singleStr(y_mm.toFixed(1))}`;
position = `${this.singleStr(x_mm.toFixed(1))}${this.singleStr(
y_mm.toFixed(1)
)}`;
}
size = `${this.singleStr(Number(w_mm).toFixed(1))}${this.singleStr(Number(h_mm).toFixed(1))}`;
size = `${this.singleStr(Number(w_mm).toFixed(1))}${this.singleStr(
Number(h_mm).toFixed(1)
)}`;
const bigNum = "0031131"; // 图像放大倍数 -R
......@@ -312,8 +320,18 @@ export default {
},
async sendCmd(imgFileName, size, position, r) {
const whitePrint = [1, 2].includes(this.printSetting.byInk) ? 1 : 0; // 白色打印
let cmd = `GTXproCMD.exe print -X "${`Profile\\${imgFileName.replace(".png", "")}.xml`}" -I "${"Input\\" + imgFileName}" -A "Output\\${imgFileName.replace(".png", "")}.arxp" -S ${size} -L ${position} -D ${r} -W ${whitePrint}`;
let print_cmd = `GTXproCMD.exe send -A "Output\\${imgFileName.replace(".png", "")}.arxp" -P "${this.printer}`;
let cmd = `GTXproCMD.exe print -X "${`Profile\\${imgFileName.replace(
".png",
""
)}.xml`}" -I "${"Input\\" +
imgFileName}" -A "Output\\${imgFileName.replace(
".png",
""
)}.arxp" -S ${size} -L ${position} -D ${r} -W ${whitePrint}`;
let print_cmd = `GTXproCMD.exe send -A "Output\\${imgFileName.replace(
".png",
""
)}.arxp" -P "${this.printer}`;
let data = {
...this.printSetting,
...{
......@@ -346,39 +364,87 @@ export default {
<template>
<div class="print-div">
<el-form label-width="170px" label-position="left" size="mini" :model="printSetting">
<el-form
label-width="170px"
label-position="left"
size="mini"
:model="printSetting"
>
<el-form-item label-width="55px" label="打印机">
<div class="flex-row">
<el-select v-model="printer" clearable>
<el-option v-for="(it,i) in printerList" :key="i" :label="it.name" :value="it.name"></el-option>
<el-option
v-for="(it, i) in printerList"
:key="i"
:label="it.name"
:value="it.name"
></el-option>
</el-select>
<el-button title="刷新" @click="getPrinter" style="margin-left: 10px" icon="el-icon-refresh"></el-button>
<el-button
title="刷新"
@click="getPrinter"
style="margin-left: 10px"
icon="el-icon-refresh"
></el-button>
</div>
</el-form-item>
<el-form-item label-width="50px" label="预设">
<div class="flex-row">
<el-select @change="printSettingChange" filterable v-model="printSettingVal" clearable>
<el-option v-for="(it,i) in printSettingList" :key="i" :value="i" :label="it.label"></el-option>
<el-select
@change="printSettingChange"
filterable
v-model="printSettingVal"
clearable
>
<el-option
v-for="(it, i) in printSettingList"
:key="i"
:value="i"
:label="it.label"
></el-option>
</el-select>
<div style="margin-left: 15px;display: flex" class="save-btn">
<el-popover
placement="bottom"
width="200"
v-model="showPopover"
trigger="manual">
<el-button style="margin-right: 10px" @click="openPopover" slot="reference" type="primary">保存预设
trigger="manual"
>
<el-button
style="margin-right: 10px"
@click="openPopover"
slot="reference"
type="primary"
>保存预设
</el-button>
<div class="save-setting">
<el-input size="large" maxlength="10" v-model="settingName" placeholder="预设名称:"></el-input>
<el-input
size="large"
maxlength="10"
v-model="settingName"
placeholder="预设名称:"
></el-input>
<div class="save-footer">
<el-button size="medium" @click="showPopover=false">取消</el-button>
<el-button @click="saveSetting" :disabled="settingName===''" size="medium" type="primary">保存
<el-button size="medium" @click="showPopover = false"
>取消</el-button
>
<el-button
@click="saveSetting"
:disabled="settingName === ''"
size="medium"
type="primary"
>保存
</el-button>
</div>
</div>
</el-popover>
<el-button :disabled="printSettingVal===0" @click="delSetting" type="danger">删除</el-button>
<el-button
:disabled="printSettingVal === 0"
@click="delSetting"
type="danger"
>删除</el-button
>
</div>
</div>
</el-form-item>
......@@ -392,7 +458,12 @@ export default {
</template>
<el-form-item label="油墨选择">
<el-select v-model="printSetting.byInk" clearable>
<el-option :label="it.label" :value="i" :key="i" v-for="(it,i) in printInkList"></el-option>
<el-option
:label="it.label"
:value="i"
:key="i"
v-for="(it, i) in printInkList"
></el-option>
</el-select>
</el-form-item>
</el-tooltip>
......@@ -400,7 +471,7 @@ export default {
<template slot="content">
<div v-html="fieldDescription['bEcoMode'] || ''"></div>
</template>
<el-form-item v-if="printSetting.byInk===2" label="模式">
<el-form-item v-if="printSetting.byInk === 2" label="模式">
<el-select v-model="printSetting.bEcoMode" clearable>
<el-option label="通常" :value="false"></el-option>
<el-option label="白色油墨削减" :value="true"></el-option>
......@@ -412,9 +483,8 @@ export default {
<template slot="content">
<div v-html="fieldDescription['bMaterialBlack'] || ''"></div>
</template>
<div v-if="printSetting.byInk===2">
<el-form-item
label="利用底材的黑色">
<div v-if="printSetting.byInk === 2">
<el-form-item label="利用底材的黑色">
<el-switch v-model="printSetting.bMaterialBlack"></el-switch>
</el-form-item>
</div>
......@@ -424,18 +494,17 @@ export default {
<template slot="content">
<div v-html="fieldDescription['bMultiple'] || ''"></div>
</template>
<div v-if="printSetting.byInk!==1"
>
<el-form-item
label="彩色的复合路径打印">
<div v-if="printSetting.byInk !== 1">
<el-form-item label="彩色的复合路径打印">
<el-switch v-model="printSetting.bMultiple"></el-switch>
</el-form-item>
</div>
</el-tooltip>
</div>
<div class="left-block-item" v-if="[0,3].includes(printSetting.byInk)">
<div
class="left-block-item"
v-if="[0, 3].includes(printSetting.byInk)"
>
<b class="setting-title">彩色油墨设置</b>
<el-tooltip placement="left" popper-class="my-popper">
<template slot="content">
......@@ -444,7 +513,12 @@ export default {
<div>
<el-form-item label="油墨量">
<div class="flex-row">
<el-slider :step="1" :min="1" :max="10" v-model="printSetting.byInkVolume"></el-slider>
<el-slider
:step="1"
:min="1"
:max="10"
v-model="printSetting.byInkVolume"
></el-slider>
<span>{{ printSetting.byInkVolume }}</span>
</div>
</el-form-item>
......@@ -457,15 +531,22 @@ export default {
<div>
<el-form-item label="2次打印">
<div class="flex-row">
<el-slider :step="1" :min="0" :max="3" v-model="printSetting.byDoublePrint"></el-slider>
<el-slider
:step="1"
:min="0"
:max="3"
v-model="printSetting.byDoublePrint"
></el-slider>
<span>{{ printSetting.byDoublePrint }}</span>
</div>
</el-form-item>
</div>
</el-tooltip>
</div>
<div class="left-block-item" v-if="[1,2].includes(printSetting.byInk)">
<div
class="left-block-item"
v-if="[1, 2].includes(printSetting.byInk)"
>
<b class="setting-title">白色油墨设置</b>
<el-tooltip placement="left" popper-class="my-popper">
<template slot="content">
......@@ -474,7 +555,12 @@ export default {
<div>
<el-form-item label="高光">
<div class="flex-row">
<el-slider :step="1" :min="1" :max="9" v-model="printSetting.byHighlight"></el-slider>
<el-slider
:step="1"
:min="1"
:max="9"
v-model="printSetting.byHighlight"
></el-slider>
<span>{{ printSetting.byHighlight }}</span>
</div>
</el-form-item>
......@@ -487,7 +573,12 @@ export default {
<div>
<el-form-item label="遮光">
<div class="flex-row">
<el-slider :step="1" :min="1" :max="5" v-model="printSetting.byMask"></el-slider>
<el-slider
:step="1"
:min="1"
:max="5"
v-model="printSetting.byMask"
></el-slider>
<span>{{ printSetting.byMask }}</span>
</div>
</el-form-item>
......@@ -499,8 +590,7 @@ export default {
<div v-html="fieldDescription['bFastMode'] || ''"></div>
</template>
<div v-if="[2].includes(printSetting.byInk)">
<el-form-item
label="白色高速打印">
<el-form-item label="白色高速打印">
<el-switch v-model="printSetting.bFastMode"></el-switch>
</el-form-item>
</div>
......@@ -510,8 +600,7 @@ export default {
<div v-html="fieldDescription['bDivide'] || ''"></div>
</template>
<div>
<el-form-item
label="白色分次打印">
<el-form-item label="白色分次打印">
<el-switch v-model="printSetting.bDivide"></el-switch>
</el-form-item>
</div>
......@@ -520,10 +609,8 @@ export default {
<template slot="content">
<div v-html="fieldDescription['bPause'] || ''"></div>
</template>
<div v-if="[2].includes(printSetting.byInk)"
>
<el-form-item
label="白色/彩色个别打印">
<div v-if="[2].includes(printSetting.byInk)">
<el-form-item label="白色/彩色个别打印">
<el-switch v-model="printSetting.bPause"></el-switch>
</el-form-item>
</div>
......@@ -542,12 +629,15 @@ export default {
<template slot="content">
<div v-html="fieldDescription['byChoke'] || ''"></div>
</template>
<div v-if="[2].includes(printSetting.byInk)"
>
<el-form-item
label="白色油墨的削减范围">
<div v-if="[2].includes(printSetting.byInk)">
<el-form-item label="白色油墨的削减范围">
<div class="flex-row">
<el-slider :step="1" :min="0" :max="10" v-model="printSetting.byChoke"></el-slider>
<el-slider
:step="1"
:min="0"
:max="10"
v-model="printSetting.byChoke"
></el-slider>
<span>{{ printSetting.byChoke }}</span>
</div>
</el-form-item>
......@@ -557,25 +647,26 @@ export default {
<template slot="content">
<div v-html="fieldDescription['byMinWhite'] || ''"></div>
</template>
<div v-if="[2].includes(printSetting.byInk)"
>
<el-form-item
label="最小白色油墨量">
<div v-if="[2].includes(printSetting.byInk)">
<el-form-item label="最小白色油墨量">
<div class="flex-column">
<el-select v-model="printSetting.minWhiteInkType">
<el-option label="通常" :value="0"></el-option>
<el-option label="特殊" :value="1"></el-option>
</el-select>
<div class="slider flex-row">
<el-slider :step="1" :min="1" :max="printSetting.minWhiteInkType===1?6:3"
v-model="printSetting.byMinWhite"></el-slider>
<el-slider
:step="1"
:min="1"
:max="printSetting.minWhiteInkType === 1 ? 6 : 3"
v-model="printSetting.byMinWhite"
></el-slider>
<span>{{ printSetting.byMinWhite }}</span>
</div>
</div>
</el-form-item>
</div>
</el-tooltip>
</div>
<div v-show="detailShow" class="left-block-item">
<b class="setting-title">画质设置</b>
......@@ -586,7 +677,12 @@ export default {
<div>
<el-form-item label="饱和度">
<div class="flex-row">
<el-slider :step="1" :min="0" :max="40" v-model="printSetting.bySaturation"></el-slider>
<el-slider
:step="1"
:min="0"
:max="40"
v-model="printSetting.bySaturation"
></el-slider>
<span>{{ printSetting.bySaturation }}</span>
</div>
</el-form-item>
......@@ -599,7 +695,12 @@ export default {
<div>
<el-form-item label="亮度">
<div class="flex-row">
<el-slider :step="1" :min="0" :max="40" v-model="printSetting.byBrightness"></el-slider>
<el-slider
:step="1"
:min="0"
:max="40"
v-model="printSetting.byBrightness"
></el-slider>
<span>{{ printSetting.byBrightness }}</span>
</div>
</el-form-item>
......@@ -612,7 +713,12 @@ export default {
<div>
<el-form-item label="对比度">
<div class="flex-row">
<el-slider :step="1" :min="0" :max="40" v-model="printSetting.byContrast"></el-slider>
<el-slider
:step="1"
:min="0"
:max="40"
v-model="printSetting.byContrast"
></el-slider>
<span>{{ printSetting.byContrast }}</span>
</div>
</el-form-item>
......@@ -623,27 +729,31 @@ export default {
<template slot="content">
<div v-html="fieldDescription['bUniPrint'] || ''"></div>
</template>
<div v-if="[1].includes(printSetting.byInk)"
>
<el-form-item
label="单向打印">
<div v-if="[1].includes(printSetting.byInk)">
<el-form-item label="单向打印">
<el-switch v-model="printSetting.bUniPrint"></el-switch>
</el-form-item>
</div>
</el-tooltip>
</div>
<div v-if="detailShow && ![1].includes(printSetting.byInk)" class="left-block-item">
<div
v-if="detailShow && ![1].includes(printSetting.byInk)"
class="left-block-item"
>
<b class="setting-title">彩色平衡</b>
<el-tooltip placement="left" popper-class="my-popper">
<template slot="content">
<div v-html="fieldDescription['iCyanBalance'] || ''"></div>
</template>
<div v-if=" ![3].includes(printSetting.byInk)"
>
<div v-if="![3].includes(printSetting.byInk)">
<el-form-item label="青色">
<div class="flex-row">
<el-slider :step="1" :min="-5" :max="5" v-model="printSetting.iCyanBalance"></el-slider>
<el-slider
:step="1"
:min="-5"
:max="5"
v-model="printSetting.iCyanBalance"
></el-slider>
<span>{{ printSetting.iCyanBalance }}</span>
</div>
</el-form-item>
......@@ -653,11 +763,15 @@ export default {
<template slot="content">
<div v-html="fieldDescription['iMagentaBalance'] || ''"></div>
</template>
<div v-if=" ![3].includes(printSetting.byInk)"
>
<div v-if="![3].includes(printSetting.byInk)">
<el-form-item label="红色">
<div class="flex-row">
<el-slider :step="1" :min="-5" :max="5" v-model="printSetting.iMagentaBalance"></el-slider>
<el-slider
:step="1"
:min="-5"
:max="5"
v-model="printSetting.iMagentaBalance"
></el-slider>
<span>{{ printSetting.iMagentaBalance }}</span>
</div>
</el-form-item>
......@@ -667,11 +781,15 @@ export default {
<template slot="content">
<div v-html="fieldDescription['iYellowBalance'] || ''"></div>
</template>
<div v-if=" ![3].includes(printSetting.byInk)"
>
<div v-if="![3].includes(printSetting.byInk)">
<el-form-item label="黄色">
<div class="flex-row">
<el-slider :step="1" :min="-5" :max="5" v-model="printSetting.iYellowBalance"></el-slider>
<el-slider
:step="1"
:min="-5"
:max="5"
v-model="printSetting.iYellowBalance"
></el-slider>
<span>{{ printSetting.iYellowBalance }}</span>
</div>
</el-form-item>
......@@ -684,7 +802,12 @@ export default {
<div>
<el-form-item label="黑色">
<div class="flex-row">
<el-slider :step="1" :min="-5" :max="5" v-model="printSetting.iBlackBalance"></el-slider>
<el-slider
:step="1"
:min="-5"
:max="5"
v-model="printSetting.iBlackBalance"
></el-slider>
<span>{{ printSetting.iBlackBalance }}</span>
</div>
</el-form-item>
......@@ -695,20 +818,16 @@ export default {
<div v-html="fieldDescription['bUniPrint'] || ''"></div>
</template>
<div>
<el-form-item
label="单向打印">
<el-form-item label="单向打印">
<el-switch v-model="printSetting.bUniPrint"></el-switch>
</el-form-item>
</div>
</el-tooltip>
</div>
<el-button size="small" @click="setDetailShow">{{
detailShow ? "关闭详细设置" : "打开详细设置"
}}...
<el-button size="small" @click="setDetailShow"
>{{ detailShow ? "关闭详细设置" : "打开详细设置" }}...
</el-button>
</div>
</div>
</el-form>
<div class="bottom-info flex-row">
......@@ -731,42 +850,42 @@ export default {
<b>{{ inkNum }}%</b>
</div>
</el-tooltip>
</div>
<div class="btn">
<el-input size="small" style="width: 100px;" oninput="value=value.replace(/[^\-?\d]/g,'')"
v-model="printSetting.printNum"></el-input>
<el-input
size="small"
style="width: 100px;"
oninput="value=value.replace(/[^\-?\d]/g,'')"
v-model="printSetting.printNum"
></el-input>
<span></span>
</div>
</div>
<el-button @click="getPrintCmd" type="primary" style="width: 100%;height: 50px">打印</el-button>
<el-button
@click="getPrintCmd"
type="primary"
style="width: 100%;height: 50px"
>打印</el-button
>
</div>
</template>
<style scoped>
<style lang="less" scoped>
.flex-row {
display: flex;
align-items: center;
}
.flex-row {
display: flex;
align-items: center;
span {
margin-left: 10px;
}
.el-slider {
flex: 1;
flex-shrink: 0;
margin: 0 10px;
}
}
.flex-row span {
margin-left: 10px;
}
.flex-row .el-slider {
flex: 1;
flex-shrink: 0;
margin: 0 10px;
}
.el-form {
height: 84%;
display: flex;
......@@ -774,51 +893,45 @@ export default {
padding-top: 15px;
border-top: 1px solid #ececec;
}
.detail-setting {
border-top: 2px solid transparent;
display: flex;
background-color: #ececec;
align-items: flex-start;
flex: 1;
flex-shrink: 0;
overflow: auto;
}
.left-block-item .setting-title {
font-weight: bold;
font-size: 20px;
color: #409EFF;
position: relative;
margin-bottom: 30px;
margin-top: 30px;
display: inline-block;
left: -15px;
.left-block-item {
.setting-title {
font-weight: bold;
font-size: 20px;
color: #409eff;
position: relative;
margin-bottom: 30px;
margin-top: 30px;
display: inline-block;
left: -15px;
}
}
.setting-right {
box-sizing: border-box;
padding: 20px;
width: 50%;
height: 100%;
color: #333;
}
.setting-left {
width: 100%;
box-sizing: border-box;
padding: 15px 30px;
background-color: white;
}
.fixed-top {
position: absolute;
word-break: break-all;
max-width: 44%;
}
.bottom-info {
padding: 15px 0;
margin-top: 20px;
......@@ -826,30 +939,25 @@ export default {
justify-content: space-between;
border-top: 1px solid #ececec;
}
.info {
width: 62%;
display: flex;
justify-content: space-between;
}
.info-item span {
margin-right: 5px;
.info-item {
span {
margin-right: 5px;
}
}
.save-setting {
display: flex;
flex-direction: column;
}
.save-footer {
display: flex;
justify-content: space-between;
margin-top: 15px;
}
.print-div {
background: #ececec;
border-left: 1px solid gray;
......@@ -868,4 +976,4 @@ export default {
.my-popper {
background: rgba(0, 0, 0, 0.5) !important;
}
</style>
\ No newline at end of file
</style>
......@@ -249,46 +249,54 @@ export default {
</template>
<style scoped>
<style lang="less" scoped>
.img-form {
padding: 10px;
}
::v-deep .el-drawer__header {
border-bottom: 1px solid #ececec;
padding-bottom: 10px;
margin-bottom: 20px;
::v-deep {
.el-drawer__header {
border-bottom: 1px solid #ececec;
padding-bottom: 10px;
margin-bottom: 20px;
}
}
.form-content {
display: flex;
align-items: center;
}
.set-value {
height: 100%;
margin-left: 6px;
}
.set-value i {
width: 20px;
height: 12px;
display: block;
text-align: center;
line-height: 12px;
cursor: pointer;
border: 1px solid transparent;
}
.set-value i:hover {
border-color: #ececec;
i {
width: 20px;
height: 12px;
display: block;
text-align: center;
line-height: 12px;
cursor: pointer;
border: 1px solid transparent;
&:hover {
border-color: #ececec;
}
}
}
.drawer .title {
padding-bottom: 10px;
border-bottom: 1px solid #ececec;
.drawer {
width: 300px;
bottom: 0;
top: 50px;
padding: 10px;
z-index: 99;
background: white;
box-shadow: 0 8px 10px -5px rgba(0, 0, 0, .2), 0 16px 24px 2px rgba(0, 0, 0, .14), 0 6px 30px 5px rgba(0, 0, 0, .12);
left: 0;
position: fixed;
border-right: 1px solid #ececec;
height: calc(100vh - 50px);
//animation: ltr-drawer-in .3s 1ms;
.title {
padding-bottom: 10px;
border-bottom: 1px solid #ececec;
}
}
@keyframes ltr-drawer-in {
......@@ -318,18 +326,4 @@ export default {
}
}
.drawer {
width: 300px;
bottom: 0;
top: 50px;
padding: 10px;
z-index: 99;
background: white;
box-shadow: 0 8px 10px -5px rgba(0, 0, 0, .2), 0 16px 24px 2px rgba(0, 0, 0, .14), 0 6px 30px 5px rgba(0, 0, 0, .12);
left: 0;
position: fixed;
border-right: 1px solid #ececec;
height: calc(100vh - 50px);
//animation: ltr-drawer-in .3s 1ms;
}
</style>
\ No newline at end of file
......@@ -672,64 +672,57 @@ export default {
</div>
</template>
<style scoped>
<style lang="less" scoped>
.page-main {
flex: 1;
flex-shrink: 0;
overflow: hidden;
box-sizing: border-box;
}
.main-bg {
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
#line {
position: absolute;
z-index: 2;
}
.grid {
border: 1px solid gray;
overflow: hidden;
.grid-row {
.grid-col {
display: inline-block;
border: 1px solid gray;
border-right: none;
border-bottom: none;
}
}
}
.grid-row {
width: 100%;
overflow: hidden;
height: 10px;
line-height: 10px;
white-space: nowrap;
&:nth-of-type(1) {
.grid-col {
border-top: none !important;
}
}
&:nth-last-of-type(1) {
.grid-col {
border-bottom: none !important;
}
}
.grid-col {
&:nth-of-type(1) {
border-left: none !important;
}
}
}
.grid-row:nth-of-type(1) .grid-col {
border-top: none !important;
}
.grid-row:nth-last-of-type(1) .grid-col {
border-bottom: none !important;;
}
.grid-row .grid-col:nth-of-type(1) {
border-left: none !important;
}
.grid .grid-row .grid-col {
display: inline-block;
border: 1px solid gray;
border-right: none;
border-bottom: none;
}
#img {
position: absolute;
z-index: 1;
......@@ -739,8 +732,12 @@ export default {
align-items: center;
justify-content: center;
width: auto;
img {
pointer-events: none;
width: auto;
height: 100%;
}
}
.container {
display: flex;
width: 100%;
......@@ -749,7 +746,6 @@ export default {
align-items: center;
position: relative;
}
.sucaitu {
position: absolute;
z-index: 0;
......@@ -758,92 +754,58 @@ export default {
//justify-content: center;
//align-items: center;
height: 100%;
}
.sucaitu img {
width: 100%;
height: 100%;
img {
width: 100%;
height: 100%;
}
.close {
position: absolute;
top: -11px;
right: -12px;
color: white;
z-index: 1000;
width: 20px;
cursor: pointer;
height: 20px;
background: red;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}
.img {
height: fit-content;
width: 100%;
height: 100%;
cursor: move;
border: 1px dashed transparent;
}
}
.select-img {
border-color: #409eff;
width: 120px;
z-index: 5;
overflow: auto;
background-color: gray;
height: calc(100% - 72px);
padding: 10px;
position: fixed;
box-sizing: border-box;
left: 0;
bottom: 0;
border-right: 1px solid #ececec;
}
.sucaitu .close {
position: absolute;
top: -11px;
right: -12px;
color: white;
z-index: 1000;
width: 20px;
cursor: pointer;
height: 20px;
background: red;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
}
.sucaitu .img {
height: fit-content;
width: 100%;
height: 100%;
cursor: move;
border: 1px dashed transparent;
}
#img img {
pointer-events: none;
width: auto;
height: 100%;
}
img {
-webkit-user-drag: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
img {
-webkit-user-drag: none;
-moz-user-drag: none;
-ms-user-drag: none;
user-drag: none;
}
::v-deep .active, .active {
border-color: #66b1ff !important;
}
.select-img-index {
box-sizing: border-box;
border-color: #409EFF !important;
border-color: #409eff !important;
}
.img-item span {
margin: 5px 0;
color: white;
}
.img-item {
padding: 5px;
display: flex;
......@@ -853,25 +815,15 @@ img {
flex-direction: column;
align-items: center;
justify-content: center;
span {
margin: 5px 0;
color: white;
}
}
.select-img {
width: 120px;
z-index: 5;
overflow: auto;
background-color: gray;
height: calc(100% - 72px);
padding: 10px;
position: fixed;
box-sizing: border-box;
left: 0;
bottom: 0;
border-right: 1px solid #ececec;
}
.sucaitu-img {
position: relative;
}
</style>
<style>
.el-upload {
......
......@@ -238,7 +238,7 @@ export default {
</div>
</template>
<style scoped>
<style lang="less" scoped>
.check {
display: flex;
justify-content: flex-end;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment