RTF tiedostopääte. Kuinka avata .RTF-tiedosto

Vanhempi tekninen kirjoittaja

Joku lähetti sinulle RTF -tiedoston sähköpostitse, etkä tiedä kuinka avata se? Ehkä löysit RTF -tiedoston tietokoneeltasi ja mietit, mikä se oli? Windows saattaa kertoa, että et voi avata sitä, tai pahimmassa tapauksessa saatat saada vastaavan virheilmoituksen, joka liittyy RTF-tiedostoon.

Ennen kuin voit avata RTF -tiedoston, sinun on selvitettävä, millainen tiedosto RTF -tiedostopääte on.

Kärki: Virheelliset RTF -tiedoston kytkentävirheet voivat olla oireita muista taustalla olevista onglemista Windowsin käyttöjärjestelmässä. Nämä virheelliset merkinnät voivat myös aiheuttaa niihin liittyviä oireita, kuten Windowsin hidasta käynnistystä, tietokoneen jumiutumista ja muita tietokoneen suorituskykyongelmia. Siksi on erittäin suositeltavaa, että skannaat Windows-rekisterin virheellisten tiedostoyhdistelmien ja muiden pirstoutuneeseen rekisteriin liittyvien ongelmien varalta.

Vastaus:

RTF-tiedostot ovat tekstitiedostoja, jotka liittyvät ensisijaisesti Rich Text Format -tiedostoon.

Muut tiedostotyypit voivat myös käyttää RTF -tiedostotunnistetta. Jos tiedät muista tiedostomuodoista, jotka käyttävät RTF-tiedostotunnistetta, ota meihin yhteyttä, jotta voimme päivittää tietomme vastaavasti.

Kuinka avata RTF -tiedosto:

Nopein ja helpoin tapa avata RTF -tiedosto on kaksoisnapsauttaa sitä. Tässä tapauksessa Windows-järjestelmä itse valitsee tarvittavan ohjelman avaamaan RTF -tiedoston.

Jos RTF-tiedosto ei avaudu, on erittäin todennäköistä, että tietokoneellesi ei ole asennettu vaadittua sovellusohjelmaa RTF-tiedostojen katseluun tai muokkaamiseen.

Jos tietokoneesi avaa RTF -tiedoston, mutta käyttää väärää ohjelmaa, sinun on vaihdettava Windowsin rekisteritiedoston asetuksia. Toisin sanoen Windows yhdistää RTF-tiedostotunnisteet väärään ohjelmaan.

Asenna valinnaiset tuotteet - FileViewPro (Solvusoft) | | | |

RTF Multipurpose Internet Mail Extensions (MIME):

  • mime-sovellus/rtf
  • mime-teksti/richtext
  • mime teksti/rtf

RTF-tiedostoanalyysityökalu™

Etkö ole varma, minkä tyyppinen RTF-tiedosto on? Haluatko saada tarkat tiedot tiedostosta, sen luojasta ja kuinka se voidaan avata?

Nyt saat välittömästi kaikki tarvittavat tiedot RTF-tiedostosta!

Vallankumouksellinen RTF -tiedostoanalyysityökalu™ skannaa, analysoi ja raportoi yksityiskohtaiset tiedot RTF -tiedostosta. Patenttia odottava algoritmimme analysoi tiedoston nopeasti ja antaa yksityiskohtaisia ​​tietoja muutamassa sekunnissa selkeässä, helposti luettavassa muodossa.†

Vain muutamassa sekunnissa tiedät tarkalleen, minkä tyyppinen RTF-tiedosto sinulla on, tiedostoon liittyvän sovelluksen, tiedoston luoneen käyttäjän nimen, tiedoston suojaustilan ja muita hyödyllisiä tietoja.

Aloita ilmainen tiedostoanalyysi vetämällä ja pudottamalla RTF -tiedostosi alla olevan katkoviivan sisään, tai napsauttamalla "Selaa tietokonettani" ja valitsemalla tiedostosi. RTF-tiedostoanalyysiraportti näkyy alla, suoraan selainikkunassa.

Aloita analysointi vetämällä RTF-tiedosto tähän

Näytä tietokoneeni »

Tarkista myös tiedostoni virusten varalta

Tiedostoasi analysoidaan... odota.

RTF- eli Rich Text -tiedostomuodon suunnittelivat vuonna 1987 Charles Simonyi, Richard Brody ja David Luebbert Microsoft Word -kehitystiimistä asiakirjojen vaihtamiseen eri alustojen välillä. Joten mikä on RTF-tiedosto? Otetaanpa selvää...

Tiesitkö?
RTF-tiedostot koostuvat pääasiassa ASCII-koodeilla kirjoitetuista komennoista. Yksi tiedosto sisältää vain 7-bittisiä ASCII-merkkejä.

