Sách điện tử và định dạng của chúng: FB2 và FB3 - lịch sử, ưu, nhược điểm và nguyên tắc hoạt động

Trong bài viết trước chúng ta đã nói về các tính năng của định dạng DjVu. Hôm nay chúng tôi quyết định tập trung vào định dạng FictionBook2, hay còn được gọi là FB2, và FB3 “kế nhiệm” của nó.

Sách điện tử và định dạng của chúng: FB2 và FB3 - lịch sử, ưu, nhược điểm và nguyên tắc hoạt động
/flickr/ Judit Klein / CC

Sự xuất hiện của định dạng

Vào giữa những năm 90, những người đam mê đã bắt đầu số hóa sách của Liên Xô. Họ dịch và bảo tồn văn học ở nhiều định dạng khác nhau. Một trong những thư viện đầu tiên ở Runet - Thư viện của Maxim Moshkov - đã sử dụng tệp văn bản được định dạng (TXT).

Sự lựa chọn được đưa ra có lợi cho nó do khả năng chống hỏng byte và tính linh hoạt - TXT mở trên mọi hệ điều hành. Tuy nhiên, anh ấy làm cho nó khó khăn xử lý thông tin văn bản được lưu trữ. Ví dụ: để chuyển sang dòng thứ một nghìn, phải xử lý 999 dòng trước nó. Sách cũng được lưu trữ trong tài liệu Word và PDF - định dạng sau khó chuyển đổi sang các định dạng khác và máy tính yếu đã mở và hiển thị Tài liệu PDF có độ trễ.

HTML cũng được sử dụng để “lưu trữ” tài liệu điện tử. Nó giúp việc lập chỉ mục, chuyển đổi sang các định dạng khác và tạo tài liệu (gắn thẻ văn bản) dễ dàng hơn, nhưng nó cũng bộc lộ những thiếu sót của riêng mình. Một trong những điều quan trọng nhất là “sự mơ hồ» tiêu chuẩn: nó cho phép một số quyền tự do nhất định khi viết thẻ. Một số trong số chúng đã phải đóng cửa, một số khác (ví dụ: ) - không cần phải đóng nó lại. Bản thân các thẻ có thể có thứ tự lồng tùy ý.

Và mặc dù công việc như vậy với các tập tin không được khuyến khích - những tài liệu như vậy được coi là không chính xác - tiêu chuẩn yêu cầu người đọc phải cố gắng hiển thị nội dung. Đây là lúc khó khăn nảy sinh, vì trong mỗi ứng dụng, quá trình “đoán” được thực hiện theo cách riêng của nó. Đồng thời, các thiết bị và ứng dụng đọc sách hiện có trên thị trường lúc bấy giờ hiểu một hoặc hai định dạng chuyên biệt. Nếu một cuốn sách có sẵn ở một định dạng, nó phải được định dạng lại để có thể đọc được. Nó nhằm mục đích giải quyết tất cả những thiếu sót này Sách Viễn Tưởng2, hoặc FB2, đảm nhiệm việc "kết hợp" văn bản và chuyển đổi ban đầu.

Lưu ý rằng định dạng này có phiên bản đầu tiên - Sách Viễn Tưởng1 - tuy nhiên, nó chỉ mang tính chất thử nghiệm, không tồn tại lâu, hiện không được hỗ trợ và không tương thích ngược. Vì vậy, FictionBook thường có nghĩa là “người kế nhiệm” của nó - định dạng FB2.

FB2 được tạo bởi một nhóm các nhà phát triển đứng đầu là Dmitry Gribov, giám đốc kỹ thuật của công ty lít và Mikhail Matsnev, người tạo ra Haali Reader. Định dạng này dựa trên XML, quy định hoạt động với các thẻ không được đóng và lồng nhau chặt chẽ hơn HTML. Một tài liệu XML đi kèm với cái gọi là Lược đồ XML. Lược đồ XML là một tệp đặc biệt chứa tất cả các thẻ và mô tả các quy tắc sử dụng chúng (trình tự, lồng nhau, bắt buộc và tùy chọn, v.v.). Trong FictionBook, sơ đồ nằm trong tệp FictionBook2.xsd. Một lược đồ XML mẫu có thể được tìm thấy tại liên kết (nó được sử dụng bởi cửa hàng sách điện tử lít).

