CUPS encoding - ékezetes karaktereket de hogyan ?!!!!

Fórumok

Hi mindenkinek!

adottak:
OS: SLES-9-i386-SP2
kernel: 2.6.5-7.201-bigsmp
nyomtató:HP LAserJet 1300
CUPS v. 1.2.0

a nyomtató ppd fájljában ez van:
....
LanguageVersion: English
LanguageEncoding: ISOLatin1
.....

hogy lehetne megoldani hogy nyomtassak ékezetes azaz ISOLatin2 -es karaktereket is ?

már egy hete guglizok, de nem jutottam érdemleges eredményre!!!!

próbáltam átírni a paramétereket Hungarian, ISOLatin2 -re de semmi, ill.
a PPD leírások alapján másik fájlba tenni a módosítanod paramétereket iígy:

Másik fájl tartalma:
Include "/etc/cups/ppd/HPIJS.ppd" --> eredeti driver fájl!
LanguageVersion: Hungarian
LanguageEncoding: ISOLatin2

de semmi!!!!
Ha tudtok segítsetek légyszí!
Meg -lehet -e ezt oldani egyáltalán, mi a járható megoldás? (általánosságra gondolok nem kell pontosan erre a nyomtatóra, ugyanis több tucat nyomtatónál kell megoldanom ezt a sz*.t

Hozzászólások

trey: bannold legyszi ezt a barmot! mar 3x hozta letre ugyanazt kulonbozo subjecttel.

A fórumhoz való hozzászólás esetén meg lehet nézni az "Elölnézetben" mit küldesz be. Én kétszer megnéztem utána beküldtem a hozzászólásomat, mind a kétszer nem jelent meg a listában , ezért elküldtem harmadszorra direktben . Ezért a "sok hirdetés" , megköszönöm ha nem bannoltok, egyébként nem vagyok barom. köszi.

Nekem is ez van a beallitva de nem szamit.

Az UHU-Linux pl utf-8 ami ezt vegzi az a gs illetve az eps csomag. Ez a ket proram/csomag pedig atalakitja a nyomtatonak emeszheto formatumba (ps?) a nyomtatni valot. ha neked gondod van, akkor 100% hogy nem a cups a problemad, hanem a helytelen locale, ami nalam igy nez ki:


root:/etc/cups/ppd# locale
LANG=hu_HU.UTF-8
LC_CTYPE="hu_HU.UTF-8"
LC_NUMERIC="hu_HU.UTF-8"
LC_TIME="hu_HU.UTF-8"
LC_COLLATE="hu_HU.UTF-8"
LC_MONETARY="hu_HU.UTF-8"
LC_MESSAGES="hu_HU.UTF-8"
LC_PAPER="hu_HU.UTF-8"
LC_NAME="hu_HU.UTF-8"
LC_ADDRESS="hu_HU.UTF-8"
LC_TELEPHONE="hu_HU.UTF-8"
LC_MEASUREMENT="hu_HU.UTF-8"
LC_IDENTIFICATION="hu_HU.UTF-8"
LC_ALL=

Szal ezeknek kelene utanna jarni. melyik disztro is? Suse? (ha igen, akkor nem tudom, mit keresek itt :))

Alapvetően két eset lehetséges: a cups vagy sima szöveget kap, vagy pedig postscriptet. Utóbbi esetben nyilván az fog a nyomtatóra érkezni, ami a postscript fájlban áll, így a kérdés csak a sima szöveg esetre vonatkozik, például amikor megszerkesztesz egy sima fájlt:
joe NOTES (vagy vim, vagy ki mit szeret)
és írsz bele ékezeteket is, majd így nyomtatod ki:
lpr NOTES

A következőt vettem észre: Az lpr parancs figyelembe veszi a locale-t, roppant érdekes módon. Ha a locale hu_HU (tehát iso-8859-2), akkor a fájlt iso-8859-1 kódolásban értelmezi, tehát hullámos-kalapos ékezeteket nyomtat ki. Ha viszont a locale hu_HU.UTF-8, akkor a fájlt UTF-8 kódolásban értelmezi, és ennek megfelelően gyönyörűen tud akár magyar ékezeteket is nyomtatni.

A ppd fájlokban mindeközben az eredeti általad is idézett English és ISOLatin1 szerepel, ezek átírásával nem próbálkoztam. Lehet hogy az segít (ne felejtsük el a cupsd-t újraindítani, fingom sincs hogy szükség van-e erre, de hátha).

A SUSE fórumban vagyunk, a SUSE pedig régóta UTF-8-at használ, így szerintem neked ennek úgyanúgy működnie kéne, mint ahogy UHU-ban is megy alapból. Viszont te meg azt írod, hogy "hogy lehetne megoldani hogy nyomtassak ékezetes azaz ISOLatin2 -es karaktereket is ?". Elvesztettem a fonalat...

Mik a locale beállításaid? Milyen kódolású a szövegfájl? Milyen SUSE verzió? Milyen cups verzió?

Pontosan hogyan (milyen paranccsal, milyen programból) nyomtatsz?

Ha átalakítod a szövegfájlt UTF-8-ra, és az lpr parancsot LC_ALL=hu_HU.UTF-8 locale-lel hívod meg, akkor mi jön ki a nyomtatóból?

Sziasztok!

Köszönöm a segítséget mindenkinek! Az LC* változtatásai nem vezettek eredményre , viszont mivel a tudás szexuális utón terjed (sz*ás) :))) elmondom a megoldást amire időközben rájöttem.
A locale beállításait több ok miatt sem változtatthattam meg direkt, shell szinten lokális változókkal próbáltam azért tesztelni de nem vezetett eredményre.

Viszont, igazából teljesesen mindegy a driver kódolása (nem számít hogy ISOLatin1 v. Japán.)
Létezik egy a2ps nevű kis utility ami úgy "rágja meg" a print job-ot hogy az nekünk a megfelelő formátumban jöjjön ki a nyomtatóból.

Tehát a megoldás:
1. A CUPS-ban felveszem a nyomtatót *.ppd driverrel (akár Latin1 -es v. Japán )
2. azt mondom szkriptből az a2ps -nek ( azért scriptből mert LINC 3.3 ill. applickációból nyomtatok )

hogy:

a2ps -P NYOMTATO --medium='A4' -l80 --font-size=8 --landscape \
-j --borders=no --stdin=REPORT --encoding=ISO-8859-2 $1

a paramétereket lásd itt: info a2ps

Köszönöm a segítséget!:)

egmont és Oregon javaslatát ki fogom próbálni otthon:))