Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

mupdf

Package Overview
Dependencies
Maintainers
0
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mupdf

MuPDF.js

  • 1.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2.3K
increased by20.41%
Maintainers
0
Weekly downloads
 
Created
Source

MuPDF.js

Welcome to official MuPDF.js library from Artifex - the maintainers of MuPDF.

This is a build of MuPDF for JavaScript and TypeScript, using the speed and performance of WebAssembly.

The MuPDF.js library can be used both in browsers and in Node.js.

Features

  • Render PDF pages to images
  • Extract text and images from PDF
  • Edit PDF documents
  • Search PDF file text contents
  • Create and edit PDF annotations
  • Access and fill out PDF forms
  • Supports basic CJK (Chinese, Japanese, Korean) fonts

Installing

From the command line, go to the folder you want to work from and run:

npm install mupdf

The mupdf module is only available as an ESM module. Either use the .mjs file extension or change the project type:

npm pkg set type=module

Running

The following example script demonstrates how to load a document and then print out the page count.

Create a file count-pages.mjs:

import * as process from "node:process"
import * as fs from "node:fs"
import * as mupdfjs from "mupdf/mupdfjs"

if (process.argv.length < 3) {
    console.error("usage: node count-pages.mjs file.pdf");
    process.exit(1);
}

const filename = process.argv[2];
const doc = mupdfjs.PDFDocument.openDocument(fs.readFileSync(filename), "application/pdf");
const count = doc.countPages();

console.log(`${filename} has ${count} pages.`);

Run the script:

node count-pages.mjs file.pdf

Using Typescript

To use TypeScript you need to create a tsconfig.json project file to tell the compiler and Visual Studio Code to use the "nodenext" module resolution:

{
    "compilerOptions": {
        "module": "nodenext"
    }
}

MuPDF.js is available under Open Source AGPL and commercial license agreements. If you determine you cannot meet the requirements of the AGPL, please contact Artifex for more information regarding a commercial license.

Documentation

For documentation please refer to mupdfjs.readthedocs.io.

Code Examples

Check out the example projects to help you get started. The examples include a simple PDF Viewer that runs MuPDF in the browser, several command line scripts, and more!

Getting Started with Local Development

You can build the MuPDF.js library from source by referring to BUILDING.md.

Contributing

To contribute please open up (or help answer!) an Issue on our Github board and create a Pull Request (PR) for review. Find us on Discord at #mupdf-js to chat with us directly.

Keywords

FAQs

Package last updated on 11 Nov 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc