wip
This commit is contained in:
parent
ddc8072103
commit
cb8fc9d4e3
|
@ -46,7 +46,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, useTemplateRef, watch, onMounted, onUnmounted, reactive } from 'vue';
|
import { ref, useTemplateRef, watch, onMounted, onUnmounted, reactive, nextTick } from 'vue';
|
||||||
import { v4 as uuid } from 'uuid';
|
import { v4 as uuid } from 'uuid';
|
||||||
import type { ImageEffectorLayer } from '@/utility/image-effector/ImageEffector.js';
|
import type { ImageEffectorLayer } from '@/utility/image-effector/ImageEffector.js';
|
||||||
import { i18n } from '@/i18n.js';
|
import { i18n } from '@/i18n.js';
|
||||||
|
@ -122,6 +122,8 @@ onMounted(async () => {
|
||||||
|
|
||||||
const closeWaiting = os.waiting();
|
const closeWaiting = os.waiting();
|
||||||
|
|
||||||
|
await nextTick(); // waitingがレンダリングされるまで待つ
|
||||||
|
|
||||||
imageBitmap = await window.createImageBitmap(props.image);
|
imageBitmap = await window.createImageBitmap(props.image);
|
||||||
|
|
||||||
const MAX_W = 500;
|
const MAX_W = 500;
|
||||||
|
@ -161,7 +163,7 @@ onUnmounted(() => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
function save() {
|
async function save() {
|
||||||
if (layers.length === 0 || renderer == null || imageBitmap == null || canvasEl.value == null) {
|
if (layers.length === 0 || renderer == null || imageBitmap == null || canvasEl.value == null) {
|
||||||
cancel();
|
cancel();
|
||||||
return;
|
return;
|
||||||
|
@ -169,6 +171,8 @@ function save() {
|
||||||
|
|
||||||
const closeWaiting = os.waiting();
|
const closeWaiting = os.waiting();
|
||||||
|
|
||||||
|
await nextTick(); // waitingがレンダリングされるまで待つ
|
||||||
|
|
||||||
renderer.changeResolution(imageBitmap.width, imageBitmap.height); // 本番レンダリングのためオリジナル画質に戻す
|
renderer.changeResolution(imageBitmap.width, imageBitmap.height); // 本番レンダリングのためオリジナル画質に戻す
|
||||||
renderer.render(); // toBlobの直前にレンダリングしないと何故か壊れる
|
renderer.render(); // toBlobの直前にレンダリングしないと何故か壊れる
|
||||||
canvasEl.value.toBlob((blob) => {
|
canvasEl.value.toBlob((blob) => {
|
||||||
|
|
|
@ -45,7 +45,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, useTemplateRef, watch, onMounted, onUnmounted, reactive } from 'vue';
|
import { ref, useTemplateRef, watch, onMounted, onUnmounted, reactive, nextTick } from 'vue';
|
||||||
import { v4 as uuid } from 'uuid';
|
import { v4 as uuid } from 'uuid';
|
||||||
import type { WatermarkPreset } from '@/utility/watermark.js';
|
import type { WatermarkPreset } from '@/utility/watermark.js';
|
||||||
import { WatermarkRenderer } from '@/utility/watermark.js';
|
import { WatermarkRenderer } from '@/utility/watermark.js';
|
||||||
|
@ -198,6 +198,8 @@ async function initRenderer() {
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
const closeWaiting = os.waiting();
|
const closeWaiting = os.waiting();
|
||||||
|
|
||||||
|
await nextTick(); // waitingがレンダリングされるまで待つ
|
||||||
|
|
||||||
await sampleImage_3_2_loading;
|
await sampleImage_3_2_loading;
|
||||||
await sampleImage_2_3_loading;
|
await sampleImage_2_3_loading;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue