Note that you'll need basic knowledge of operating a shell and JSON to use this tool.
Features
- PDF output
- Configurable
- Places (most) pictures correctly within the flow
- Support for footnotes
- Compatible with furigana (as far as I could observe)
I wanted a more book-like look for my projects, while keeping the PDFs easily updated. I started with a LaTeX approach, but TeX is too much of a monster to use for this kind of task. Also, I wanted to do something.
Requirements
You'll need PrinceXML and the .NET 4.0 framework. Sorry, Linux & Mac enthusiasts. I might consider porting it to PHP, though, for server-side bliss.
Installation
- Download and install PrinceXML.
- Download and extract BakaPrince.
It's meant to be used from the command line -- add it to your %PATH% or use it as is, as you like.
To get started, head into the folder you extracted it, kick up a CMD window and try:
Code: Select all
bakaprince convert https://raw.github.com/EusthEnoptEron/BakaPrince/master/configs/tsukumodo1.json
The complete thing looks like this:
Code: Select all
Usage: bakaprince [OPTIONS]+ [parse|convert] [Project_Name|config.json]
Create a PDF from a Baka-Tsuki project.
Options:
-f, --force force re-download of files
-h, --help show this message and exit
parse:
-o, --output=VALUE output path
-v, --volume=VALUE volume number
convert:
-p, --prince=PATH the PATH where PrinceXML is located. Leave away
to find it automatically.
-o, --output=VALUE where to write the resulting PDF
-s, --stylesheet=VALUE specify an additional stylesheet to use
Config file
Look here for the specification and here for examples. If you're too lazy to write one, use the parse command to create one automatically (not recommended at the moment).
Code: Select all
bakaprince parse "Kamisama no Memochou" -v 3 -o kami.json
The output looks like this: http://www.mediafire.com/?oi86ba1xc7gclxh
If you don't like the indentation and margins, you can define your own stylesheet (see usage & JSON specification) and do something like:
Code: Select all
p {
text-indent: 0;
margin: .4em 0 .5em 0;
}
This is still very beta-ish and might be a bit buggy. (The binary was compiled a few minutes before making this post.) If you want to take a look at the source -- or just have a laugh at my expense -- you can find the repository on GitHub.