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 [\1]
[\1]


---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ẻ .

• Ảnh & code trình bày các thế combo của thẻ div

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






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.


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 ]. Làm sau khi đã chỉnh sửa mục hoàn thiện 2.

• Trang tốc. xhtml sẽ được thêm vào đầu ebook

• Áp dụng các tổ hợp thay thế để định dạng cho trang toc. xhtml này nhé

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]



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


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ế.


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ế.

 

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



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.




 

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.
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








 

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='''

body {
font-family: serif, bookerly;
}
.cbj_banner {
    background: #eee;
    color: black;
    border: thin solid black;
    margin: 1em;
    padding: 1em;
    border-radius:8px;
    }
/*
**    Title
*/
table.cbj_header td.cbj_title {
    font-size: 1.5em;
    font-style: italic;
    text-align: center;
}
/*
**    Author
*/
table.cbj_header td.cbj_author {
    text-align: center;
}
/*
**    Publisher/published
*/
table.cbj_header td.cbj_pubdata {
    text-align: center;
}
/*
**    Table containing Rating and Tags
*/
table.cbj_header {
    width: 100%;
    }
/*
**    General formatting for banner labels
*/
table.cbj_header td.cbj_label {
    font-family: sans-serif;
    text-align: right;
    width: 33%;
    }
/*
**    General formatting for banner content
*/
table.cbj_header td.cbj_content {
    font-family: sans-serif;
    text-align: left;
    width:67%;
    }
/*
** Metadata divider
*/
hr.metadata_divider {
    width:90%;
    margin-left:5%;
    border-top: solid white 0px;
    border-right: solid white 0px;
    border-bottom: solid black 1px;
    border-left: solid white 0px;
    }
/*
**    To skip a banner item [Series|Published|Rating|Tags],
**    edit the appropriate CSS rule below.
*/
table.cbj_header tr.cbj_series {
    /* Uncomment the next line to remove 'Series' from banner section */
    /* display:none; */
    }
table.cbj_header tr.cbj_pubdata {
    /* Uncomment the next line to remove 'Published [year of publication]' from banner section */
    /* display:none; */
    }

hr {
    /* This rule controls formatting for any hr elements contained in the jacket */
    border-top: 0px solid white;
    border-right: 0px solid white;
    border-bottom: 2px solid black;
    border-left: 0px solid white;
    margin-left: 10%;
    width: 80%;
    }
.cbj_footer {
    font-family: sans-serif;
    font-size: 0.8em;
    margin-top: 8px;
    text-align: center;
    }
.cbj_comments {
    font-family: sans-serif;
    }

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

• Ảnh minh họa.



 

• Add a sample jacket for #11

Mã.

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

][.*?][ ]
0

• Ảnh minh họa.

 

Chủ Đề