Giter VIP home page Giter VIP logo

better-keynote-export's Introduction

better-keynote-export

This is a script that can export Keynote presentations in formats that are better for sharing them as standalone documents. Natively,

  • Keynote will export slides with presenter notes as a PDF. But the resulting formatting is terrible, giving 50% of each page of the PDF up to the notes.
  • Keynote will export an HTML document, but it won't include presenter notes with it.

This script addresses both of these issues.

  • It generates a nicely-formatted PDF like this one, suitable for uploading to Speakerdeck or others.
  • It generates an html presentation in a minimalist, reader-friendly format inspired by Maciej Cegłowski.

Examples and Screenshots

Here is an example of the HTML site generated.

You also get PDF presentation slides that look like this:

A nice looking slide

Instead of the crappy ones that Keynote gives you:

A horrible looking slide

A full PDF sample can be found here.

Setup

pyenv virtualenv is a reasonable way to have isolated python environments. Follow their instructions for setting that up and then do this:

$ pyenv virtualenv 3.6.1 better-keynote-export
$ pyenv activate better-keynote-export
$ pip install -r requirements.txt

Usage

Use ./export.py --help to see all of the available options. Basically,

./export.py \
  --keynote=<the keynote file> \
  --outdir=<a path> \
  --title=<the name of the presentation> \
  --twitter-username=<your twitter username>

The output path gets both a PDF file and a self-contained website that you can easily host with (for example) GitHub pages.

Notes

You must have Keynote installed to use this.

Fundamentally, this works by scripting Keynote using Applescript. The details of this helpfully change from Keynote version to version. So if the script isn't working, it might be that I haven't updated it recently and minor tweaks are needed for the latest version of Keynote. Pull requests welcome!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.