Just updated to using the new iCloud-enabled iBooks for PDFs, etc. On my Macbook, I've also gone and fixed the metadata for all of the books, but it doesn't appear to sync that updated metadata to my iPhone (which is also iCloud-enabled for iBooks). Here's a screenshot from the Mac app:

mac app

But on the iPhone, I'm still missing authors, categories are incorrect, etc. Not sure if metadata simply syncs locally and this is a non-issue, or if something odd is going on w/ my devices. Thanks!


Found a solution; not through iBooks but the Terminal instead (must install Homebrew first):

brew install exiftool
exiftool -Title="New Title" -Author="New Author" -Subject="iBooks Category" file.pdf

This actually edits the PDF metadata, and that will reflect in the Title, Author, and Category columns in iBooks.

| improve this answer | |

iBooks does not actually change PDF metadata at all. It may appear to allow you to edit metadata, but the PDFs actually retain their original file names and metadata attributes even after you painstaking edit them. You've essentially wasted your time, as did I. Furthermore, you may notice the utter mess that appears in your Preview folder on iCloud Drive. Some PDFs may appear with "in iBooks" under the file names, while others do not, still other PDFs may show up in there that you may have sent or received via email, but never formally added to iBooks. The greatest failure, and iBooks is an epic failure, is that the second you are tempted to organize your "Preview" folder on iCloud Drive, it will likely break iCloud sync of iBooks and PDFs across devices. If you are OCD, like me, you will find yourself in an endless feedback loop of fixing ugly metadata and organizing reappearing and disappearing PDFs. You would be better served to stop using iBooks until they fix it, especially if you wish to stay sane.

| improve this answer | |

If you already edited a lot of pdf through iBooks (like me) you may want to bulk edit the metadata as stated above. To do this you need to do following steps:

  1. Get your Books.plist file and convert it into xml-format This file stores all the changes you make in iBooks app on mac. The file is located here: /Users/YourUserName/Library/Containers/com.apple.BKAgentService/Data/Documents/iBooks/Books/Books.plist It's probably in a binary format so you need Xcode to open and save it as xml or use an online converter to convert it to human readable xml format.

  2. Use this metadata to change the actual pdfs Then you can parse the xml file with whatever programming language you choose. In my case I used python and following modules to parse the xml and to edit the pdf: defusedxml PyPDF2. Alternatively you can write a bash script around @tylucaskelley's approach just feed your metadata obtained from the xml file into it.

  3. To trigger the update process you probably have to delete all your iBook pdfs and import the updated pdfs into iBooks again.

| improve this answer | |

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .