Jekyll Generated HTML

I was debugging this site using the Chrome “Inspect Element” option (which is just amazing), and noticed the huge amount of whitespace that was in the HTML generated by Jekyll. Going by this bug report the engine is not smart enough to exclude whitespace between lines of code. I have seen extensions that claim to be able to solve this, but as I’m hosting on GitHub I need to keep to the standard install setup. I had a thought of how to solve this, and it works surprisingly well!

An updated solution is available.

» Continue reading


While I’ve not had a huge amount of time to devote to building this site, I have got stuck down a few rabbit holes exploring some of the amazing improvements in web technologies and the power that CSS 2+ provides. This site uses many (and possibly too many) ideas and projects I’ve stumbled across in the last couple of weeks. As a side note, I have been deliberately avoiding using Jekyll Bootstrap because I wanted to do the research and coding of the site myself.

» Continue reading

Coming Soon

This site is just a placeholder. In the mean time my (infrequently updated) blog is available in the social links below.

Calibre AutoUpdate

I use Calibre for managing eBooks that I have got from outside the Amazon Kindle store, and for backing up the books I have bought from Amazon. It has always irritated me that it does not autoupdate, and the update process involves downloading a DMG and copying from there. I finally got annoyed enough with it to do something.

» Continue reading

Embedded Font Support and ICEPdf

From Embedded Font Support and ICEPdf

ICEpdf Open Source

ICEpdf Open Source uses java.awt.Font when reading system font files for substitution. ICEpdf Open Source, by default, disables using java.awt.Font for reading embedded font files, because a malformed font file can crash the JVM. The system property org.icepdf.core.awtFontLoading=true can be set to enable java.awt.Font embedded font loading.

This will not work if the font embedded in the PDF is only a subset. It took far too long to figure this out.