A Django app that displays a pdf library in a grid and lets you read them as flipbooks.
- Copy the
flipbook
folder to the root of your django project.
Install the following requirements:
- Install Imagemagick for thumbnail generation
pip install Wand
pip install python-magic
In settings.py add:
'flipbook',
toINSTALLED_APPS
TEMPLATES = [
{
'DIRS': [
os.path.join(BASE_DIR, 'flipbook', 'templates'),
],
},
]
TEMP_ROOT = os.path.join(DATA_DIR, 'media/tmp')
Then run:
$ python manage.py migrate
$ python manage.py runserver
Add the Flipbook app to a page and upload the pdfs via the admin interface.
I have implemented pdfjs-flipbook by default, which is a bit buggy but free. However, I recommend using dFlip PDF FlipBook jQuery Plugin. Simply swap the index.html
files in the templates dir, and populate flipbook/static/flipbook/dflip/
with the js
, sound
, images
, fonts
and css
folders from the dFlip PDF FlipBook jQuery Plugin.
Change the dependency URLS in dflip.js as follows and you're good to go:
pdfjsSrc: url + "js/libs/pdf.min.js",
pdfjsCompatibilitySrc: url + "js/libs/compatibility.js",
pdfjsWorkerSrc: url + "js/libs/pdf.worker.min.js",
threejsSrc: url + "js/libs/three.min.js",
mockupjsSrc: url + "js/libs/mockup.min.js",
soundFile: url + "sound/turn2.mp3",
imagesLocation: url + "images",
imageResourcesPath: url + "images/pdfjs/",
cMapUrl: url + "cmaps/",