Location support for PDF when fetching annotations from a Kindle

This commit is contained in:
Kovid Goyal 2010-03-12 08:25:45 -07:00
commit c255a8e991
2 changed files with 17 additions and 12 deletions

View File

@ -448,12 +448,11 @@ class Bookmark():
except:
pass
elif self.bookmark_extension == 'pdr':
# Book length not yet implemented for PDF files
# After 0.6.45:
# from calibre import plugins
# self.book_length = plugins['pdfreflow'][0].get_numpages(open(book_fs).read())
self.book_length = 0
from calibre import plugins
try:
self.book_length = plugins['pdfreflow'][0].get_numpages(open(book_fs).read())
except:
pass
else:
print "unsupported bookmark_extension: %s" % self.bookmark_extension

View File

@ -1013,11 +1013,14 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
spanTag = Tag(ka_soup, 'span')
spanTag['style'] = 'font-weight:bold'
if bookmark.book_format == 'pdf':
spanTag.insert(0,NavigableString("%s<br />Last Page Read: %d" % \
spanTag.insert(0,NavigableString(
_("%s<br />Last Page Read: %d (%d%%)") % \
(strftime(u'%x', timestamp.timetuple()),
last_read_location)))
last_read_location,
percent_read)))
else:
spanTag.insert(0,NavigableString("%s<br />Last Page Read: Location %d (%d%%)" % \
spanTag.insert(0,NavigableString(
_("%s<br />Last Page Read: Location %d (%d%%)") % \
(strftime(u'%x', timestamp.timetuple()),
last_read_location,
percent_read)))
@ -1035,7 +1038,8 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
# Italicize highlighted text
for location in sorted(user_notes):
if user_notes[location]['text']:
annotations.append('<b>Location %d &bull; %s</b><br />%s<br />' % \
annotations.append(
_('<b>Location %d &bull; %s</b><br />%s<br />') % \
(user_notes[location]['displayed_location'],
user_notes[location]['type'],
user_notes[location]['text'] if \
@ -1043,11 +1047,13 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI):
'<i>%s</i>' % user_notes[location]['text']))
else:
if bookmark.book_format == 'pdf':
annotations.append('<b>Page %d &bull; %s</b><br />' % \
annotations.append(
_('<b>Page %d &bull; %s</b><br />') % \
(user_notes[location]['displayed_location'],
user_notes[location]['type']))
else:
annotations.append('<b>Location %d &bull; %s</b><br />' % \
annotations.append(
_('<b>Location %d &bull; %s</b><br />') % \
(user_notes[location]['displayed_location'],
user_notes[location]['type']))