ARCDATA PRAHA, s.r.o.
ÚVODNÍ STRÁNKA KDO JSME CO JE TO GIS? HARDWARE SOFTWARE DATA ŠKOLENÍ PODPORA UŽIVATELŮ ARCREVUE

šipkaPODPORA UŽIVATELŮ
šipkaČASTÉ DOTAZY

menuPRAVIDLA
menuPODPOROVANÉ PRODUKTY
menuARCVIEW SERVIS

menuDownload
menuGIS Online
menuRok 2000
menuDiskuzní fórum
menuArchiv tiskových zpráv
menuKontakt
menuStruktura stránek

nadpisPodpora uživatelů


Časté dotazy


Čeština v ARC/INFO NT



Nabízíme návod k řešení problematiky češtiny v systému ARC/INFO na nejrozšířenější platformě Windows NT. Diskutována bude především problematika INTELLIFONTŮ a TrueType fontů, úprava textsetu, použití češtiny v annotacích i textech. Spíše než teoretické pojednání je tento text "kuchařkou" s cíleným popisem doporučených operací.

 
    1. Principy lokalizace, soubory codeset a fontindex

Těm, kteří se již problematikou lokalizace systému ARC/INFO někdy zabývali, patrně není třeba připomínat význam souborů codeset a fontindex. Pro ostatní tedy pouze stručné shrnutí, které podá informace potřebné pro správné pochopení dále popisovaných postupů. Detailní popis souborů codeset a fontindex je pochopitelně uveden v dokumentaci; podstatné je to, že jejich úpravou a dalšími souvisejícími operacemi lze dosáhnout toho, aby ARC/INFO psalo česky. Soubor codeset slouží pro transformaci kódové tabulky, fontindex představuje seznam fontů, které jsou systému ARC/INFO k dispozici. Oba tyto soubory jsou ve své standardní variantě uloženy v adresáři $ARCHOME\locale\c\. Mohou být kopírovány, přejmenovávány, upravovány a editovány. Cesta k aktuálně používaným variantám uvedených souborů včetně jejich jména je specifikována v proměnných AICODESET resp. AIFONTINDEX, přístupných postupem Start -> Settings -> Control Panel -> Systém -> Environment -> User Variables. (V unixu použijte pro nastavení těchto proměnných příkaz setenv.) "Zásobárnu" různých variantních souborů codeset představuje adresář $ARCHOME\locale\util\nls_codesets\.

Prohlížení a editaci souborů codeset a fontindex, doporučujeme provádět programem WordPad.

 
    2. Úpravy souborů codeset a fontindex

INTELLIFONTY

Při prohlížení souboru fontindex věnujte pozornost INTELLIFONTŮM Universe (č. fontu 94021 - 94024, tj. nikoliv Extrabold) a CG_Times (č. fontu 92500, 92501, 92504, 92505). Pouze tyto INTELLIFONTY podporují češtinu.

Pokud hodláte používat pouze české INTELLIFONTY, stačí změnit nastavení proměnné AICODESET na $ARCHOME\locale\util\nls_codesets\iso8859_2. Obsah uvedeného souboru, stejně jako originální fontindex soubor zůstávají beze změny.

V případě požadavku na použití INTELLIFONTŮ, které nejsou uvedeny v originálním fontindex souboru proveďte úpravu tohoto souboru analogicky dle postupu specifikovaného v následujících odstavcích týkajících se TrueType fontů.

TrueType fonty

Máte-li v úmyslu využívat i české TrueType fonty, je situace poněkud složitější, nicméně rovněž řešitelná. Doporučujeme následující postup:

Vytvořte adresář $ARCHOME\locale\cz\, do něho překopírujte soubor $ARCHOME\locale\c\fontindex pod názvem fontindexcz (nový fontindex soubor pro češtinu) a soubor $ARCHOME\locale\util\nls_codesets\iso8859_2 pod názvem iso8859_2cz (nový codeset soubor). Upravte příslušně specifikace proměnných AICODESET a AIFONTINDEX.

"Přepínání" mezi originální a českou verzí se bude později provádět právě pouze změnami nastavení AICODESET a AIFONTINDEX.

Z adresáře C:\WINNT\Fonts překopírujte do adresáře $ARCHOME\fonts\ například TrueType fonty Arial, Arial Italic, Arial Bold a Arial Bold Italic (není nutno se omezovat pouze na fonty skupiny obsahující v označení "CE", i když i tyto lze pochopitelně použít, pokud jsou k dispozici z Windows 3.11) a specifikaci těchto fontů doplňte nejlépe na konec souboru fontindexcz podle následujícího vzoru:

TRUETYPE 60009 $ARCHOME/fonts/arial.ttf 60009TRUETYPE 'Arial'   NAME   = arial   FAMILY = Arial   STYLE  = NormalTRUETYPE 60010 $ARCHOME/fonts/ariali.ttf 60010TRUETYPE 'Arial Italic'   NAME   = ariali   FAMILY = Arial   STYLE  = italic
atd.

V daném případě používané TrueType fonty budou mít tudíž čísla fontů 60009 - 60012 (musí se jednat o čísla v daném fontindex souboru dosud nepoužitá; poslední originální ESRI TrueType font má číslo 60008). Jedná se o rozšíření fontindex souboru, použití fontů uvedených v původním fontindex souboru není tímto doplněním nikterak omezeno.

Nyní doporučujeme krátký pohled do ArcDoc, a to na stranu přístupnou postupem ArcDoc -> Index -> codeset -> iso8859_1 code map. Zobrazí se jeden z codeset souborů, pro nás je však důležitá především terminologie. Každý codeset soubor se skládá dle helpu ze 4 sloupečků s označením "character", "Intellifont glyph number", "Unicode glyph number" a "glyph name" (pozor na rozpor s tištěným manuálem k ARC/INFO ver. 7 z roku 1994, kde je ve svazku "Map Display, Query and Output" na straně 427 uvedeno pro 2. a 3. sloupeček označení "Glyph number" a "EUC or ADE").

Aby vše nebylo tak jednoduché, z neznámo jakých důvodů mají reálné codeset soubory sloupečků ve skutečnosti 5, přičemž navíc oproti popisu v helpu je 2. z nich, který má ve všech namátkou kontrolovaných souborech ve všech řádcích hodnotu "1". Poslední sloupeček glyph name nebývá u všech řádků vyplněn.

Příklad - řádek codeset souboru iso8859_2 specifikující písmeno "a":    'a' 1 21 97 a

'a'  -  character
1  -  sloupeček neuvedený v ArcDoc
21  -  Intellifont glyph number
97  -  Unicode glyph number
a  -  glyph name

Pro další postup spusťe ARCPLOT a použijte příkaz

FONTDUMP <číslo_TrueType_fontu> SCREEN
    např. FONTDUMP 60009 SCREEN

Příkaz vypíše do grafického okna obsah daného fontu, přičemž před každým znakem je uvedeno jeho Unicode glyph number. (Popis funkce příkazu FONTDUMP v ARC/INFO Helpu není zcela stoprocentní - aplikace příkazu na TrueType fonty není blíže rozebrána.) FONTDUMP lze aplikovat pouze na fonty uvedené v aktuálním fontindex souboru.

U českých znaků, jejichž Unicode glyph number je ve výpisu fontu po příkazu FONTDUMP větší než 256 nahraďte v souboru iso8859_2cz u příslušného znaku v předposledním sloupečku původní hodnotu Unicode glyph number hodnotou uvedenou ve výpisu fontu po příkazu FONTDUMP, např:

Ř:    původní stav:    D8  1  777  216  Rcaron
opravený stav:   D8  1  777  344  Rcaron

Občas to chce trochu fantazie, např. Ť je v posledním sloupečku, dle kterého se znak hledá, označeno jako "Tcaron", ť je "tcaron", ů je "uringabove" atd. Potěšitelná je naopak skutečnost, že celá rodina fontů Arial má tyto hodnoty stejné. V případě potřeby lze vytvořit různé codeset soubory pro různé typy TrueType fontů. Podstatný je fakt, že úprava codeset souboru nemá vliv na použití INTELLIFONTŮ, například se souborem iso8859_2cz upraveným pro Arial TrueType fonty lze standatdně používat i dříve uvedené INTELLIFONTY.

 
    3. Úprava textsetu