Microsoft kehitti RTF:n kattamaan tekstieditorin ja järjestelmän yhteensopivuuden välisen kuilun. RTF-syntaksin versio 1.0 perustui asettelukielen markkereihin. Sen on kehittänyt Microsoft Corporation asiakirjojen muotoilua varten. Asettelukielet ovat muotoilukieliä, kuten HTML (Hypertext Markup Language) ja SGML (Standard Generalized Markup Language). HTML tarjoaa muotoilun asiakirjoille World Wide Webissä. SGML on monipuolinen versio HTML:stä.

RTF-tiedostoissa ASCII-alueen ulkopuoliset merkit on koodattu "Escape-sarjan" avulla.

Unicode-pakomerkit: tätä sanaa seuraa 16-bittinen desimaaliluku. Tämä numero kuvaa Unicode UTF-16 -laitenumeroa.

Code-sivun pakokirjat: tämä sana sisältää kenoviivan ja heittomerkin edustamaan Windowsin koodisivulla käytettyä merkkiä.

Nämä komennot on kirjoitettu pääasiassa määrittämään sellaisia ​​tekijöitä kuin tekstin muotoilu, tekstin fontti, tekstiin upotetut kuvat, marginaali jne. Muotoilu on välttämätöntä eri asiakirjoille, kuten ansioluetteloille, kirjeille, käyttöohjeille jne. RTF-dokumenttien perusominaisuuksia ovat lihavointi, kursivointi, alleviivaus, kirjasintyylit, sisennys ja tasaus (vasen, keskellä, oikea).

RTF luku- ja kirjoituskonsepti

Ohjelmistoa, joka muuntaa RTF-tiedoston muotoilluksi tiedostoksi, kutsutaan "lukijaksi". Ohjelmistoa, joka muuntaa alustetun tiedoston RTF-muotoon, kutsutaan "kirjoittajaksi". Sen tehtävänä (sovellukselle) kuuluu tietokoodin ohjauksen erottaminen tekstikomponentista. Sitten se kirjoittaa uuden tekstitiedoston ja siihen liittyvät RTF-ryhmät.

Esimerkki RTF-koodista

( \rtf1\ansi(\fonttbl\f0\fswiss Helvetica;)\f0\pard Tämä on (\b lihavoitu) tekstiä.\par )

Tämä tiedosto näyttää tältä, kun RTF-muotoa tukeva ohjelma sen lukee.

Tämä on joitakin rasvainen teksti.

Komponenttikoodin määritelmä

  • () (kiharat olkaimet)

Aaltosulkeisiin kirjoitettu koodinpätkä määrittelee ryhmän.

Tätä merkkiä (vinoviivaa) käytetään määrittelemään RTF-tiedoston ohjauskoodin alku.

  • \RTF

Tämä on kirjoitettu osoittamaan, että RTF-dokumentti on kelvollinen. Kelvollinen asiakirja on asiakirja, jossa ryhmä alkaa \RTF-ohjauskoodilla.

Tämä tarkoittaa lihavoitua tekstiä.

  • \par

Tämä on ohjauskoodi kappaleen lopun osoittamiseen.

Fragmentti ( \b lihavoitu) osoittaa, että "lihavoitu" tyylin laajuus on rajoitettu sanaan "lihavoitu". Sisäkkäiset ryhmät ovat sallittuja RTF-tiedostoissa.

RTF-tiedostojen edut

Tiedostojen yhteensopivuus: RTF-tiedoston tärkein ominaisuus on sen yhteensopivuus useiden käyttöjärjestelmien ja tekstinkäsittelysovellusten kanssa.

Virus suojautuminen: Liike-elämän organisaatiot tai sähköpostipalvelimet luottavat vähemmän liitetiedostoihin (joissa on .doc-tunniste), koska ne voivat sisältää viruksia. Toisin kuin .doc-tiedostot, .rtf-tiedostot eivät sisällä makroja tai viruksia, joita tekstidokumentit saattavat sisältää.

Tiedoston koko:.rtf-muotoon tallennettu tekstitiedosto vie vähemmän tilaa kuin .doc-tiedosto. RTF-tiedostot käyttävät tekstikoodausta. Tämä on hyödyllistä, koska pieniä tiedostoja on helpompi ladata ja lähettää, ja ne säästävät myös levytilaa.

RTF-tiedostojen haitat

Turvallisuus: RTF-tiedostoja ei voi suojata salasanalla. Jos tiedosto sisältää luottamuksellisia tietoja, jotka on suojattava, on suositeltavaa käyttää muita muotoja.

