zhangjie 1 an în urmă
părinte
comite
f85973a034
2 a modificat fișierele cu 6 adăugiri și 4 ștergeri
  1. 2 0
      src/features/mark/CommonMarkBody.vue
  2. 4 4
      src/utils/utils.ts

+ 2 - 0
src/features/mark/CommonMarkBody.vue

@@ -226,6 +226,8 @@ async function processSliceConfig() {
     const { x, y, w, h } = sliceConfig;
     x < 0 && (sliceConfig.x = 0);
     y < 0 && (sliceConfig.y = 0);
+    w > 1 && (sliceConfig.w = 1);
+    h > 1 && (sliceConfig.h = 1);
     if (sliceConfig.w === 0 && sliceConfig.h === 0) {
       // 选择整图时,w/h 为0
       sliceConfig.w = image.naturalWidth;

+ 4 - 4
src/utils/utils.ts

@@ -73,7 +73,7 @@ export async function getDataUrlForSliceConfig(
   const blob: Blob = await new Promise((res) => {
     canvas.toBlob((b) => res(b));
   });
-  const dataurl = URL.createObjectURL(new Blob([blob]));
+  const dataurl = URL.createObjectURL(blob);
 
   cacheFIFO();
 
@@ -143,7 +143,7 @@ export async function getDataUrlForSplitConfig(
   const blob: Blob = await new Promise((res) => {
     canvas.toBlob((b) => res(b));
   });
-  const dataurl = URL.createObjectURL(new Blob([blob]));
+  const dataurl = URL.createObjectURL(blob);
   cacheFIFO();
 
   objectUrlMap.set(key, dataurl);
@@ -154,7 +154,7 @@ export async function getDataUrlForCoverConfig(
   image: HTMLImageElement,
   configs: PictureSlice[]
 ) {
-  const key = `${image.src}`;
+  const key = `${image.src}-slice`;
   if (objectUrlMap.get(key)) {
     return objectUrlMap.get(key);
   }
@@ -176,7 +176,7 @@ export async function getDataUrlForCoverConfig(
   const blob: Blob = await new Promise((res) => {
     canvas.toBlob((b) => res(b));
   });
-  const dataurl = URL.createObjectURL(new Blob([blob]));
+  const dataurl = URL.createObjectURL(blob);
   cacheFIFO();
   objectUrlMap.set(key, dataurl);
   return dataurl;