Ugrás a tartalomhoz
TextArray
100% helyi

Ascii85 kódolás és dekódolás

Kódolj szöveget Ascii85-ba (base85), és fejtsd vissza, tetszés szerint Adobe határolókkal.

Bemenet

Ascii85 kódolás és dekódolás

Az Ascii85, más néven base85, a Base64-nél tömörebben csomagolja a bináris adatot nyomtatható szöveggé. Minden négy bájtot öt karakterre képez le a „!" és „u" közötti tartományból, így a kimenet csak nagyjából negyedével nő a harmad helyett. Éppen ez a sűrűség az oka, hogy az Adobe beépítette a PostScriptbe és a PDF-be, ahol beágyazott képeket, betűtípusokat és adatfolyamokat burkol, és hogy felbukkan a Git bináris javításaiban és objektumazonosítóiban is.

Válassz irányt, és illeszd be a szöveget. A kódolás a bemenet UTF-8 bájtjait veszi, és csoportonként alakítja át; az utolsó, egy–három bájtos részleges csoportot pontosan az Adobe specifikáció szerint egészíti ki és vágja le, így a hossz visszaalakításkor mindig stimmel. A dekódolás megfordítja ezt: a beillesztett értékben lévő szóközök és sortörések nem számítanak, így a PDF-ből vagy e-mailből kimásolt adat is tisztán beolvasható, az eredmény pedig szövegként jelenik meg.

Két beállítás felel meg az Adobe változatnak. Az „Adobe határolók" a PostScript által várt <~ és ~> jelekkel burkolja a kimenetet; a dekódoló ezeket a jeleket eltávolítja, akár szerepelnek, akár nem, így kerettel és keret nélkül is beilleszthető az érték. A „Nullacsoportok rövidítése z-ként" minden négybájtos nullacsoportra egyetlen z-t ír ki — ez a szokásos rövidítés, amelyet a dekódoló a beállítástól függetlenül mindig ért.

Ha valami nem stimmel, az eszköz megmondja, mi és hol: a tartományon kívüli karaktert a pozíciójával nevezi meg, a csoport belsejébe tévedt z-t megjelöli, a csonka utolsó csoportot pedig jelzi, ahelyett hogy csendben zagyvaságot állítana elő. Minden a böngésződben fut, így semmi beillesztett adat nem töltődik fel sehová. Az eredményt másold ki, vagy töltsd le .txt fájlként.

Gyakori kérdések

Miben különbözik az Ascii85 a Base64-től?
Mindkettő nyomtatható szöveggé alakítja a bináris adatot, de az Ascii85 négy bájtot öt karakterrel kódol, nem hármat néggyel, ezért tömörebb — nagyjából 25% többlet a 33%-kal szemben. Szélesebb ábécét használ („!" és „u" között), ezért a PostScriptben, PDF-ben és Gitben fordul elő, nem URL-ekben vagy e-mail-fejlécekben.
Mit csinálnak az Adobe határolók?
A PostScript és a PDF az Ascii85 adatot az elején <~, a végén ~> jellel burkolja. Kapcsold be a beállítást, hogy kódoláskor hozzáadja őket. Dekódoláskor a jeleket automatikusan eltávolítja, akár ott vannak, akár nem, így kerettel és anélkül is működik az érték.
Mi a z rövidítés?
A négy nullbájtból álló csoport öt felkiáltójelként kódolódna; az Adobe változat egyetlen z-re rövidíti. Hagyd bekapcsolva a szokásos kimenethez, vagy kapcsold ki, ha egy szigorú eszköznek a teljes !!!!! alak kell. A dekódoló a z-t mindig elfogadja, de csak egész csoport helyett, soha nem a közepén.
Miért jelzi a dekódolás, hogy az adat bináris?
A PDF-ekben az Ascii85 általában képeket vagy betűtípusokat burkol, amelyek nyers bináris adatok, nem szöveg. Ha a dekódolt bájtok nem érvényes UTF-8-at adnak, az eszköz szól, ahelyett hogy helyettesítő karaktereket írna ki. A magad kódolta szöveg mindig tisztán fejthető vissza.
Feltöltődik valahová a szövegem?
Nem. A kódolás és a dekódolás teljes egészében a böngésződben fut, és az adataid soha nem hagyják el az eszközödet.