NetGalley uploads ePub files to Adobe Content Server using a process that packages and encrypts the files. We also use the KindleGen tool to convert ePub files to mobi files for the Kindle.
We occasionally encounter problems in trying to upload large, complex files.In general, remember that NetGalley can’t handle files as complex as those you send to a printer, so be sure to remove or simplify large images, layers of graphics or shapes, and embedded fonts.
Places you may be able to trim, if applicable:
- Reduce image sizes from 300 dpi to a web-friendly resolution of 72dpi
- Reduce video file sizes (or remove) – ensure they’re optimized for the web
- Reduce audio file sizes (or remove)
- Web-optimize any attached PDFs using AcrobatPro (or remove attachments)
We've also uncovered a few specific technical tricks for ePub files:
- Check to make sure the dc:language element is not missing in the metadata section. It's required for the NetGalley upload to work.
- Always encode all content documents as UTF-8.
- Avoid using any entities other than the five required by XML: nbsp, lt, gt, apos, and amp (if you use UTF-8, you do not need to use any other entities).
- In the content.OPF file IF the dc:identifier tag is set for uuid AND the uuid is a 13-digit number THEN the reference to uuid needs to be changed to isbn.
- For example:Change this tag <dc:identifier id="bookid">uri:isbn:9780062020628</dc:identifier>
- To: <dc:identifier id="bookid">9780062020628</dc:identifier>
- When content files in the epub contain a paragraph tag immediately followed by an html entity (such as “ or " or ) there will likely be an error with the ACS server packaging. For example,<p>“Sorry.”</p>.
- In many cases, simply following the paragraph tag with a new line will avoid the problem:
- However, in other cases, both the beginning paragraph tag and the ending paragraph tag must be on their own lines:
The best practice for avoiding this problem is to always place opening and closing paragraph tags on their own lines, in every content document. For most developers, this is a simple find and replace operation across all the content files. In cases where we have these problems, the epub file will have to be edited in this way in order to work with the ACS server and be successfully processed in our system.