Tiedoston koko: Jos tiedosto sisältää kuvia, Word-Art-kuvia jne., tiedostokoko on uskomattoman suurempi kuin vastaava .doc-tiedosto. Tämä on haitta, koska lataaminen ja lataaminen kestää kauemmin ja vie myös enemmän levytilaa.

Yleisin syy RTF-tiedoston avaamiseen liittyviin ongelmiin on yksinkertaisesti sopivien sovellusten puute asennettuna tietokoneellesi. Tässä tapauksessa riittää löytää, ladata ja asentaa sovellus, joka palvelee tiedostoja RTF-muodossa - tällaiset ohjelmat ovat saatavilla alla.

Hakukone

Anna tiedostopääte

Auttaa

Vihje

Huomaa, että joitakin koodattuja tietoja tiedostoista, joita tietokoneemme ei lue, voidaan joskus tarkastella Muistiossa. Tällä tavalla luemme tekstin katkelmia tai numeroita - Kannattaa tarkistaa toimiiko tämä menetelmä myös RTF-tiedostojen tapauksessa.

Mitä tehdä, jos luettelossa oleva sovellus on jo asennettu?

Usein asennetun sovelluksen pitäisi automaattisesti linkittää RTF-tiedostoon. Jos näin ei tapahdu, RTF-tiedosto voidaan yhdistää onnistuneesti manuaalisesti juuri asennettuun sovellukseen. Napsauta hiiren kakkospainikkeella RTF-tiedostoa ja valitse sitten käytettävissä olevista tiedostoista "Valitse oletusohjelma". Sitten sinun on valittava "Näytä" -vaihtoehto ja löydettävä suosikkisovelluksesi. Syötetyt muutokset on hyväksyttävä "OK"-vaihtoehdolla.

Ohjelmat, jotka avaavat RTF-tiedoston

Windows
Mac OS
Linux
Android

Miksi en voi avata RTF-tiedostoa?

RTF-tiedostojen ongelmilla voi olla myös muita syitä. Joskus edes RTF-tiedostoja tukevan ohjelmiston asentaminen tietokoneeseen ei ratkaise ongelmaa. Syy siihen, ettei RTF-tiedostoa voi avata ja työskennellä sen kanssa, voi myös olla:

Sopimattomat RTF-tiedostoyhdistelmät rekisterimerkinnöissä
- avaamamme RTF-tiedoston vioittuminen
- RTF-tiedostoinfektio (virukset)
- liian vähän tietokoneresursseja
- vanhentuneet ajurit
- RTF-laajennuksen poistaminen Windowsin rekisteristä
- RTF-laajennusta tukevan ohjelman epätäydellinen asennus

Näiden ongelmien korjaamisen pitäisi johtaa RTF-tiedostojen vapaaseen avaamiseen ja niiden käsittelyyn. Jos tietokoneessasi on edelleen ongelmia tiedostojen kanssa, sinun on otettava avuksi asiantuntija, joka selvittää tarkan syyn.

Tietokoneeni ei näytä tiedostopäätteitä, mitä minun pitäisi tehdä?

Windowsin tavallisissa järjestelmäasetuksissa tietokoneen käyttäjä ei näe RTF-tiedostotunnistetta. Tämän voi muuttaa onnistuneesti asetuksista. Mene vain "Ohjauspaneeliin" ja valitse "Näytä ja mukauttaminen". Sitten sinun on siirryttävä "Kansion asetukset" -kohtaan ja avattava "Näytä". "Näytä"-välilehdellä on vaihtoehto "Piilota tunnettujen tiedostotyyppien laajennukset" - sinun on valittava tämä vaihtoehto ja vahvistettava toiminto napsauttamalla "OK" -painiketta. Tässä vaiheessa kaikkien tiedostojen, mukaan lukien RTF, tunnisteiden pitäisi näkyä lajiteltuina tiedostonimen mukaan.

RTF (Rich Text Format) on tekstimuoto, joka on edistyneempi kuin tavallinen TXT. Kehittäjien tavoitteena oli luoda formaatti, joka on kätevä asiakirjojen ja e-kirjojen lukemiseen. Tämä saavutettiin sisällönkuvauskenttien tuen käyttöönoton ansiosta. Selvitetään, mitkä ohjelmat voivat toimia RTF-laajennuksella varustettujen objektien kanssa.

Kolme sovellusryhmää tukevat Rich Text Formatin käyttöä:

  • tekstinkäsittelyohjelmat, jotka sisältyvät useisiin toimistopaketteihin;
  • ohjelmistot elektronisten kirjojen lukemiseen (niin sanotut "lukulaitteet");
  • tekstieditorit.

Lisäksi jotkin yleiset katsojat voivat avata tällä laajennuksella varustettuja objekteja.

