E-liv ak fòma yo: FB2 ak FB3 - istwa, avantaj, dezavantaj ak prensip travay

Nan atik anvan an, nou te pale de karakteristik nan fòma DjVu a. Jodi a nou deside konsantre sou fòma FictionBook2, pi byen konnen kòm FB2, ak "siksesè" li FB3.

E-liv ak fòma yo: FB2 ak FB3 - istwa, avantaj, dezavantaj ak prensip travay
/flickr/ Judith Klein / CC

Aparans fòma a

Nan mitan ane 90 yo, amater te kòmanse nimerik liv Sovyetik yo. Yo te tradui ak konsève literati nan yon pakèt fòma. Youn nan premye bibliyotèk yo nan Runet - Bibliyotèk Maxim Moshkov — itilize yon dosye tèks fòma (.txt).

Chwa a an favè li te fè akòz rezistans nan koripsyon byte ak adaptabilite - TXT louvri sou nenpòt sistèm opere. Sepandan, li antrave pwosesis enfòmasyon tèks ki estoke. Pou egzanp, pou w ale nan milyèm liy lan, ou te oblije trete 999 liy anvan li. Liv tou kenbe nan dokiman "Word" ak PDF - lèt la te difisil pou konvèti nan lòt fòma, ak òdinatè fèb louvri ak parèt Dokiman PDF ak reta.

HTML te itilize tou pou "depo" literati elektwonik. Li senplifye Indexing, konvèti nan lòt fòma, ak kreye dokiman (tagging tèks), men prezante dezavantaj pwòp li yo. Youn nan pi enpòtan an tevag» estanda: li te pèmèt sèten libète lè ekri tags. Kèk nan yo te dwe fèmen, lòt moun (pa egzanp, ) - li pa te nesesè yo fèmen. Tag yo tèt yo ta ka gen yon lòd nidifikasyon abitrè.

Ak byenke travay sa yo ak dosye yo pa te ankouraje - dokiman sa yo te konsidere kòm kòrèk - estanda a mande lektè yo pou yo eseye montre kontni an. Sa a se kote difikilte yo leve, depi nan chak aplikasyon pwosesis la nan "panse" te aplike nan pwòp fason li yo. An menm tan an, aparèy ak aplikasyon pou lekti disponib sou mache a nan moman sa a konprann youn oubyen de fòma espesyalize. Si liv la te disponib nan yon fòma, li te dwe refòme pou yo ka li. Pou rezoud tout enpèfeksyon sa yo epi yo te rele FictionBook2, oswa FB2, ki te pran sou inisyal "penyen" tèks la ak konvèti.

Remake byen ke fòma a te gen premye vèsyon an - FictionBook1 - sepandan, li te sèlman eksperimantal, pa t 'dire lontan, se pa kounye a sipòte epi li pa bak konpatib. Se poutèt sa, FictionBook pi souvan vle di "sipyan" li yo - fòma FB2 la.

FB2 te kreye pa yon ekip devlopman ki te dirije pa Dmitri Gribov, ki se direktè teknik konpayi lit yo, ak Mikhail Matsnev, kreyatè Haali Reader. Fòma a baze sou XML, ki pi sevè pase HTML nan reglemante travay la ak tags ki pa fèmen ak enbrike. Yon dokiman XML akonpaye pa yon sa yo rele XML schema. Yon chema XML se yon fichye espesyal ki gen tout tags yo epi ki dekri règ pou itilize yo (sekans, nidifikasyon, obligatwa ak opsyonèl, elatriye). Nan FictionBook, chema a se nan fichye FictionBook2.xsd. Ou ka jwenn yon egzanp XML schema nan lyen (li se itilize nan magazen an e-liv lit).

Estrikti Dokiman FB2

Tèks nan dokiman an kenbe nan Tags espesyal - eleman nan kalite paragraf: , Epi . Genyen tou yon eleman , ki pa gen okenn kontni epi yo itilize pou mete twou vid ki genyen.

Tout dokiman yo kòmanse ak yon tag rasin , anba ki , , Epi .

Tag gen fèy style pou fasilite konvèsyon nan lòt fòma. NAN manti kode ak base64 done ki ka bezwen pou rann dokiman an.

Eleman gen tout enfòmasyon ki nesesè sou liv la: jan an nan travay la, lis la nan otè (non konplè, adrès imel ak sit entènèt sou entènèt la), tit, blòk ak mo kle, anotasyon. Li ka genyen tou enfòmasyon sou chanjman ki fèt nan dokiman an ak enfòmasyon sou piblikatè liv la, si li te pibliye sou papye.

Sa a se sa blòk la sanble nan antre FictionBook pou travay "Etid nan wouj violèt" pa Arthur Conan Doyle, te pran nan Pwojè 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>

