diff --git a/src/calibre/ebooks/pdf/render/fonts.py b/src/calibre/ebooks/pdf/render/fonts.py index 48b48fe919..19acaa8dc9 100644 --- a/src/calibre/ebooks/pdf/render/fonts.py +++ b/src/calibre/ebooks/pdf/render/fonts.py @@ -108,6 +108,10 @@ class CMap(Stream): for m in maps: meat = '\n'.join('%s %s'%(k, v) for k, v in m.iteritems()) mapping.append('%d beginbfchar\n%s\nendbfchar'%(len(m), meat)) + try: + name = name.encode('ascii').decode('ascii') + except Exception: + name = uuid4() self.write(self.skeleton.format(name=name, mapping='\n'.join(mapping)))