Tapa 1: Microsoft Word

Jos tietokoneellesi on asennettu Microsoft Office, RTF-sisältö voidaan näyttää ilman ongelmia Wordin tekstinkäsittelyohjelmalla.


Yleisesti ottaen Word toimii erittäin oikein RTF-muodon kanssa ja näyttää oikein kaikki objektit, joihin asiakirjassa on metatunnisteita. Mutta tämä ei ole yllättävää, koska ohjelman kehittäjä ja tämä muoto on sama - Microsoft. Mitä tulee RTF-dokumenttien muokkaamisen rajoituksiin Wordissa, tämä on enemmänkin itse muodon ongelma kuin ohjelman, koska se ei yksinkertaisesti tue joitain edistyneitä ominaisuuksia, joita käytetään esimerkiksi DOCX-muodossa. Wordin suurin haitta on, että määritetty tekstieditori on osa maksullista Microsoft Office -ohjelmistopakettia.

Tapa 2: LibreOffice Writer

Seuraava tekstinkäsittelyohjelma, joka voi toimia RTF:n kanssa, on Writer, joka sisältyy ilmaiseen LibreOffice-toimistosovelluspakettiin.


LibreOffice-aloitusikkunassa on vaihtoehtoinen vaihtoehto tekstidokumentin käynnistämiseksi.


Jos haluat ottaa käyttöön toisen vaihtoehdon objektin avaamiseen, siirry viimeiseen hakemistoon Kapellimestari, valitse itse tekstitiedosto ja vedä se pitämällä hiiren vasenta painiketta painettuna LibreOffice-ikkunaan. Asiakirja näkyy Writerissä.

On myös vaihtoehtoja avata tekstiä ei LibreOffice-aloitusikkunan kautta, vaan itse Writer-sovelluksen käyttöliittymän kautta.


Kuten näet, LibreOffice Writer tarjoaa enemmän vaihtoehtoja tekstin avaamiseen kuin Word. Mutta samaan aikaan on huomattava, että kun tämän muotoista tekstiä näytetään LibreOfficessa, jotkut välilyönnit on merkitty harmaalla, mikä voi häiritä lukemista. Lisäksi Libren kirjanäkymä on huonompi kuin Word-lukutila. Varsinkin tilassa "Kirjanäkymä" tarpeettomia työkaluja ei poisteta. Mutta Writer-sovelluksen ehdoton etu on, että sitä voidaan käyttää täysin ilmaiseksi, toisin kuin Microsoft Office -sovellus.

Tapa 3: OpenOffice Writer

Toinen ilmainen vaihtoehto Wordille RTF:ää avattaessa on käyttää OpenOffice Writer -sovellusta, joka sisältyy toiseen ilmaiseen toimistoohjelmistopakettiin - Apache OpenOfficeen.


On mahdollisuus käynnistää OpenOffice-paketin aloitusikkunasta.


On myös mahdollista käynnistää asiakirja vetämällä ja pudottamalla Kapellimestari OpenOffice-aloitusikkunaan samalla tavalla kuin LibreOffice.

Avaus tapahtuu myös Writer-käyttöliittymän kautta.


Itse asiassa kaikki OpenOffice Writerin edut ja haitat RTF:n kanssa työskennellessä ovat samat kuin LibreOffice Writerin: ohjelma on sisällön visuaalisessa näytössä huonompi kuin Word, mutta samalla, toisin kuin se, se on ilmainen. Yleisesti ottaen LibreOffice-toimistopakettia pidetään tällä hetkellä nykyaikaisempana ja edistyneempänä kuin sen pääkilpailija ilmaisten kollegojensa joukossa - Apache OpenOffice.

Tapa 4: WordPad

Jotkut tavalliset tekstieditorit, jotka eroavat yllä kuvatuista tekstinkäsittelyohjelmista vähemmän kehittyneillä toiminnallisuuksilla, tukevat myös RTF:n kanssa työskentelyä, mutta eivät kaikki. Jos esimerkiksi yrität ajaa dokumentin sisältöä Windows Notepadissa, saat miellyttävän lukemisen sijaan tekstiä metatageilla, joiden tarkoitus on näyttää muotoiluelementtejä. Mutta et näe itse muotoilua, koska Notepad ei tue sitä.

Mutta Windowsissa on sisäänrakennettu tekstieditori, joka selviää onnistuneesti tietojen näyttämisestä RTF-muodossa. Sitä kutsutaan WordPadiksi. Lisäksi RTF-muoto on sille tärkein, koska oletusarvoisesti ohjelma tallentaa tiedostoja tällä laajennuksella. Katsotaanpa, kuinka voit näyttää määritetyn muotoisen tekstin tavallisessa Windows WordPad -ohjelmassa.