Eleman kle nan yon dokiman FictionBook se . Li gen tèks liv la li menm. Ka gen plizyè nan tags sa yo atravè dokiman an - blòk adisyonèl yo itilize pou estoke nòt anba, kòmantè ak nòt.

FictionBook tou bay plizyè Tags pou fè fas ak hyperlinks. Yo baze sou espesifikasyon yo xLinkdevlope pa consortium la W3C espesyalman pou kreye lyen ant diferan resous nan dokiman XML.

Avantaj nan fòma a

Estanda FB2 a gen ladan sèlman seri minimòm ki nesesè nan tags (ase pou "dekorasyon an" nan fiksyon), ki senplifye pwosesis li pa lektè yo. Anplis, nan ka travay dirèk nan lektè a ak fòma FB a, itilizatè a jwenn opòtinite pou Customize prèske tout paramèt ekspozisyon.

Estrikti strik nan dokiman an pèmèt ou otomatize pwosesis la nan konvèti soti nan fòma FB nan nenpòt lòt. Estrikti a menm fè li posib pou travay ak eleman endividyèl nan dokiman - yo mete filtè pa otè liv, tit, genre, elatriye. Pou rezon sa a, fòma FB2 a te vin popilarite nan Runet, vin estanda a default nan bibliyotèk elektwonik Ris ak bibliyotèk nan peyi CIS yo.

Dezavantaj fòma yo

Senplisite fòma FB2 a se avantaj ak dezavantaj li an menm tan. Sa limite fonksyonalite pou layout tèks konplèks (pa egzanp, nòt majinal). Li pa gen grafik vektè ak sipò pou lis nimewote. Pou rezon sa a, fòma a pa trè apwopriye pou liv lekòl, liv referans ak literati teknik (menm non fòma a li menm di sa a - liv fiksyon, oswa "liv fiksyon").

An menm tan an, yo nan lòd yo montre enfòmasyon yo minimòm sou liv la - tit la, otè, ak kouvèti - pwogram nan bezwen trete prèske tout dokiman XML la. Sa a se paske metadata yo nan kòmansman tèks la ak imaj yo nan fen.

FB3 - devlopman fòma

An koneksyon avèk kondisyon yo ogmante pou fòma tèks liv yo (epi yo nan lòd yo egalize kèk nan enpèfeksyon yo nan FB2), Gribov te kòmanse travay sou fòma FB3 la. Pita devlopman sispann, men nan 2014 te rekòmanse.

Dapre otè yo, yo te etidye bezwen reyèl yo nan piblikasyon literati teknik yo, yo te gade liv lekòl, liv referans, manyèl, epi yo te dekri yon seri etikèt ki pi espesifik ki ta pèmèt nenpòt liv parèt.

Nan nouvo spesifikasyon, fòma FictionBook a se yon achiv postal ki estoke metadata, imaj, ak tèks nan dosye separe. Kondisyon yo pou fòma dosye postal la ak konvansyon pou òganizasyon li yo eple nan estanda a ECMA-376Yon ki defini Open XML.

Yo te fè yon kantite amelyorasyon ki gen rapò ak fòma (espacement, souliye) epi yo te ajoute yon nouvo objè - "blòk" - ki fòme yon fragman abitrè nan liv la nan fòm yon kwadrang epi yo ka entegre nan tèks ak anbalaj. Te ajoute sipò pou lis nimewote ak bal.

FB3 distribye anba yon lisans gratis epi li gen yon kòd sous louvri, kidonk tout sèvis piblik yo disponib pou piblikatè ak itilizatè yo: konvètisè, editè nwaj, lektè. aktyèl vèsyon fòma, chanm lekti и editè a Ou ka jwenn nan depo pwojè a sou GitHub.

An jeneral, FictionBook3 toujou mwens komen pase gran frè li, men liv nan fòma sa a yo deja ofri nan plizyè bibliyotèk elektwonik. Ak yon koup de ane de sa, lit te anonse entansyon li yo transfere tout katalòg li nan yon nouvo fòma. Gen kèk lektè ki deja sipòte tout fonksyonalite FB3 ki nesesè yo. Pou egzanp, tout modèl lektè ONYX modèn ka travay ak fòma sa a soti nan bwat la, pou egzanp, Darwin 3 oswa Kleopat 3.

E-liv ak fòma yo: FB2 ak FB3 - istwa, avantaj, dezavantaj ak prensip travay
/ ONYX BOX Cleopatra 3

Pi laj distribisyon FictionBook3 pral kreye yon ekosistèm ki oryante pou travay konplè ak efikas ak tèks sou nenpòt aparèy ki gen resous limite: nwa ak blan oswa ti ekspozisyon, memwa ki ba, elatriye Dapre devlopè yo, yon liv yon fwa mete deyò yo pral kòm pratik ke posib nan nenpòt anviwònman.

PS Nou pote atansyon ou plizyè revizyon nan lektè ONYX BOOX:



Sous: www.habr.com

Add nouvo kòmantè