Hướng dẫn Hướng dẫn build eBook đa định dạng (AZW, EPUB, MOBI, PRC)

Thảo luận trong 'Hướng dẫn chung' bắt đầu bởi decepticon, 12/5/22 lúc 23:10.

  1. decepticon

    decepticon Mầm non

    Đọc tin Vui lòng đăng nhập hoặc đăng ký để xem link mà buồn quá. Chán đời reup bài hướng dẫn build eBook thời xa xưa cho ai cần :v

    Các phần mềm được sử dụng trong bài viết:
    - Aspose.Words Expres: Vui lòng đăng nhập hoặc đăng ký để xem link
    - Calibre: Vui lòng đăng nhập hoặc đăng ký để xem link
    - Kindlegen: Vui lòng đăng nhập hoặc đăng ký để xem link
    - Notepad++ 6.5.5: Vui lòng đăng nhập hoặc đăng ký để xem link

    Dưới đây là cách build eBook đa định dạng từ Vui lòng đăng nhập hoặc đăng ký để xem link của Decepticon

    Ưu điểm:
    - Nhanh hơn Calibre rất nhiều, đặc biệt với những truyện >1000 chương Calibre bó trym nhưng cách này thì ko.
    - Ebook tạo ra sẽ có mục lục NCX cực prồ giành riêng cho Kindle for Android/iOS.

    Nhược điểm:
    - Hơi thủ công tý :p

    Bước 1: Creating Raw ePub (Tạo ePub thô)
    Sau khi có source HTML eBook với phần lõi là Vui lòng đăng nhập hoặc đăng ký để xem link, các bạn convert nó thành ePub thô bằng Aspose.Words Express
    [​IMG]

    Bước 2: Tuning the ePub
    Đổi đuôi .epub sang .zip rồi giải nén. Tiếp đến vô thư mục OEBPS chỉnh sửa 3 file sau:

    1/ styles.css
    Thay toàn bộ styles.css bằng đoạn code sau:
    HTML:
    /***********************************************/
    /* Styles for document saved to a stream */
    /* Generated by Aspose.Words for .NET 10.2.0.0 */
    /***********************************************/
    
    body { font-family:'Times New Roman', serif }
    h1, h2, p { margin:0pt }
    h1 { color:#990000; font-size:1.40em; font-weight:normal; margin:0.20em 0em; page-break-after:avoid; page-break-before:always; text-align:center }
    h2 { color:#0099cc; font-size:1.40em; font-style:normal; font-weight:normal; margin:0.20em 0em 1.40em; page-break-after:avoid; page-break-before:always; text-align:center }
    
    .PMsoTitle { color:#ff0000; font-size:1.44em; margin:0.12em 0em 0em; text-align:center }
    .PMsoNormal { font-size:1em }
    .PMsoToc1 { font-size:1em; margin:0.16em 0em; text-align:center }
    .PMsoToc2 { font-size:1em; margin:0.12em 0em; text-indent:12pt }
    .PHeading0 { font-size:1.2em; margin:0.16em 0em 12pt; page-break-before:always; text-align:center }
    .PDeStyle { font-size:1.2em; margin:0.20em 0em 0.48em; text-indent:14.4pt }
    .FiLi { font-size:1.2em; margin:0.20em 0em 0.48em }
    span.Dropcap { font-size: 3em; font-weight: bold; float: left; margin-top: -0.27em; margin-right: 0.05em; margin-bottom: -0.25em }
    
    Các bạn thay color, font, font-size, in nghiêng/in đậm... của các Style (Title, Heading, Toc...) tùy theo sở thích nhé, dropcap thì tự tìm hiểu ta lười lém.
    2/ untitled.html
    Mở untitled.html bằng N++ các bạn sẽ thấy tất cả nội dung bị dồn vào một dòng duy nhất nên load rất lâu, cẩn phải fix lại, một số code rác không cần thiết cũng nên replace cho dễ nhìn.
    Đặc biệt, dưới mỗi Heading (H0, H1, H2...) sẽ là một dòng bị thụt vào giữa rất chi khốn nạn, chả hiểu thằng Aspose tự sướng thêm làm cái éo gì.

    Nếu làm ebook từ De Form các bạn chỉ việc chạy macro Fix_Untitled.html cho N++ có sẵn, còn không thì replace thủ công thế này:

    [​IMG]
    3/ filename.opf
    Thay toàn bộ từ đầu cho đến <manifest> bằng đoạn code sau:
    Mã:
    <?xml version="1.0" encoding="utf-8"?><package xmlns="http://www.idpf.org/2007/opf" version="2.0" unique-identifier="uid">
    <metadata xmlns:opf="http://www.idpf.org/2007/opf" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <dc:title>Tên_Truyện</dc:title>
    <dc:creator>Tên_Tác_Giả</dc:creator>
    <dc:identifier id="uid">Aspose</dc:identifier>
    <dc:language>en-US</dc:language>
    <dc:contributor opf:role="bkp">Aspose.Words for .NET 10.2.0.0</dc:contributor>
    <meta name="generator" content="Aspose.Words for .NET 10.2.0.0" />
    <meta name="cover" content="cover" />
    </metadata>
    <manifest>
    <item id="cover" href="Cover.jpg" media-type="image/jpeg" />

    Bước 3A: Finishing the ePub (bỏ qua nếu ko đọc ePub)
    Đóng gói lại như cũ chúng ta sẽ có 1 ePub hoàn chỉnh, đọc ngon lành trên PC.
    Cơ mà nếu source HTML quá nặng Android/iOS sẽ ko load được, khi đó các bợn bắt buộc phải convert sang định dạng MOBI (xem Bước 4) hoặc loại ePub có source HTML chia nhỏ bằng Calibre, hoặc cắt thủ công theo hướng dẫn Vui lòng đăng nhập hoặc đăng ký để xem link

    Bước 3B: Convert OPF to MOBI
    - Đổi tên và vị trí thư mục Kindlegen sao cho đường dẫn tới kindlegen.exe là C:\Kindlegen\kindlegen.exe
    - Tạo một New Text Document nội dung như dưới rồi đổi tên thành Kindlegen.bat (đuôi .bat ko phải .txt nữa nhé)
    HTML:
    @echo off
    set /p file="Nhap duong dan file: " %=%
    set /p num="Nhap che do nen (0, 1 hoac 2): " %=%
    C:\Kindlegen\kindlegen.exe %file% -c%num%
    - Chạy Kindlegen.bat, kéo-thả filename.opf vào cửa sổ command, Enter...
    Kết quả ta sẽ được 1 ebook .MOBI có mục lục NCX như của Bigbang (mục lục 1 hay 2 lớp là do thiết kế ban đầu của các vị, ko liên quan đến ta)

    [​IMG]

    Bước 4: Unpack MOBI to AZW3 + PRC
    Thực tế MOBI do 2 thằng AZW3 và PRC ghép lại với nhau (MOBI 10MB = AZW3 4MB + PRC 3MB + HMTL 3MB), đó là lý do vì sao nó lại nặng như vậy
    Để có eBook nhỏ, nhẹ, xì tin các bợn nên tách nó thành AZW3 và PRC dùng cho mục đích khác nhau. AZW3 chất lượng y hệt MOBI, hoạt động tốt trên Kindle for Android/PC còn PRC cùi bắp thì... khỏi phải nói (ai sài iPorn ráng mà chịu)

    Cách làm: Cài đặt plugin Kindle Unpack cho Calibre, chọn Split KF8/MOBI.... Thời gian Unpack khá lâu, mất tận... 3 giây.

    Kindle Unpack: Vui lòng đăng nhập hoặc đăng ký để xem link
    [​IMG]
     
    Chỉnh sửa cuối: 12/5/22 lúc 23:17
  2. decepticon

    decepticon Mầm non

    Mọi người xem tạm cách dùng macro cho Notepad++ ở đây nhá, rảnh tôi up lại video khác sau. Tool gettext die rùi nên lướt qua 1'30s đầu đi nhá :D

    [Tutorial] Hướng dẫn làm eBook PRC bằng Word kết hợp Notepad++

     
    tran ngoc anh and chanhvan1987 like this.
  3. chanhvan1987

    chanhvan1987 Lớp 10

    Banlong giờ box ebook hẩm hiu nhỉ. Chả bù cho ngày xưa.
     
    decepticon thích bài này.
  4. decepticon

    decepticon Mầm non

    xu hướng chung mah
     

Chia sẻ trang này