Tosiasia on, että Windowsin rekisterissä WordPad on rekisteröity oletusohjelmistoksi tämän muodon avaamiseen. Siksi, jos järjestelmäasetuksiin ei ole tehty muutoksia, teksti avautuu WordPadissa määritettyä polkua käyttäen. Jos muutoksia on tehty, asiakirja käynnistetään käyttämällä ohjelmistoa, joka on oletusarvoisesti määritetty avaamaan se.

RTF on mahdollista käynnistää myös WordPad-liittymästä.


Tietenkin, mitä tulee sisällön näyttöominaisuuksiin, WordPad on huomattavasti huonompi kuin kaikki edellä luetellut tekstinkäsittelyohjelmat:

  • Tämä ohjelma, toisin kuin ne, ei tue työskentelyä kuvien kanssa, jotka voidaan upottaa asiakirjaan;
  • Hän ei jaa tekstiä sivuille, vaan esittää sen yhtenä nauhana;
  • Sovelluksessa ei ole erillistä lukutilaa.

Mutta samaan aikaan WordPadilla on yksi tärkeä etu edellä mainittuihin ohjelmiin verrattuna: sitä ei tarvitse asentaa, koska se sisältyy Windowsin perusversioon. Toinen etu on, että toisin kuin aikaisemmissa ohjelmissa, RTF:n käynnistämiseksi WordPadissa sinun tarvitsee oletusarvoisesti vain napsauttaa objektia Explorerissa.

Tapa 5: CoolReader

RTF:ää voivat avata paitsi tekstinkäsittelyohjelmat ja -editorit, myös lukijat, eli ohjelmistot, jotka on suunniteltu yksinomaan lukemiseen, ei tekstin muokkaamiseen. Yksi tämän luokan suosituimmista ohjelmista on CoolReader.


Kaiken kaikkiaan CoolReader näyttää RTF-sisällön muotoilun melko oikein. Tämän sovelluksen käyttöliittymä on mukavampi lukea kuin tekstinkäsittelyohjelmien ja erityisesti yllä kuvattujen tekstieditorien käyttöliittymä. Samanaikaisesti toisin kuin aiemmissa ohjelmissa, tekstiä ei voi muokata CoolReaderissa.

Tapa 6: AlReader

Toinen RTF:n kanssa työskentelyä tukeva lukija on AlReader.


RTF-sisällön näyttö tässä ohjelmassa ei eroa paljon CoolReaderin ominaisuuksista, joten valinta on tässä suhteessa makuasia. Mutta yleensä AlReader tukee useampia muotoja ja siinä on laajempi työkalupakki kuin CoolReader.

Menetelmä 7: ICE-kirjanlukija

Seuraava lukija, joka tukee kuvattua muotoa, on ICE Book Reader. Totta, se on enemmän suunnattu e-kirjojen kirjaston luomiseen. Siksi objektien avaaminen siinä eroaa olennaisesti kaikista aiemmista sovelluksista. Et voi suorittaa tiedostoa suoraan. Se on ensin tuotava ICE Book Readerin sisäiseen kirjastoon ja avattava vasta sitten.

  1. Aktivoi ICE Book Reader. Napsauta kuvaketta "Kirjasto", jota edustaa kansion muotoinen kuvake ylävaakapalkissa.
  2. Kun kirjasto-ikkuna avautuu, napsauta "Tiedosto". Valitse .

    Toinen vaihtoehto: napsauta kirjasto-ikkunassa kuvaketta "Tuo tekstiä tiedostosta" plusmerkin muodossa.

  3. Siirry avautuvassa ikkunassa kansioon, jossa tuotava tekstidokumentti sijaitsee. Valitse se ja napsauta "OK".
  4. Sisältö tuodaan ICE Book Reader -kirjastoon. Kuten näet, kohdetekstiobjektin nimi on lisätty kirjastoluetteloon. Aloita tämän kirjan lukeminen kaksoisnapsauttamalla hiiren vasenta painiketta tämän objektin nimessä kirjastoikkunassa tai napsauttamalla Enter julkaisunsa jälkeen.

    Voit myös valita tämän objektin napsauttamalla "Tiedosto" ja valitse sitten "Lue kirjaa".

    Toinen vaihtoehto: kun olet korostanut kirjan nimen kirjastoikkunassa, napsauta kuvaketta "Lue kirjaa" työkalurivin nuolen muodossa.

  5. Mikä tahansa yllä olevista toiminnoista näyttää tekstin ICE Book Readerissa.

