Sziasztok!
Csináltam egy postscript dokumentumsablont amibe egy perl szkript dinamikusan tölti fel az adatokat (név, cím). A gond az, hogy az adatok utf8-ba vannak és a .ps meg nem támogatja az utf8-at amennyire sikerült kiderítenem. Van valami program ami átfordítja az utf8-at a ps megfelelőjükre?
Én sajnos nem találtam semmit.
- 995 megtekintés
Hozzászólások
Anno csináltam ilyet. Ritka ronda, ha kell privátban keress meg.
(Olyan ronda, hogy nem raknám ki ide :)
- A hozzászóláshoz be kell jelentkezni
Nem lenne korrektebb (és szebb és rugalmasabb), ha a sablont TeXben csinálnád meg, azt töltenéd ki a perl szkripttel és aztán lefordítanád?
Így nem kéne aggódnod a kódolás miatt, mert csak két sort kell beszúrni a sablon preambulumába, a többit a TeX elintézi.
- A hozzászóláshoz be kell jelentkezni
Ezt próbáld ki olyan esetben is, amikor pl. nekem kellett: totál kész, évek óta működő rendszer, de egyszercsak (technikai okokból) a régi Latin2 kódolást felváltja a Utf8.
Aki PS-ben kódol, általában saját rutint használ a szövegek megjelenítésére, nem simán "(itt egy string) show" megoldást, ha másért nem, a tömörség kedvéért (PS-ben élg gyakori pl. a "/S{show}bind def" féle megoldás.
Ilyenkor pont jó, hogy elég a saját definíciónkat felülbírálni egy átkódolással, és egyébként nem kell a kódhoz nyúlni.
(Én pl. sokszor csak PS-template-ért feleltem, a mögöttes kódért nem.)
- A hozzászóláshoz be kell jelentkezni
Ha nem muszáj, nem keverném bele a tex-et is.
- A hozzászóláshoz be kell jelentkezni
egyrészt lehet olyat, hogy recode nevű progival átkódolod a kész ps fájlt, másrészt úgy tudom (nem szakértek hozzá) hogy perl-het van iconv interfész.
- A hozzászóláshoz be kell jelentkezni
Ha nem a Postscriptnek valamilyen saját kódolásáról van szó, hanem egy szabványos, nem utf8 kódolásról, akkor a Perl Encode modulja(i) aránylag egyszerű megoldást kínálhatnak. Sőt, talán annyi is elég lehet, hogy a megfelelő PerlIO layerrel nyitja meg írásra a kimeneti fájlt (
open my $out, ">:encoding(latin1)", $outfile or die;
).
- A hozzászóláshoz be kell jelentkezni
ez se rossz ötlet, jó lehet még az is, hogyha adatbázisból szedi ki, az adatbázis kliens karakterkódolását jó esetben lehet állítani és akkor az utf8-ban tárolt adatok latin2-ben jönnek ki.
- A hozzászóláshoz be kell jelentkezni
A PS-nek csak saját kódolása van (eltekintve pl. a ISOLatin1Encoding-tól), ezért pl. Latin2-höz mindenképpen a PS-t kell piszkálni.
- A hozzászóláshoz be kell jelentkezni
A perl scriptbe kell rakni iconv supportot, vagy kell ele rakni egy interface-t, ami fordit. Esetleg beallitod a terminalodat latin2-re :-)
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni