Sách điện tử html/css

Calibre ngoài chức năng quá quen thuộc là chuyển đổi các định dạng thì nó còn kèm theo các chương trình tiện ích đi kèm như ebook-viewer, ebook-edit. Ebook-viewer mình đã viết 1 bài giới thiệu rồi, hôm nay viết tiếp bài giới thiệu về ebook-edit cho Toàn thân
Sách điện tử html/css
.
Ebook-edit là một chương trình biên tập ebook tương tự với Sigil nhưng ít người dùng biết đến. Sau đây là bài giới thiệu tổng hợp, mời các bạn theo dõi.
A. Bước chuẩn bị - xử lý nguồn tex.
Nguồn tài liệu có thể là txt, html hoặc docx. Mình xin lấy docx để minh họa vì sự phổ biến của nó nhé. Ví dụ chúng ta có nguồn dữ liệu thế này
Sách điện tử html/css

Các bước xử lý cơ bản như sau.
1. Giữ nguyên định dạng nghiêng
Bấm tổ hợp Ctrl+h để vào Tìm và Thay thế
Trong ô Tìm các bạn để trống và nhấn tổ hợp phím Ctrl+i
Tại ô Repalce các bạn điền ^&
Replace All
Sách điện tử html/css

2. Giữ định dạng đậm
In ô Tìm các bạn để trống và nhấn tổ hợp phím Ctrl+b
In ô Repalce các bạn đã điền
Replace All
Sách điện tử html/css

3. Gắn thẻ


Trở về đầu văn bản và nhập xuống 1 dòng trắng.
Bấm tổ hợp Ctrl+h để vào Tìm và Thay thế
Trong ô Tìm các bạn bấm vào Không định dạng để xóa định dạng nếu có và điền ^p
Tại ô Repalce các bạn điền

^p


Replace All
* chú ý nếu có line break các bạn làm thêm 1 lần nữa với ^l

Sách điện tử html/css

Dữ liệu sau khi xử lý sẽ như hình:
Sách điện tử html/css


B. Vào chương trình chỉnh sửa sách điện tử
1. Kích hoạt chương trình trong thư mục Calibre
Sách điện tử html/css

2. Tạo 1 sách điện tử mới
Sách điện tử html/css

3. Khai báo metadata (Tên ebook, tác giả) và định dạng ebook (có 2 loại là epub và azw3, mình dùng kindle nên chọn azw3 nhé
Sách điện tử html/css
)
Sách điện tử html/css

4. Xác định bìa
Sách điện tử html/css

5. Sao chép nguồn dữ liệu vào cửa sổ soạn thảo

Sao chép từ thẻ
Sách điện tử html/css

6. Bố cục tiêu đề

Đặt con trỏ tại thẻ
Sách điện tử html/css

7. Tạo css (kiểu định dạng văn bản)

• Nhấp vào biểu tượng Tệp mới
Sách điện tử html/css

• Đặt tên với cú pháp. mười. css
Sách điện tử html/css

• Soạn thảo css (tham khảo tại hộp hướng dẫn biên tập epub của diễn đàn nhé, giống nhau thui)
Sách điện tử html/css

• Kết nối html với css, nhấp chuột . Bật hộp thoại Find & Replace
Sách điện tử html/css

Chọn css đã soạn và ok
Sách điện tử html/css


8. Bật hộp thoại Find & Replace
Sách điện tử html/css

---Xem tiếp #2---

 

9. Làm chú thích (làm khi chưa phân tách html nhé)
Nội dung chú thích phải được đặt theo cú pháp ^[nội dung chú thích] và nằm sau .
Sách điện tử html/css

• Chèn class chú thích
Di chuyển đến cuối tài liệu (Ctrl+end). Add the lines code after into before the end of the . Sau đó nhấn vào biểu tượng bông hoa để chương trình rút lại mã cho đúng chuẩn mới chạy lệnh được nhé
Sách điện tử html/css

Mã.

Chú Thích

Sách điện tử html/css

• Dịch chuyển chú thích
Chế độ Regex nhé các bạn
Ô Find editor code as after (copy paste nhé).

Mã.

\^\[(.*?)\](?s)(.*?

)(.*?)( )

Ô Replace code as after.

Mã.

[*]\2\3

[*]\1

\4

Replace all to when nào hết chú thích nhé (bấm cực lực vào). Xong hết chú thích rồi nhớ bấm bông hoa cái nữa nhé.
Sách điện tử html/css

Sách điện tử html/css

• Ngắt chú thích thành html độc lập
Nhấp chuột phải vào khung soạn thảo rồi làm theo hình nhé
Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

• Đánh số chú thích .
* Lúc này mình phải chuyển chế độ sang Regex_function và current file nhé.
Sách điện tử html/css

* Bấm vào Create/edit để sao chép đoạn mã sau đây vào hộp thoại bung ra nhé, và đặt cho nó cái tên nhé (mình đặt là note_number).

Mã.

def replace(match, number, file_name, metadata, dictionaries, data, functions, *args, **kwargs):
    note_number = '%d' % number
    return "[" + note_number + "]"