INTELLIFONTY jsou obsaženy v textsetu $ARCHOME\symbols\font.txt, ale z fontů podporujících češtinu se v uvedeném textsetu nacházejí pouze fonty Universe (pořadové číslo fontů v textsetu 1 - 4). Další fonty, ať již ze skupiny INTELLIFONTŮ či TrueType lze do textsetu doplnit.

Doporučený postup:

  • soubor font.txt zkopírujte na font2.txt
  • spusťte ARCPLOT
  • nastavte TEXTSET font2
  • spusťte TEXTEDIT - otevře se prostředí pro úpravu textsetu.
  •  
  • V dialogovém boxu Textedit Menu aktivujte funkci Options , otevře se dialogový box Options. V něm počkejte (dokud z dolního okraje dialogového boxu Options nezmizí hlášení "Updating Scrolling List SYM ") na vyplnění výběrového menu se zobrazením fontů (původní soubor font.txt má 100 položek), najeďte na poslední, poté použijte funkci + (přidá font do textsetu) a v dialogovém boxu Textedit Menu vyberte ve výběrových menu Font family a Font style potřebný font (např. CG Times Plain). Číslo daného fontu specifikované ve fontindex souboru se objeví v dialogovém boxu Options v položce Font (pokud se tam nedoplní automaticky, zapište je ručně a odsouhlaste klávesou Enter). V případě potřeby lze rovněž nastavit položky Height, Char_gap, atd. Poté v dialogovém okně Textedit Menu použijte funkci Apply.

  •  
  • V dialogovém okně Options najeďte v přehledu fontů opět na poslední položku a celý postup přidání fontu zopakujte pro další fonty. Funkci Apply je třeba používat po přidání každého fontu.

  • Po přidání všech požadovaných fontů aktivujte funkci Save Textset v dialogovém boxu Options. Otevře se dialogový box se záhlavím Save Markerset (!!) a v něm je v položce Specify TEXTSET to be saved již automaticky vyplněno jméno zpracovávaného textsetu. Toto jméno lze editovat včetně specifikace adresáře, kde má být daný textset uložen. Pokud nezadáte žádný adresář, uloží se upravovaný textset do aktuálního workspace bez ohledu na to, kde byl uložen původně. Chcete-li tedy upravený textset uložit opět do adresáře $ARCHOME\symbols\, je nutno tuto specifikaci do položky Specify TEXTSET to be saved doplnit.
  •  
  • Při takto zpracovaných úpravách budou mít INTELLIFONTY CG Times v textsetu font2.txt čísla pořadí 101 - 104, za ně můžete ještě doplnit TrueType fonty Arial s čísly pořadí 105 - 108.

Poznámky:

- ačkoliv textsety mají příponu .txt, jedná se o neformátované (binární) soubory.
- nacházejí-li se 2 různé textsety téhož jména v adtesáři $ARCHOME\symbols\ a v aktuálním workspace, načte se při zadání jména textsetu prioritně ten, který je uložen v aktuálním workspace!
- smazání symbolu (= fontu) z textsetu je přístupné po aktivaci skupiny funkcí "Additional operations" v dialogovém boxu "Options".


 
    4. Zápis annotací v ARCEDITU


    
5. Zápis textu v ARCPLOTU

Nastavit některý češtinu podporující font - 2 varianty:

  1. TEXTFONT <číslo_češtinu_podporujícího_fontu_v_aktuálním_fontindex_souboru>
    parametr může nabývat hodnoty:94021 - 94024 (INTELLIFONTY Universe)
    92500, 92501, 92504, 92505 (INTELLIFONTY CG Times)
    60009 - 60012 (TrueType fonty Arial)
    v tomto případě nezáleží na aktuálně nastaveném textsetu.

  2. TEXTSET font2
    TEXTSYMBOL <pořadové_číslo_češtinu_podporujícího_fontu_v_aktuálním_textsetu>

    V případě obou variant poté následuje:
    TEXT ...      psát česky

    6. Vypsání českého textu ze souboru v prostředí ARCPLOTU

