5

I am searching for a c# code that can be used to get Hindi text to English transliteration.

Also tell me if there is any api available for c#.

John Saunders
  • 160,644
  • 26
  • 247
  • 397
Deepak
  • 97
  • 3
  • 5
  • 1
    FYI, there's no such thing as "C#.NET". The language is named "C#". – John Saunders May 06 '11 at 16:45
  • There is a java api for translating text using the google translator. Its one easy way, you can create one like that for your c# lang too. You cant achieve without the google/some translators help. May be Skeet may know it :) – Andrew Collins May 06 '11 at 16:53
  • 5
    Note for future posters: He asks for transliteration, not translation. There's quite a big difference between those two! – nantito May 06 '11 at 17:00

3 Answers3

2

Windows 7+ can do this for Hindi/Devanagari with Extended Linguistic Services. (You'll need the Windows API Code Pack to do it from .NET.)

Kevin Panko
  • 8,356
  • 19
  • 50
  • 61
Arithmomaniac
  • 4,604
  • 3
  • 38
  • 58
2

From what I see, this isn't an easy thing to do but it can be done. Google has provided an API to help out: http://www.techdreams.org/google/trick-to-use-google-indic-transliteration-service-in-c-java-php-and-other-programming-languages/1134-20090122

I know this is a broad answer but it matches the broadness of the question. You will need to do the research on how to implement this in your code.

IAmTimCorey
  • 16,412
  • 5
  • 39
  • 75
2

There is a .NET library for transliteration on codeplex: http://unidecode.codeplex.com/ - it'd help.

Evgeny Gavrin
  • 7,627
  • 1
  • 22
  • 27
  • Special symbols had to be replaced with its english analogue, like "éåäöíØ" => "eaaoiO" – Evgeny Gavrin May 06 '11 at 17:14
  • @Evgeny: more like Cyrillic to Latin alphabets – John Saunders May 06 '11 at 17:17
  • @Evgeny: Fyi, the special symbols being replaced with an latin-alphabet analogue, is not a suitable solution for transliteration. The same thing happens with Greek when an unsuitable encoding is used, and believe me, the result bears no resemblance to the real transliteration. – nantito May 06 '11 at 17:20
  • @John: as I understand it can be done for every unicode letter, including Chinese, Cyrillic, Umlauts and etc. – Evgeny Gavrin May 06 '11 at 17:21
  • @Evgeny: could you please post a comment with your name written in Cyrillic? If I recall correctly, it's almost the same characters either way, but I decided not to insult your name by guessing. – John Saunders May 06 '11 at 17:23
  • @John: "Евгений" - My name is, unfortunately, very badly transliterated - to many options. – Evgeny Gavrin May 06 '11 at 17:25
  • @Evgeny: "Евгений" to "Evgeny" is transliteration. "Евгений" to "Eugene" is translation. – John Saunders May 06 '11 at 17:27
  • Yes, folks, I realized what is my mistake. Not in all cases, possible to choose an adequate equivalent. – Evgeny Gavrin May 06 '11 at 17:30
  • @Evgeny: yeah, that "ий" doesn't make it easy. "y" or "iy" or "i" or ... – John Saunders May 06 '11 at 17:32
  • Transliteration from a language to another is usually really hard, especially if the target language does not contain phonemes that are used in the source one. I just heard your name from the listen function of google translate, and it's a lot harder to transliterate it in English than we thought! Yuvguiñi in Spanish or Γιουβγκίνι in Greek might be more accurate, heh! – nantito May 06 '11 at 17:38