如何使用 ebooklib python 创建一个指向章节的药水的 link

how to create a link which points to the a potion of a chapter by using ebooklib python

我在 DJango python 中开发一个应用程序来动态创建 EPub fies。我正在使用 CKEditor 和 ebooklib。但是我对TOC有疑问,我的目的是在TOC中创建一个link,指向一章的a potion。我们可以创建与章节相同的部分和 link 到章节但是当我创建这样的部分作为单独的页面加载时,请参阅下面的示例代码

请看示例代码

 c2 = epub.EpubHtml(title='About this book', file_name='about.xhtml')
    c2.content='<h1>About this book</h1><p>Helou, this is my book! There are many books, but this one is mine.</p>'
    c2.set_language('hr')
    c2.properties.append('rendition:layout-pre-paginated rendition:orientation-landscape rendition:spread-none')
    c2.add_item(default_css)

    # add chapters to the book
    book.add_item(c1)
    book.add_item(c2)

  
    # create table of contents
    # - add manual link
    # - add section
    # - add auto created links to chapters

    book.toc = (epub.Link('intro.xhtml', 'Introduction', 'intro'),
                (epub.Section('Languages'),
                 (c1, c2))
                )

但是当我执行的时候我会得到section in a separate page.My 意图是指向章节的section,而不是作为一个单独的页面。 (就像指向章节中的副标题一样)并在 TOC(table 目录)中添加部分 link。请帮忙?

谢谢

我不知道你是否解决了你的问题,但我遇到了同样的问题,经过一些测试和尝试,我找到了解决方案。

解决方案是将您想要的章节添加为 epub.Link 对象。例如:

epub.Link(chapter.file_name, chapter.title, chapter.id)

并将该结果添加到目录列表对象中。

toc.append(link)

然后在你添加了所有你想要的章节/链接之后,然后将列表转换为元组。

toc = tuple(toc)

并将其设置为table本书的目录。

book.toc = toc