Cấu trúc tài liệu FB2

Văn bản trong tài liệu được lưu trữ trong các thẻ đặc biệt - các thành phần của loại đoạn văn: , Và . Ngoài ra còn có một phần tử , không có nội dung và được sử dụng để chèn khoảng trống.

Tất cả tài liệu đều bắt đầu bằng thẻ gốc , bên dưới có thể xuất hiện , , Và .

Nhãn chứa các biểu định kiểu để tạo điều kiện chuyển đổi sang các định dạng khác. TRONG nằm được mã hóa bằng cách sử dụng base64 dữ liệu có thể cần thiết để hiển thị tài liệu.

Yếu tố chứa tất cả các thông tin cần thiết về cuốn sách: thể loại tác phẩm, danh sách tác giả (tên đầy đủ, địa chỉ email và trang web), tiêu đề, khối từ khóa, chú thích. Nó cũng có thể chứa thông tin về những thay đổi được thực hiện đối với tài liệu và thông tin về nhà xuất bản cuốn sách nếu nó được xuất bản trên giấy.

Đây là phần của khối trông như thế nào trong mục FictionBook dành cho làm "A Study in Scarlet" của Arthur Conan Doyle, trích từ Dự án Gutenberg:

<?xml version="1.0" encoding="iso-8859-1"?>
 <FictionBook 
  >
  <description>
    <title-info>
      <genre match="100">detective</genre>
      <author>
        <first-name>Arthur</first-name>
        <middle-name>Conan</middle-name>
        <last-name>Doyle</last-name>
      </author>
      <book-title>A Study in Scarlet</book-title>
      <annotation>
      </annotation>
      <date value="1887-01-01">1887</date>
    </title-info>
  </description>

Thành phần chính của tài liệu FictionBook là . Nó chứa nội dung của chính cuốn sách đó. Có thể có một số thẻ này xuyên suốt tài liệu - các khối bổ sung được sử dụng để lưu trữ chú thích cuối trang, nhận xét và ghi chú.

FictionBook cũng cung cấp một số thẻ để làm việc với các siêu liên kết. Chúng dựa trên đặc điểm kỹ thuật XLink, được phát triển bởi tập đoàn W3C đặc biệt để tạo liên kết giữa các tài nguyên khác nhau trong tài liệu XML.

Ưu điểm của hình thức

Tiêu chuẩn FB2 chỉ bao gồm bộ thẻ bắt buộc tối thiểu (đủ để “thiết kế” tiểu thuyết), giúp đơn giản hóa quá trình xử lý của người đọc. Hơn nữa, trong trường hợp đầu đọc thao tác trực tiếp với định dạng FB, người dùng có cơ hội tùy chỉnh hầu hết mọi thông số hiển thị.

Cấu trúc chặt chẽ của tài liệu cho phép bạn tự động hóa quá trình chuyển đổi từ định dạng FB sang bất kỳ định dạng nào khác. Cấu trúc tương tự giúp bạn có thể làm việc với các thành phần riêng lẻ của tài liệu - thiết lập bộ lọc theo tác giả sách, tiêu đề, thể loại, v.v. Vì lý do này, định dạng FB2 đã trở nên phổ biến trong Runet, trở thành tiêu chuẩn mặc định trong các thư viện và thư viện điện tử của Nga ở các nước CIS.

Nhược điểm của hình thức

Sự đơn giản của định dạng FB2 đồng thời vừa là ưu điểm vừa là nhược điểm của nó. Điều này giới hạn chức năng bố cục văn bản phức tạp (ví dụ: ghi chú bên lề). Nó không có đồ họa vector hoặc hỗ trợ danh sách đánh số. Vì lý do này, định dạng không phù hợp lắm đối với sách giáo khoa, sách tham khảo và tài liệu kỹ thuật (tên của định dạng thậm chí còn nói lên điều này - sách viễn tưởng, hay “sách viễn tưởng”).

Đồng thời, để hiển thị thông tin tối thiểu về cuốn sách - tên sách, tác giả và bìa - chương trình cần xử lý gần như toàn bộ tài liệu XML. Điều này là do siêu dữ liệu xuất hiện ở đầu văn bản và hình ảnh ở cuối.

FB3 - phát triển định dạng

Do yêu cầu ngày càng tăng về định dạng văn bản sách (và để giảm thiểu một số thiếu sót của FB2), Gribov bắt đầu làm việc trên định dạng FB3. Sự phát triển sau đó đã dừng lại, nhưng vào năm 2014 tiếp tục lại.

Theo các tác giả, họ đã nghiên cứu nhu cầu thực sự khi xuất bản tài liệu kỹ thuật, xem xét sách giáo khoa, sách tham khảo, sách hướng dẫn và vạch ra một bộ thẻ cụ thể hơn cho phép hiển thị bất kỳ cuốn sách nào.

Trong thông số kỹ thuật mới, định dạng FictionBook là một kho lưu trữ zip trong đó siêu dữ liệu, hình ảnh và văn bản được lưu trữ dưới dạng các tệp riêng biệt. Các yêu cầu về định dạng tệp zip và các quy ước đối với tổ chức của nó được quy định trong tiêu chuẩn ECMA-376, định nghĩa Open XML.

Một số cải tiến đã được thực hiện liên quan đến định dạng (khoảng cách, gạch chân) và một đối tượng mới đã được thêm vào - một "khối" - định dạng một đoạn tùy ý của cuốn sách dưới dạng hình tứ giác và có thể được nhúng vào văn bản với một đường bao quanh. Hiện đã có hỗ trợ cho danh sách được đánh số và đánh dấu đầu dòng.

FB3 được phân phối theo giấy phép miễn phí và là nguồn mở nên tất cả các tiện ích đều có sẵn cho nhà xuất bản và người dùng: trình chuyển đổi, trình chỉnh sửa đám mây, trình đọc. Hiện hành phiên bản định dạng, người đọc и người biên tập có thể được tìm thấy trong kho GitHub của dự án.

Nhìn chung, FictionBook3 vẫn ít phổ biến hơn so với người anh em của nó, nhưng một số thư viện điện tử đã cung cấp sách ở định dạng này. Và lít vài năm trước đã công bố ý định chuyển toàn bộ danh mục của họ sang một định dạng mới. Một số độc giả đã hỗ trợ tất cả chức năng cần thiết của FB3. Ví dụ: tất cả các mẫu trình đọc ONYX hiện đại đều có thể hoạt động với định dạng này ngay lập tức, chẳng hạn: Darwin 3 hoặc Cleopatra 3.

Sách điện tử và định dạng của chúng: FB2 và FB3 - lịch sử, ưu, nhược điểm và nguyên tắc hoạt động
/ ONYX BOOX Cleopatra 3

Sự phân phối rộng rãi hơn của FictionBook3 sẽ tạo ra một hệ sinh thái định hướng để làm việc đầy đủ và hiệu quả với văn bản trên bất kỳ thiết bị nào có tài nguyên hạn chế: màn hình đen trắng hoặc màn hình nhỏ, bộ nhớ thấp, v.v. Theo các nhà phát triển, một cuốn sách sau khi được trình bày sẽ thuận tiện nhất có thể trong mọi môi trường.

Tái bút Chúng tôi xin gửi đến bạn một số đánh giá về độc giả ONYX BOOX:



Nguồn: www.habr.com

Thêm một lời nhận xét