diff --git a/src/app.html b/src/app.html index 72867e8..e98265f 100644 --- a/src/app.html +++ b/src/app.html @@ -6,7 +6,7 @@ diff --git a/src/lib/components/Reader/MangaPage.svelte b/src/lib/components/Reader/MangaPage.svelte index 9e6b690..87583d7 100644 --- a/src/lib/components/Reader/MangaPage.svelte +++ b/src/lib/components/Reader/MangaPage.svelte @@ -35,10 +35,17 @@
+ + diff --git a/src/lib/components/Reader/TextBoxes.svelte b/src/lib/components/Reader/TextBoxes.svelte index 351ae56..9549d58 100644 --- a/src/lib/components/Reader/TextBoxes.svelte +++ b/src/lib/components/Reader/TextBoxes.svelte @@ -9,15 +9,20 @@ $: textBoxes = page.blocks .map((block) => { - const { img_height, img_width } = page; + const { img_height: imgh, img_width: imgw } = page; + const img_height = (window.innerWidth * imgh) / imgw; + const img_width = window.innerWidth; const { box, font_size, lines, vertical } = block; - let [_xmin, _ymin, _xmax, _ymax] = box; + const resizeFactor = window.innerWidth / imgw; - const xmin = clamp(_xmin, 0, img_width); - const ymin = clamp(_ymin, 0, img_height); - const xmax = clamp(_xmax, 0, img_width); - const ymax = clamp(_ymax, 0, img_height); + let [_xmin, _ymin, _xmax, _ymax] = box; + console.log(box); + + const xmin = clamp(_xmin * resizeFactor, 0, img_width); + const ymin = clamp(_ymin * resizeFactor, 0, img_height); + const xmax = clamp(_xmax * resizeFactor, 0, img_width); + const ymax = clamp(_ymax * resizeFactor, 0, img_height); const width = xmax - xmin; const height = ymax - ymin; diff --git a/src/lib/components/ReaderV2/ReaderV2.svelte b/src/lib/components/ReaderV2/ReaderV2.svelte new file mode 100644 index 0000000..a9794ea --- /dev/null +++ b/src/lib/components/ReaderV2/ReaderV2.svelte @@ -0,0 +1,26 @@ + + +
+ {#each files as file, i} + + {/each} +
+ + diff --git a/src/lib/components/Settings/Reader/ReaderSelects.svelte b/src/lib/components/Settings/Reader/ReaderSelects.svelte index 5d3f8cb..0e32b12 100644 --- a/src/lib/components/Settings/Reader/ReaderSelects.svelte +++ b/src/lib/components/Settings/Reader/ReaderSelects.svelte @@ -5,6 +5,12 @@ $: zoomModeValue = $settings.zoomDefault; $: fontSizeValue = $settings.fontSize; + $: readerValue = $settings.reader || 'classic'; + + let readers = [ + { value: 'classic', name: 'Classic' }, + { value: 'v2', name: 'V2' } + ]; let zoomModes = [ { value: 'zoomFitToScreen', name: 'Fit to screen' }, @@ -40,6 +46,11 @@ } +
+ + diff --git a/src/routes/[manga]/[volume]/+page.svelte b/src/routes/[manga]/[volume]/+page.svelte index bc81ef9..bec55b9 100644 --- a/src/routes/[manga]/[volume]/+page.svelte +++ b/src/routes/[manga]/[volume]/+page.svelte @@ -4,6 +4,7 @@ import Timer from '$lib/components/Reader/Timer.svelte'; import { initializeVolume, settings, startCount, volumeSettings, volumes } from '$lib/settings'; import { onMount } from 'svelte'; + import ReaderV2 from '$lib/components/ReaderV2/ReaderV2.svelte'; const volumeId = $page.params.volume; let count: undefined | number = undefined; @@ -26,5 +27,9 @@ {#if $settings.showTimer} {/if} - + {#if $settings.reader === 'classic'} + + {:else} + + {/if} {/if}