E-boeken en har formaten: FB2 en FB3 - skiednis, foar-, neidielen en prinsipes fan wurk

Yn it foarige artikel hawwe wy it oer funksjes fan it DjVu-formaat. Hjoed hawwe wy besletten om te fokusjen op it FictionBook2-formaat, better bekend as FB2, en syn "opfolger" FB3.

E-boeken en har formaten: FB2 en FB3 - skiednis, foar-, neidielen en prinsipes fan wurk
/flickr/ Judit Klein / CC

It uterlik fan it formaat

Yn 'e midden fan' e jierren '90, entûsjasters begon Sovjet boeken digitalisearje. Se oersette en bewarre literatuer yn in grut ferskaat oan formaten. Ien fan 'e earste bibleteken yn Runet - Biblioteek fan Maxim Moshkov - brûkte in opmakke tekstbestân (TXT).

De kar waard makke yn syn foardiel fanwege syn ferset tsjin byte korrupsje en veelzijdigheid - TXT iepent op elk bestjoeringssysteem. Lykwols, hy makke it dreech ferwurkjen fan bewarre tekstynformaasje. Bygelyks, om nei de tûzenste rigel te gean, moasten 999 rigels foarôfgeand wurde ferwurke. Boeken ek opslein yn Word-dokuminten en PDF - de lêste wie dreech om te konvertearjen nei oare formaten, en swakke kompjûters iepene en werjûn PDF-dokuminten mei fertragingen.

HTML waard ek brûkt om elektroanyske literatuer te "opslaan". It makke yndeksearring, konverzje nei oare formaten, en dokumint oanmeitsjen (tekst tagging) makliker, mar it yntrodusearre syn eigen tekoartkommingen. Ien fan de meast wichtige wie "vagueness» standert: it tastien bepaalde frijheden by it skriuwen fan tags. Guon fan harren moasten sluten wurde, oaren (bgl. ) - it wie net nedich om it te sluten. De tags sels kinne in willekeurige nêstfolchoarder hawwe.

En hoewol sa'n wurk mei bestannen net stimulearre waard - sokke dokuminten waarden as ferkeard beskôge - easke de standert lêzers om te besykjen de ynhâld wer te jaan. Dit is wêr't swierrichheden ûntstienen, om't yn elke applikaasje it proses fan "rieden" op syn eigen manier útfierd waard. Tagelyk binne de lêsapparaten en applikaasjes dy't op dat stuit op 'e merke beskikber binne begrepen ien of twa spesjalisearre formaten. As in boek yn ien opmaak beskikber wie, moast it opnij opmakke wurde om lêzen te wurden. It wie de bedoeling om al dizze tekoarten op te lossen Fiksjeboek 2, of FB2, dy't de earste "kammen" fan 'e tekst en konverzje oernaam.

Tink derom dat it formaat syn earste ferzje hie - Fiksjeboek 1 - it wie lykwols allinich eksperiminteel fan aard, duorre net lang, wurdt op it stuit net stipe en is net efterút kompatibel. Dêrom betsjut FictionBook meastentiids syn "opfolger" - it FB2-formaat.

FB2 is makke troch in groep ûntwikkelders ûnder lieding fan Dmitry Gribov, wa is de technyske direkteur fan it liters bedriuw, en Mikhail Matsnev, de skepper fan 'e Haali Reader. It formaat is basearre op XML, dy't wurk mei net-sletten en nestele tags strikter regelet dan HTML. In XML-dokumint wurdt begelaat troch in saneamd XML Schema. In XML-skema is in spesjaal bestân dat alle tags befettet en de regels foar har gebrûk beskriuwt (sekwinsje, nêst, ferplichte en opsjoneel, ensfh.). Yn FictionBook is it diagram yn 'e triem FictionBook2.xsd. In foarbyld XML-skema is te finen op link (it wurdt brûkt troch de liters e-book store).

FB2 dokumint struktuer

Tekst yn dokumint bewarre yn spesjale tags - eleminten fan paragraaftypen: , En . Der is ek in elemint , dy't gjin ynhâld hat en wurdt brûkt om gatten yn te foegjen.

Alle dokuminten begjinne mei in root-tag , wêrûnder kin ferskine , , En .

Tag befettet stylblêden om konverzje nei oare formaten te fasilitearjen. YN lizze kodearre mei help basis64 gegevens dy't nedich wêze kinne om it dokumint te werjaan.

Elemint befettet alle nedige ynformaasje oer it boek: sjenre fan it wurk, list mei auteurs (folsleine namme, e-mailadres en webside), titel, blok mei trefwurden, annotaasje. It kin ek ynformaasje befetsje oer feroarings makke oan it dokumint en ynformaasje oer de útjouwer fan it boek as it op papier publisearre is.

Dit is hoe't diel fan it blok derút sjocht yn de FictionBook yngong foar wurket "A Study in Scarlet" troch Arthur Conan Doyle, nommen út Projekt 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>

