File Comparator: UNICODE znaky při změnách nejsou zobrazeny

Hlášení chyb a problémů programu Altap Salamander. Buďte, prosím, ve svých popisech co nejpodrobnější a vytvořte pro každý incident nový příspěvek. Nevkládejte programem generovaná hlášení o pádu programu, pošlete je e-mailem.
User avatar
zarevak
Plugin Developer
Plugin Developer
Posts: 789
Joined: 04 Feb 2006, 16:49
Location: Prague, Czech Republic

File Comparator: UNICODE znaky při změnách nejsou zobrazeny

Post by zarevak »

Dobrý den,
stále ještě oslavuji podporu UNICODE v File Comparatoru ;) Jenže ono to nějak nefunguje :( Na řádcích se změnami se nezobrazují UNICODE znaky (ani ty nezměněné - na řádku 21):
Ukázka problému s tradiční čínštinou
Ukázka problému s tradiční čínštinou
filecomparator_zhTW_problem.png (19.02 KiB) Viewed 5371 times
Další problém je, že pokud se snažím označit kousek řádku s čínštinou, tak se mi nikdy nedaří označit myší řádek od středu až do konce řádku:
Označuji myší od středu ke konci řádku, ale zbytek řádku nelze označit... (Dokonce je označení "ukončeno" uprostřed znaku)
Označuji myší od středu ke konci řádku, ale zbytek řádku nelze označit... (Dokonce je označení "ukončeno" uprostřed znaku)
filecomparator_select_problem.png (4.31 KiB) Viewed 5373 times
Systém: English Windows XPSP3 Pro s nainstalovanou podporou asijských a komplexních jazyků; File Comparator 1.11 PB 2; Font: Curier New, Script: Central European
Attachments
zhTW.zip
Porovnávané soubory
(1.34 KiB) Downloaded 381 times
Jan Patera
Plugin Developer
Plugin Developer
Posts: 707
Joined: 08 Dec 2005, 14:33
Location: Prague, Czech Republic
Contact:

Re: File Comparator: UNICODE znaky při změnách nejsou zobrazeny

Post by Jan Patera »

zarevak wrote:Windows XPSP3 Pro s nainstalovanou podporou asijských a komplexních jazyků; File Comparator 1.11 PB 2; Font: Curier New, Script: Central European
Doinstalovana podpora CJK (cinstina/japonstina/korejstina) neznamena, ze kazdy font obsahuje vsechny CJK glyphy. U me na XP64SP3 konkretne Courier New neobsahuje CJK glyphy. Nenabizi ani CJK skripty. Zkus jiny, opravdu cinsky, font.

K te selekci: Problem je v tom, ze GUI FC predpoklada, ze se pouziva fixed-width font, ktery opravdu je fixed-width. Ukazalo se, ze kdyz to GDI o nejakem fontu tvrdi, tak to neznamena, ze je to pravda. Nasli jsme priklady na Windows 6.0 (Vista) a 5.2 (XP64). Tvuj screenshot ukazuje, ze se tak deje i na Win 5.1 (XP32), prinejmensim se SP3 - preklad "Create Waypoint" ma 5 Kanji znaku, ale zabira prostor 9 znaku latinky.
Momentalne to FC resi na Win 5.2 a vyssich tak, ze znaky, ktere nabouravaji tvrzeni, ze font je fixed-width, jsou nahrazeny znakem 0xb7 (middle dot).
Prepsani GUI tak, aby nezaviselo na skutecne fixni sirce vsech znaku, je na todo.
Stejny duvod stoji za problematickou selekci u decomposed characters v (budouci) AS2.52b2.
Last edited by Jan Patera on 21 Apr 2009, 07:50, edited 1 time in total.
User avatar
zarevak
Plugin Developer
Plugin Developer
Posts: 789
Joined: 04 Feb 2006, 16:49
Location: Prague, Czech Republic

Re: File Comparator: UNICODE znaky při změnách nejsou zobrazeny

Post by zarevak »

Máš pravdu, Curier New neobsahuje znaky tradiční čínštiny. Ověřeno pomocí BabelMap (linkováno uživatelem Mem zde).

Pak mne ale překvapuje, že na řádcích, kde žádná změna není, jsou znaky zobrazené v pořádku... Že by nějaké automatické nahrazení fontu Windowsy? Proč funguje jen někde?

Vyzkoušel jsem fonty MingLiU (細明體) i NSimSun (新宋体), ale narazil jsem na problém s ořezáním textu dříve než na konci řádku. Pravděpodobně také způsobeno nefixní šířkou.
Ořezání konce řádek při použití fontu MingLiU.
Ořezání konce řádek při použití fontu MingLiU.
filecomparator_mingliu_problem.png (3.55 KiB) Viewed 5349 times
Jan Patera
Plugin Developer
Plugin Developer
Posts: 707
Joined: 08 Dec 2005, 14:33
Location: Prague, Czech Republic
Contact:

Re: File Comparator: UNICODE znaky při změnách nejsou zobrazeny

Post by Jan Patera »

zarevak wrote:Pak mne ale překvapuje, že na řádcích, kde žádná změna není, jsou znaky zobrazené v pořádku... Že by nějaké automatické nahrazení fontu Windowsy? Proč funguje jen někde?
Opet spolehani se na skutecne fixni sirky (pro vypocet rozhrani zmeny a nezmeny, stejne jako u rozhrani selekce a neselekce)...
Post Reply