# Ensure that when running over multiple files, the files are processed
# in the order in which they appear in the book
replace.file_order = 'spine'

Sách điện tử html/css

* Chạy lần lượt cho từng lệnh html sau
Ô Tìm. \[\*\]
Ô Chức năng. note_number
Chế độ Regex_function - Tệp hiện tại
Thay thế tất cả nhé
Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

• Liên kết chú thích
.
* html nội dung:
Tìm.
\[(\d+)\]
Thay thế.
[\1]
Sách điện tử html/css

Sách điện tử html/css

* htm chứa chú thích
Tìm.

\[(\d+)\]
Thay thế.

[\1]

Sách điện tử html/css

Sách điện tử html/css

---xem tiếp #3---

 

Phần bổ sung 25/9/2017. Thẻ div với một số thế kết hợp đơn giản để định dạng văn bản
• Các bạn xem hình minh họa sẽ thấy các thẻ p đều rất sạch nhé, tất cả là nhờ vào các combo nặng của thẻ .
Sách điện tử html/css

• Ảnh & code trình bày các thế combo của thẻ div
Sách điện tử html/css

Mã:

p{ /*Thẻ p sẽ được định dạng tổng quát cho toàn bộ ebook*/
  margin:0;
  text-indent: 2em;
  text-align: justify;
  }
div.tho p { /*ý nghĩa combo: định dạng cho các thẻ p nằm trong cặp thẻ div có class tho*/
  text-indent: 0;
  text-align: center;
  color: blue;
  font-style: italic;
  }
div.chapter p{ /*ý nghĩa combo: định dạng cho các thẻ p nằm trong cặp thẻ div có class chapter*/
  text-indent: 0;
  text-align: center;
  background-color: pink;
  color: red;
  font-size: 1.2em;
  }
div.chapter + p{ /*ý nghĩa combo: định dạng cho thẻ p nằm ngay sau cặp thẻ div có class chapter*/
  text-indent: 0;
  }
div.chapter + p:first-letter{ /*ý nghĩa combo: định dạng cho ký tự đầu tiên của thẻ p nằm ngay sau cặp thẻ div có class chapter*/
  font-size: 3em;
  float: left;
  margin: -0.2em 0em -0.2em 0em; /*top right bottom left*/
  }

 

Phần bổ sung 25/9/2017. Tạo Mục lục bằng Xpath, chỉnh sửa TOC nội dung đã chỉnh sửa hiển thị ở toc. ncx, đính kèm lục mục lục vào ebook.
1. Create Mục Lục bằng Xpath
Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css


2. CHỈNH SỬA TOC nội dung được hiển thị ở toc. ncx (nội dung lục mục này sẽ hiển thị trong Mục lục của các ứng dụng đọc epub). Có thể sử dụng regex/file hiện tại để chỉnh sửa hàng loạt.
Sách điện tử html/css


3. Đính kèm mục lục vào ebook (một số thích, một số không, tùy ý mọi người, nhưng nếu đã đính kèm thì phải đẹp
Sách điện tử html/css
). Làm sau khi đã chỉnh sửa mục hoàn thiện 2.
Sách điện tử html/css

• Trang tốc. xhtml sẽ được thêm vào đầu ebook
Sách điện tử html/css

• Áp dụng các tổ hợp thay thế để định dạng cho trang toc. xhtml này nhé
Sách điện tử html/css

Mã.

/* Styles cho trang mục lục đính vào nội dung ebook */
ul.level1 li{
  text-indent: 0;
  text-align: center;
  font-size: 0.8em;
  margin: 0.5em 0em 0.5em 0em; /*top right bottom left*/ /* xác định khoảng cách giữ các thẻ li*/
  line-height: 1.5em; /* xác định khoảng cách xuống dòng cho thẻ br trong thẻ li */
  }

 

Phần bổ sung 25/9/2017. Một số quy ước cơ bản ở chế độ tìm kiếm regex và ví dụ
* 1 cụm bất kỳ kể cả khoảng trắng được quy ước là. . *?
* Số tự nhiên. d+
* Tìm chính xác 1 ký tự đặc biệt. \ (ví dụ \? \* \^)
* Ký tự unicode. \p{L}
* Ký tự unicode viết hoa. \p{Lu}
* Ký tự unicode viết thường. \p{Ll}
* Phân nhóm 1 chuỗi bằng bộ () trả về giá trị tương ứng với vị trí xuất hiện của () ví dụ \1 \2 \3
* Bộ [] dùng để chứa các lựa chọn khi tìm kiếm (hoặc cái này hoặc cái kia)
* Bộ {} chứa số lần lặp lại
----
Ví dụ 1: sửa lỗi không viết hoa sau dấu chấm, dấu chấm hỏi, dấu chấm than mình lập cú pháp ở chế độ Regex-function - Case sensitive
Tìm. ([\. \?\. ]) (\p{Ll})
Hàm. Chữ in hoa (nhấp vào mũi tên và chọn trong phần Chức năng)
Sách điện tử html/css

Sách điện tử html/css


