FeHora
FeHora

Reputation: 346

Delphi 7 cyrillic characters not showing correctly

i recently asked (and paid) for translation of my Delphi app to support Macedonian (Cyrillic font) support. I posted text to translate to my contracted translator, she sent me back translated strings. The text was extracted from all my .dfm and .pas files

when i replaced the original text with cyrillic translation, i can open .dfm fies also .pas files in my favourite Notepad++ (or notepad) , and i see translated characters correctly.

When i open these files in Delphi (as dpr file) , i see something like this:

enter image description here

Please someone tell me how to convert/display these strings in Delphi correctly. I am using Macedonian regional settings, but it not helped me with this problem.

PS: Yes I am still using Delphi 7 because i love it / purchased this version.

UPDATE

Original text in Delphi: original: ПОДГОТВИ КУТИИ ЗРДРУГИТЕ ЦЕÐТРÐЛИ

Correct text: ПОДГОТВИ КУТИИ ЗА ДРУГИТЕ ЦЕНТРАЛИ

I noticed, when i change ParentFont property to false and font set to Verdana and Cyrillic (RUSSIAN_CHARSET) , then i copy/paste cyrillic text, it shows normally in Delphi

Upvotes: 1

Views: 2582

Answers (2)

Arnaud Bouchez
Arnaud Bouchez

Reputation: 43023

Your text file was UTF-8 encoded, whereas Delphi7 requires WinAnsi encoding, with codepage 1251 for Cyrillic characters.

You have the UTF8Decode() function in System.pas to make the conversion programmatically, if you prefer.

Upvotes: 0

FeHora
FeHora

Reputation: 346

OK so i SOLVED that!

The solution is multi step one, and Notepad++ is needed:

1st step: Replace all fonts in .dfm with (for example) Verdana , or some font that allows Cyrillic support

2nd step: Replace all ParentFont = False to ParentFont = True

3rd step: In notepad++ Choose: Encoding -> Convert to ANSI

that's all, do this for all .dfm and .pas file (only 3rd step)

i am happy to not Listened David Heffernan and not gave up!

Upvotes: 1

Related Questions