De kaai komponint fan in FictionBook dokumint is . It befettet de tekst fan it boek sels. D'r kinne ferskate fan dizze tags yn it heule dokumint wêze - ekstra blokken wurde brûkt om fuotnoaten, opmerkings en notysjes op te slaan.

FictionBook biedt ek ferskate tags foar wurkjen mei hyperlinks. Se binne basearre op de spesifikaasje XLink, ûntwikkele troch it konsortium W3C spesifyk foar it meitsjen fan keppelings tusken ferskate boarnen yn XML-dokuminten.

Foardielen fan it formaat

De FB2-standert omfettet allinich de minimale fereaske set fan tags (genôch foar "ûntwerp" fiksje), wat de ferwurking troch lêzers simplifisearret. Boppedat, yn it gefal fan direkte wurking fan de lêzer mei it FB-formaat, de brûker hat de mooglikheid om te passen hast alle display parameters.

De strange struktuer fan it dokumint lit jo it proses fan konverzje automatisearje fan FB-formaat nei in oar. Deselde struktuer makket it mooglik om te wurkjen mei yndividuele eleminten fan dokuminten - opsetten filters troch boek skriuwers, titel, sjenre, ensfh Om dizze reden, it FB2-formaat hat opdien populariteit yn Runet, wurden de standert standert yn Russyske elektroanyske bibleteken en biblioteken yn de CIS lannen.

Neidielen fan it formaat

De ienfâld fan it FB2-formaat is syn foardiel en neidiel tagelyk. Dit beheint de funksjonaliteit foar komplekse tekstopmaak (bygelyks notysjes yn 'e marzjes). It hat gjin fektorgrafiken of stipe foar nûmere listen. Om dizze reden it formaat net hiel geskikt foar learboeken, referinsjeboeken en technyske literatuer (de namme fan it formaat sprekt sels oer dit - fiksjeboek, of "fiksjeboek").

Tagelyk, om minimale ynformaasje oer it boek wer te jaan - titel, skriuwer en omslach - moat it programma hast it hiele XML-dokumint ferwurkje. Dit komt om't metadata oan it begjin fan 'e tekst komme en ôfbyldings oan' e ein komme.

FB3 - formaat ûntwikkeling

Fanwege ferhege easken foar it opmaak fan boekteksten (en om guon fan 'e tekoarten fan FB2 te ferminderjen), begon Gribov te wurkjen oan it FB3-formaat. De ûntwikkeling is letter stoppe, mar yn 2014 wie it dat opnij.

Neffens de auteurs studearre se de echte behoeften by it publisearjen fan technyske literatuer, seagen se nei learboeken, referinsjeboeken, hantliedingen en sketten in mear spesifike set fan tags wêrmei't elk boek werjûn wurde soe.

Yn 'e nije spesifikaasje is it FictionBook-formaat in zip-argyf wêryn metadata, ôfbyldings en tekst wurde opslein as aparte bestannen. Easken foar it zip-bestânformaat en konvinsjes foar har organisaasje binne spesifisearre yn 'e standert ECMA-376, dy't Iepen XML definiearret.

In oantal ferbetterings binne makke yn ferbân mei opmaak (spaasje, ûnderstreken) en in nij objekt waard tafoege - in "blok" - dat in willekeurige fragmint fan in boek opmakket yn 'e foarm fan in fjouwerhoek en kin wurde ynbêde yn tekst mei in wraparound. D'r is no stipe foar nûmere en list mei kûgels.

FB3 wurdt ferspraat ûnder in fergese lisinsje en is iepen boarne, sadat alle nutsfoarsjenningen beskikber binne foar útjouwers en brûkers: converters, wolkeredakteuren, lêzers. Aktueel ferzje formaat, lêzer и redakteur kin fûn wurde yn it GitHub-repository fan it projekt.

Yn 't algemien is FictionBook3 noch minder wiidferspraat as syn âldere broer, mar ferskate elektroanyske bibleteken biede al boeken yn dit formaat oan. En liters kundige in pear jier lyn har foarnimmen oan om har hiele katalogus oer te setten nei in nij formaat. Guon lêzers stypje al de nedige FB3-funksjonaliteit. Bygelyks, alle moderne modellen fan ONYX-lêzers kinne wurkje mei dit formaat út 'e doaze, bygelyks, Darwin 3 of Kleopatra 3.

E-boeken en har formaten: FB2 en FB3 - skiednis, foar-, neidielen en prinsipes fan wurk
/ ONYX BOOX Cleopatra 3

Bredere ferdieling fan FictionBook3 sil in ekosysteem meitsje rjochte om folslein en effektyf te wurkjen mei tekst op elk apparaat mei beheinde boarnen: swart-wyt of lyts display, leech ûnthâld, ensfh.

PS Wy bringe ferskate resinsjes fan ONYX BOOX-lêzers ûnder jo oandacht:



Boarne: www.habr.com

Add a comment