Text s češtinou připravit nejlépe v Notepadu; při jeho tvorbě použít z nabídky Notepadu fonty TT Arial, TT Times New Roman či MS Sans Serif.

V ARCPLOTU nastavit &codepage na hodnotu 1250 (default je 852 - aktuální nastavenou codepage lze v ARCPLOTU zjistit příkazem &show &codepage), dále nastavit některý čestinu podporující font (nemusí být totožný s fontem použitým v Notepadu) jedním ze způsobů uvedených v kap. 5.

Aplikovat příkaz TEXTFILE.

 
    7. Vypsání českých annotací v prostředí ARCPLOTU

  • TEXTSET font2
  • ANNOTEXT <jméno_coverage_s_českými_annotacemi>

    8. Použití coverage s českými annotacemi v ArcView

Přidejte jako téma annotace z dané coverage. Pokud se nevykreslí s češtinou, doporučujeme následující postup:

dvojklik na téma annotací -> editace legendy -> editace symbolu -> paleta fontů -> nastavit font Arial CE, Times New Roman CE nebo Courier CE (ve Windows NT musí být pochopitelně požadované fonty nainstalovány soubory cearial.ttf, cetimes.ttf, resp. cecour.ttf (též analogicky bold, kurzíva, ) všechny doporučujeme převzít z Windows 3.11)..

Tento postup funguje na annotace vytvořené INTELLIFONTY Universe i CG Times i na TrueType fonty Arial.

 
    9. Poznámky

Zápis velkého kroužkovaného Ů provádějte stiskem Alt+0217.

Zápis textu v ARCPLOTU: řetězce obsahující čárku, uvozovky, procenta, středník či mezeru je třeba "zabalit" do apostrofů napsaných z anglické klávesnice.

Zápis annotací v ARCEDITU: zapsání čárky či uvozovek - bez problémů; procenta a středník lze psát jen uvniř apostrofů - apostrofy se přitom stanou součástí annotace a vypíší se na obrazovku také.

Pro použití speciálních znaků doporučuji rovněž pozornosti ArcDoc, Index glyphs -> Intellifont patterns či TrueType patterns (resp. Intellifont glyphs či TrueType glyphs).

Zájemcům můžeme poskytnout soubory fontindexcz, iso8859_2cz a font2.txt zpracované výše uvedeným postupem.

Adresář C:\WINNT\fonts je přístupný v aplikaci My Computer; používáte-li File Manager, může se stát, že je tento adresář při default nastavení skrytý.

Obecně k úpravám codeset souboru:

Změny Intellifont glyph number mají vliv na INTELLIFONTY, změny Unicode glyph number na TrueType fonty (a patrně i na PostScriptové fonty - nebylo testováno). Provádíte-li úpravu codeset souboru za současného běhu ARCPLOTU či ARCEDITU, změna se projeví až po jejich příštím nastartování.

příklad

výřez codeset souboru iso8859_2:    'a' 1   21   97  a                                    'b' 1   16   98  b1. úprava: 	'a' 1   16   97  a		'b' 1   16   98  b    odezva:	TEXTFONT 92500	/* INTELLIFONT Universe		TEXT ab		/* vypíše na obrazovku: bb		TEXTFONT 60009	/* TrueType font Arial		TEXT ab		/* vypíše na obrazovku: ab2. úprava: 	'a' 1   21   98  a		'b' 1   16   98  b    odezva:	TEXTFONT 92500	/* INTELLIFONT Universe		TEXT ab		/* vypíše na obrazovku: ab		TEXTFONT 60009	/* TrueType font Arial		TEXT ab		/* vypíše na obrazovku: bb    3. úprava: 	'a' 1   16   98  a		'b' 1   16   98  b    odezva:	TEXTFONT 92500	/* INTELLIFONT Universe		TEXT ab		/* vypíše na obrazovku: bb		TEXTFONT 60009	/* TrueType font Arial		TEXT ab		/* vypíše na obrazovku: bb

 


[ ÚVODNÍ STRÁNKA ][ KDO JSME ][ CO JE TO GIS? ][ HARDWARE ][ SOFTWARE ]
[ DATA ][ ŠKOLENÍ ][ PODPORA UŽIVATELŮ ][ ARCREVUE ]