Yleensä, kuten useimmat muut lukijat, RTF-sisältö ICE Book Readerissa näkyy oikein, ja lukumenettely on varsin kätevä. Mutta avausprosessi näyttää monimutkaisemmalta kuin aikaisemmissa tapauksissa, koska se on tuotava kirjastoon. Siksi useimmat käyttäjät, joilla ei ole omaa kirjastoa, käyttävät mieluummin muita katsojia.

Tapa 8: Universal Viewer

Monet yleiset katsojat voivat myös työskennellä RTF-tiedostojen kanssa. Nämä ovat ohjelmia, jotka tukevat täysin erilaisten objektiryhmien katselua: video, ääni, teksti, taulukot, kuvat jne. Yksi tällainen sovellus on Universal Viewer.


On myös toinen vaihtoehto.


Universal Viewer näyttää RTF-objektien sisällön tyylillä, joka on samanlainen kuin tekstinkäsittelyohjelmien näyttötyyli. Kuten useimmat muut yleisohjelmat, tämä sovellus ei tue kaikkia tiettyjen muotojen standardeja, mikä voi johtaa virheisiin joidenkin merkkien näyttämisessä. Siksi Universal Vieweria suositellaan käytettäväksi yleiseen tutustumiseen tiedoston sisältöön, ei kirjan lukemiseen.

Olemme esitelleet sinulle vain osan niistä ohjelmista, jotka voivat toimia RTF-muodon kanssa. Samalla yritimme valita suosituimmat sovellukset. Tietyn käytännön valinta riippuu ensisijaisesti käyttäjän tavoitteista.

Joten jos objektia on muokattava, on parasta käyttää tekstinkäsittelyohjelmia: Microsoft Word, LibreOffice Writer tai OpenOffice Writer. Lisäksi ensimmäinen vaihtoehto on parempi. Kirjojen lukemiseen kannattaa käyttää lukuohjelmia: CoolReader, AlReader jne. Jos hallitset myös omaa kirjastoasi, niin ICE Book Reader sopii. Jos sinun täytyy lukea tai muokata RTF:ää, mutta et halua asentaa lisäohjelmistoja, käytä sisäänrakennettua Windowsin tekstieditoria WordPadia. Lopuksi, jos et tiedä, mitä sovellusta käyttää tietyn muotoisen tiedoston käynnistämiseen, voit käyttää jotakin yleisistä katseluohjelmista (esimerkiksi Universal Viewer). Vaikka tämän artikkelin lukemisen jälkeen tiedät jo kuinka avata RTF.

No, jatketaan tutkimusta saadaksemme tekstiä eri tietomuodoista. Ei kauan sitten opimme poimimaan tekstiä zip-xml-pohjaisista tiedostoista (odt ja docx) ja myös aiemmin tällä viikolla pdf-tiedostosta. Tänään jatketaan luvatulla rtf:llä.

Rich Text Format (alias rtf), saatat ajatella, on melko unohdettu, vaikkakaan ei kovin monimutkainen muoto tekstidatan esittämiseen. No, tekstin saaminen on suhteellisen helppoa, mutta historiansa aikana: ensimmäisestä versiostaan ​​nykyiseen versioon 1.9.1 - se on hankkinut noin 300 sivua virallista dokumentaatiota ja valtavan määrän lisäosia, jotka suurelta osin häiritsevät meitä kun vastaanotamme pelkkää tekstiä, yritetään kiertää niitä...

Mitä on sisällä?

Kuten tavallista, katsotaanpa rtf-tiedoston sisälle ja katsotaan mitä sen sisällä on:

Mitä me näemme? Näen suosikkirunomme "Purje". Näemme aluksi 8-bittisen tekstimuotoisen datamuodon. Tämä on jo rohkaisevaa - kun lähdetieto sisältää tekstiä, on paljon helpompi ymmärtää mitä tapahtuu. Nyt selvitetään, kuinka nämä tiedot luetaan. Tätä varten kerron sinulle pienen teorian aiheesta.

Oletetaan, että rtf koostuu ohjaussanat, mikä voi olla ryhmitelty sisäkkäisiksi ryhmiksi. Ohjaussana alkaa kenoviivalla (\), ryhmä on kääritty aaltosulkeisiin (( ja )).

Ohjaussana koostuu englannin aakkosten kirjaimista (a:sta z:hen), ja se voidaan täydentää numeerisella parametrilla (mahdollisesti negatiivinen). Vaihtoehtoisesti sana voi sisältää yhden ei-aakkosisen ascii-merkin. Mikään, mikä ei kuulu näiden sääntöjen piiriin, ei ole osa ohjaussanaa. Näin ollen sekvenssi, jonka muoto on \rtf1\ansi\ansicpg1251, voidaan helposti jakaa kolmeen sanaan rtf parametrilla 1 (muodon pääversio), ansi (nykyinen koodaus) ja ansicpg parametrilla 1251 (nykyinen koodisivun numero 1251 - eli Windows -1251).

