Skip to content
This repository has been archived by the owner on Sep 30, 2024. It is now read-only.

PdfJs-Annotator is a proof of concept project that integrates AnnotatorJs (http://annotatorjs.org/) with the PdfJs (https://mozilla.github.io/pdf.js/) library. It uses a simple Spring Boot application and a MySql database containing one table in the backend to persist annotations. MIT License applies (http://opensource.org/licenses/MIT). Note th…

Notifications You must be signed in to change notification settings

mathiasconradt/pdfjs-annotator

Repository files navigation

PdfJs Annotator

PdfJs-Annotator is a proof of concept project that integrates AnnotatorJs (http://annotatorjs.org/) with the PdfJs (https://mozilla.github.io/pdf.js/) library. It uses a simple Spring Boot application and a MySql database containing one table in the backend to persist annotations. MIT License applies (http://opensource.org/licenses/MIT).

Note that this repository is not maintained anymore, as it was just a proof of concept. Reported issues will not be resolved.

Used libaries and frameworks, licenses

Thanks to the authors and contributors of those libraries and frameworks.

Project Setup

Clone the project

git clone [email protected]:mathiasconradt/pdfjs-annotator.git

Create database pdfjs_annotator

Create a MySql database named pdfjs_annotator:

CREATE DATABASE pdfjs_annotator CHARACTER SET utf8 COLLATE utf8_bin;

Create database schema

Create the database schema in the just created pdfjs_annotator database:

SET NAMES utf8; SET FOREIGN_KEY_CHECKS = 0; DROP TABLE IF EXISTS 'annotation'; CREATE TABLE 'annotation' ( 'id' varchar(255) COLLATE utf8_bin NOT NULL, 'annotator_schema_version' varchar(255) COLLATE utf8_bin DEFAULT NULL, 'consumer' varchar(255) COLLATE utf8_bin DEFAULT NULL, 'created' datetime DEFAULT NULL, 'quote' longtext COLLATE utf8_bin, 'end' varchar(255) COLLATE utf8_bin DEFAULT NULL, 'end_offset' int(11) DEFAULT NULL, 'start' varchar(255) COLLATE utf8_bin DEFAULT NULL, 'start_offset' int(11) DEFAULT NULL, 'tags' tinyblob, 'text' longtext COLLATE utf8_bin, 'updated' datetime DEFAULT NULL, 'uri' varchar(2000) COLLATE utf8_bin DEFAULT NULL, 'user' varchar(255) COLLATE utf8_bin DEFAULT NULL, PRIMARY KEY ('id') ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin; SET FOREIGN_KEY_CHECKS = 1;

Adjust database connection (optional)

Database connection properties for the project are defined in /src/main/resources/application.properties.

It assumes username root and password root. Adjust it to your own local MySql server.

Starting the project

Make sure you have Gradle installed. If not, download it from here http://gradle.org, then add the gradle/bin folder to your environment PATH.

You can start the project with: gradle run

The embedded Tomcat starts up (make sure port 8080 isn't in use by anything else). You can then open a web browser and point it to: http://localhost:8080/web/viewer

You should then see a default dummy pdf and you should be able to annotate it by marking a word or sentence with the mouse.

IMAGE

Loading a different pdf

You can load any other pdf by specifying a url parameter file, which would then take the pdf by that name from the folder /src/main/resources/static/web.

Example: http://localhost:8080/web/viewer?file=example.pdf

Questions

For any questions, you can contact me.

E-Mail: [email protected]

Twitter: https://twitter.com/mathiasconradt

Stackoverflow: http://stackoverflow.com/users/241475/mathias-conradt

About

PdfJs-Annotator is a proof of concept project that integrates AnnotatorJs (http://annotatorjs.org/) with the PdfJs (https://mozilla.github.io/pdf.js/) library. It uses a simple Spring Boot application and a MySql database containing one table in the backend to persist annotations. MIT License applies (http://opensource.org/licenses/MIT). Note th…

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published