Ví dụ 2. find program to mount thẻ div. chương Lúc này chuyển về chế độ Regex
Tìm.
Thay thế.
Replace all
Sách điện tử html/css


Ví dụ 3. ngắt dòng nội dung chương trình tại số chương trình là 1 số tự nhiên
Tìm.
Thay thế.
Sách điện tử html/css


Ví dụ 4. ngắt dòng nội dung chương trình tại số chương trình là số la mã
Tìm.
Thay thế.
Sách điện tử html/css

 

Phần bổ sung 26/9/2017. Cài đặt từ điển tiếng Việt và cách dùng Kiểm tra chính tả Alt+F7
1. Cài đặt từ điển.
Các bạn tải tập tin vi. rar mình đính kèm ở post này, giải nén ra sẽ được thư mục "vi". Chép thư mục này vào thư mục từ điển của calibre.
* Nguồn từ điển. Vui lòng đăng nhập hoặc đăng ký để xem liên kết

Mã.

..\Calibre\Calibre\app\resources\dictionaries

Sách điện tử html/css


2. Cách sử dụng Kiểm tra chính tả Alt+F7
nhiệm vụ sử dụng chức năng Kiểm tra chính tả các bạn phải khai báo ngôn ngữ cho ebook, lúc tạo 1 ebook mới editor đã bắt buộc người dùng chọn một ngôn ngữ chung cho . Các bạn có thể khai báo lại nếu sai hoặc chưa có.
• Tiếng Việt. lang="vi"
• Tiếng Anh. lang="vi"
Nếu ngoài ngôn ngữ chung là tiếng Việt còn có tiếng Anh thì các bạn có thể khai thuộc tính lang cho thẻ
Bên dưới là một số ảnh minh họa.
Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

 

Phần bổ sung 10/1/2017. Thu gom các nội dung chú thích không đồng dạng và rải rác ở nhiều html.
Text mình làm thì chú thích sẽ theo cú pháp của mình rồi, nhưng khi sưu tầm text thì các chú thích sẽ theo ý của người soạn, theo kinh nghiệm sưu tầm text của mình thì có 2 . Sau khi chạy lệnh sẽ xuất hiện 1 hộp thoại chứa các chú thích + địa chỉ của chúng. Bên dưới là chức năng mã regex và hình ảnh minh họa.
Sách điện tử html/css

Chúng ta sử dụng chế độ tìm kiếm Regex function / All text file / Replace all. Sau khi chạy lệnh sẽ xuất hiện 1 hộp thoại chứa các chú thích + địa chỉ của chúng. Bên dưới là code regex function và các ảnh minh họa.
Cú pháp ô Find.

Mã.

(

\(\*{1,}\).*?

|

\[\d+\].*?

)

Nhấp tạo/chỉnh sửa đoạn mã dán bên dưới và đặt cho nó 1 cái tên nhé

Mã.

________số 8

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

 

Phần bổ sung ngày 10/04/2017. Tạo nhanh áo khoác nội dung bằng chức năng Regex.
• Các bạn nhấp vào nút tạo tệp mới và đặt tên là áo khoác. html sau đó kéo nó lên đầu trang.
• Nhập chữ áo khoác vào phần nội dung.
• Chuyển chế độ tìm kiếm sang hàm Regex
• Cú pháp ô Find. (áo khoác)
• Hàm ô. nhấp vào tạo/chỉnh sửa để tạo chức năng cho lần chạy đầu tiên. Các bạn sao chép đoạn mã bên dưới dán vào hộp thoại và đặt cho nó cái tên (sau này không cần dán nữa, chỉ cần chọn cái tên này thôi).
• Nhập các thông tin vào nơi phù hợp vào giữa dấu nháy đơn ở đầu mã (Tiêu đề và tác giả không cần nhập do đã khai báo ngay từ đầu tạo ebook). Ok và Replace all
• Code

Mã.

#Tạo 1 html với tên jacket.html để ở đầu ebook.
#Gõ chữ jacket vào phần nội dung html.
#Điền thêm tên người dịch, tên của bạn, tên trang xuất bản ebook vào các mục phù hợp giữa 2 dấu nháy đơn.
#Find: (jacket) và Replace all
import datetime
def replace(match, number, file_name, metadata, dictionaries, data, functions, *args, **kwargs):
    title=metadata.title
    author='Tác giả: '+metadata.authors[0]
    trans='Người dịch: '+'tên dịch giả'
    publisher='Người tạo ebook: '+'tên của bạn'
    pubdate='Ngày hoàn thành: '+'{:%d/%m/%Y}'.format(datetime.date.today())
    footer='trang ebook của bạn'
    jacket='''

        
'''+title+'''
'''+author+''' | '''+trans+'''
'''+publisher+'''
'''+pubdate+'''
''' return jacket replace.file_order = 'spine'

• Ảnh minh họa.
Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

Sách điện tử html/css

 

• Add a sample jacket for #11

Mã.

\^\[(.*?)\](?s)(.*?

)(.*?)( )
0

• Ảnh minh họa.
Sách điện tử html/css