Ryhmitellyt joukot määrittelevät ohjaussanojen laajuuden. Siten aaltosulkeiden sisällä kuvatut ohjaussanat toimivat vain niiden ja kaikkien alaryhmien sisällä. Jotta voit selvittää oikein, mitkä sanat ovat nyt läsnä, sinun on ylläpidettävä pinoa ohjaussanoja. Kun avaat aaltosulkeen, luo pinoon uusi taulukkoelementti, johon lisäät välittömästi tiedot pinon edellisestä tasosta, kun suljet aaltosulkeen, poista ylin kerros.

On myös syytä huomata, että jotkin ohjaussanat voidaan sulkea lisäämällä nollaparametri uuden alaryhmän luomisen sijaan. Esimerkiksi seuraavat vaihtoehdot ovat vastaavia: Tämä on (\b lihavoitu) teksti , Tämä on \b lihavoitu \b0 teksti = Tämä on rohkea tekstiä.

Mistä tekstiä saa?

Tutustuimme meille uuden muodon laitteeseen, nyt kysymme itseltämme, mistä tekstin saa. Kaikki täällä ei ole niin monimutkaista kuin miltä saattaa näyttää - teksti on otettava, jos nykyistä sekvenssiä ei tunnisteta ohjaussanaksi. Paria poikkeusta lukuun ottamatta tietysti.

Ensinnäkin on syytä huomata, että rtf-tiedoston alkuperäinen koodaus on ANSI, joten ilman hienouksia vain englanninkielinen teksti tallennetaan. Olemme kiinnostuneita ainakin venäläisestä tekstistä ja vielä paremmin Unicodesta, eikö niin? Mikä on totta, on totta - rtf, vaikkakin vanha muoto, sopii molempien tallentamiseen.

Joten rtf":ssä on mahdollista käyttää ASCII-taulukon toista puoliskoa, eli 128:sta ja korkeammasta. Ottaen huomioon nykyisen koodauksen (ohjaussanan \ansicpg yläpuolella), tietysti. Tätä varten sarja muoto \"hh otettiin käyttöön RTF:ssä, jossa hh on ASCII-taulukon merkin binäärinen heksadesimaalikoodi.

No, toinen, mielenkiintoisempi vaihtoehto on unicode-koodattu data. Heille muoto sisältää ytimekkäästi lyhyen avainsanan \uABCD digitaalisella parametrilla ABCD. ABCD on tässä tapauksessa unicode-merkin koodi desimaalilukujärjestelmässä. Kaikki on jälleen yksinkertaista, kuten olet ehkä huomannut.

Yksinkertaista, mutta ei kovin hyvää. Rtf:ssä on toinen avainsana, \ucN, joka liittyy läheisesti Unicodeen. Tosiasia on, että RTF-muoto ylläpitää innokkaasti yhteensopivuutta vanhempien laitteiden kanssa, joissa saatat joutua avaamaan tämän tiedoston. Vaihtoehtoisesti tällainen laite (esimerkiksi tietokone, jossa on Windows 3.11:) ei pysty lukemaan Unicodea, mitä sen pitäisi tehdä? Tätä varten jokaisen avainsanalla \u salatun unicode-merkin jälkeen voidaan määrittää nollasta useaan merkkiin, jotka on näytettävä, jos rtf-katseluohjelma ei pysty näyttämään tai jäsentämään nykyistä dataa (dokumentaation mukaan, jos katsoja ei voi näyttää tietoja oikein, sen on ohitettava ne).

Tässä suhteessa useimmat nykyaikaiset editorit laittavat kysymysmerkin unicode-ohjaussanan jälkeen merkkinä siitä, että he haluavat näkyvän nykyisen merkin sijaan. Mutta myös vaihtoehdot ovat mahdollisia, esimerkiksi: Lab\u915GValue . Kysytään itseltämme, kuinka monta merkkiä on näytettävä, jos Unicodea ei voida näyttää. Jälleen, kaikki ei ole kovin monimutkaista - yllä oleva avainsana \ucN parametrina N tarjoaa tämän arvon. Ne. Jotain \uc1:n kaltaista näkyy ehdottomasti ennen Unicode-tietoja, mikä käskee ohittamaan yhden merkin unicoden jälkeen.

Luetaan!

