Skip to content

VitePress Image Viewer Plugin: Implementing Seamless Zoom Functionality

Plugin Introduction

vitepress-plugin-image-viewer is a VitePress plugin that adds seamless zoom functionality to all images within your documentation, without requiring any changes to the Markdown content.

Plugin Features

  1. Easy Integration: Enable the plugin in your VitePress project with just a few lines of code.
  2. Zero Configuration: Automatically adds zoom functionality to all images.
  3. User-Friendly: Provides an intuitive zooming experience.

Installation

bash
# npm
npm i vitepress-plugin-image-viewer

# yarn
yarn add vitepress-plugin-image-viewer

# pnpm
pnpm add vitepress-plugin-image-viewer
# Note: When using pnpm, you'll need to install viewerjs separately.
pnpm add viewerjs

Usage

javascript
import DefaultTheme from 'vitepress/theme';
import 'viewerjs/dist/viewer.min.css';
import imageViewer from 'vitepress-plugin-image-viewer';
import vImageViewer from 'vitepress-plugin-image-viewer/lib/vImageViewer.vue';
import { useRoute } from 'vitepress';

export default {
...DefaultTheme,
enhanceApp(ctx) {
DefaultTheme.enhanceApp(ctx);
// Register global component (optional)
ctx.app.component('vImageViewer', vImageViewer);
},
setup() {
const route = useRoute();
// Enable the plugin
imageViewer(route);
}
};

Demo

blackmyth_wukong_wallpaper_035.jpg

The image above demonstrates the effect of vitepress-plugin-image-viewer. Users can click on the image to open the viewer, and then use the mouse or touch gestures to zoom in, zoom out, and pan around the image. The viewer interface is clean, unobtrusive, and provides powerful image viewing capabilities without disrupting the overall reading experience.

Conclusion

vitepress-plugin-image-viewer enhances the user experience of VitePress documentation. With no complex configuration or modifications to existing Markdown files, it provides readers with a superior image browsing experience.