svelte-zoom
v1.0.16
Published
Nearly native image scaling in web (mobile/desktop), rich in functionality. This will make your mobile users happy
Downloads
1,038
Maintainers
Readme
svelte-zoom
Nearly native image scaling (:iphone:/:computer:), rich in functionality. It is extremely easy to use. it's built by comparing scaling features existing in 'Gallery' apps for smartphones. It doesn't seem slow, but it doesn't seem ridiculously fast either, to be honest, I didn't measure performance. This will also boost your mobile app and website user experience.
Note
The image must take up the entire width and height of the page
Features
Mobile
- Pinch
- Pan
- Touch move
Desktop
- Mouse wheel
- Mouse move
General
- Maximum scaling value calculated automatically
- The image is limited by its aspect ratio
- It is lightweight
- It feels "native"
Installation
via NPM
npm i svelte-zoom
Usage
<Zoom src="URL" alt="..." />
Manual zooming
If for some reason you want to zoom in by calling the function manually. You can use the zoomIn
and zoomOut
functions. It will scale in the center of the image.
<script>
import Zoom from 'svelte-zoom'
let zoom;
</script>
<Zoom src="..." alt="..." bind:this={zoom} />
<button on:click={() => zoom.zoomIn()}>Zoom in</button>
<button on:click={() => zoom.zoomOut()}>Zoom out</button>