Näyttää siltä, ​​että keräämämme tiedot riittävät ensimmäisten rtf-tiedostojemme lukemiseen. Mennään:
  1. funktio rtf_isPlainText($s) (
  2. $failAt = array ("*" , "fonttbl" , "colortbl" , "datastore" , "themedata" ) ;
  3. for ($i = 0; $i< count ($failAt ) ; $i ++ )
  4. if (! tyhjä ($s [ $failAt [ $i ] ]) ) return false ;
  5. return true ;
  6. funktio rtf2text($tiedostonimi) (
  7. $teksti = file_get_contents($tiedostonimi);
  8. if (!strlen($text))
  9. palauttaa "" ;
  10. $dokumentti = "" ;
  11. $pino = array () ;
  12. $j = -1;
  13. for ($i = 0; $i< strlen ($text ) ; $i ++ ) {
  14. $c = $teksti [ $i ] ;
  15. kytkin ($c) (
  16. tapaus" \\ " :
  17. $nc = $teksti [ $i + 1 ] ;
  18. if ($nc == "\\" && rtf_isPlainText($pino [ $j ] ) ) $document .= "\\" ;
  19. elseif ($nc == "~" && rtf_isPlainText($pino [ $j ] ) ) $document .= " " ;
  20. elseif ($nc == "_" && rtf_isPlainText($pino [ $j ] ) ) $dokumentti .= "-" ;
  21. elseif ($nc == "*" ) $pino [ $j ] [ "*" ] = tosi ;
  22. elseif ($nc == """ ) (
  23. $hex = substr ($teksti, $i + 2, 2);
  24. $document .= html_entity_decode ("" . hexdec ($hex ) . ";" ) ;
  25. $i += 2;
  26. ) elseif ($nc >= "a" && $nc<= "z" || $nc >= "A" && $nc<= "Z" ) {
  27. $sana = "" ;
  28. $param = nolla ;
  29. for ($k = $i + 1, $m = 0; $k< strlen ($text ) ; $k ++, $m ++ ) {
  30. $nc = $teksti [ $k ] ;
  31. if ($nc >= "a" && $nc<= "z" || $nc >= "A" && $nc<= "Z" ) {
  32. jos (tyhjä ($param) )
  33. $sana .= $nc ;
  34. muu
  35. tauko ;
  36. ) elseif ($nc >= "0" && $nc<= "9" )
  37. $param .= $nc ;
  38. elseif ($nc == "-" ) (
  39. jos (tyhjä ($param) )
  40. $param .= $nc ;
  41. muu
  42. tauko ;
  43. ) muuta
  44. tauko ;
  45. $i += $m - 1;
  46. $toText = "" ;
  47. kytkin(strtolower($sana)) (
  48. tapaus "u":
  49. $toText .= html_entity_decode ("" . dechex ($param ) . ";" ) ;
  50. $ucDelta = @ $pino [ $j ] [ "uc" ] ;
  51. jos ($ucDelta > 0 )
  52. $i += $ucDelta ;
  53. tauko ;
  54. case "par" : case "page" : case "sarake" : case "line" : case "lbr":
  55. $toText .= " \n";
  56. tauko ;
  57. kirjainkoko "emspace" : kirjainkoko "enspace" : kirjainkoko "qmspace":
  58. $toText .= " " ;
  59. tauko ;
  60. case "tab" : $toText .= " \t";
  61. tauko ;
  62. case "chdate" : $toText .= päivämäärä ("m.d.Y" ) ;
  63. tauko ;
  64. case "chdpl" : $toText .= päivämäärä ("l, j F Y" ) ;
  65. tauko ;
  66. kirjainkoko "chdpa" : $toText .= päivämäärä ( "D, j M Y" ) ;
  67. tauko ;
  68. case "chtime" : $toText .= päivämäärä ( "H:i:s" );
  69. tauko ;
  70. kirjainkoko "emdash" : $toText .= html_entity_decode ("—" ) ;
  71. tauko ;
  72. kirjainkoko "endash" : $toText .= html_entity_decode ("-" ) ;
  73. tauko ;
  74. tauko ;
  75. kirjainkoko "bullet" : $toText .= html_entity_decode ("" ) ;
  76. tauko ;
  77. kirjainkoko "lquote" : $toText .= html_entity_decode ("'" ) ;
  78. tauko ;
  79. tauko ;
  80. case "rquote" : $toText .= html_entity_decode ("'" ) ;
  81. tauko ;
  82. tauko ;
  83. kirjainkoko "ldblquote" : $toText .= html_entity_decode (""" ) ;
  84. tauko ;
  85. tauko ;
  86. kirjainkoko "rdblquote" : $toText .= html_entity_decode (""" ) ;
  87. kirjainkoko "endash" : $toText .= html_entity_decode ("-" ) ;
  88. kirjainkoko "bullet" : $toText .= html_entity_decode ("" ) ;
  89. tauko ;
  90. tauko ;
  91. oletus:
$pino [ $j ] [ strtolower ($word ) ] = tyhjä ($param ) ? tosi : $param ;