Kruti Dev to Unicode Converter

Paste on the left, read Unicode on the right. No convert button, no waiting. The tricky bits — ि sitting in the wrong place, र् landing on the wrong syllable, conjuncts splitting apart — are handled properly.

Kruti Dev → Unicode
Kruti Dev text0 words · 0 characters
Unicode text0 words · 0 characters
Accuracy

Try these five words in any other converter

Every converter claims to be accurate. Here is a quick way to check one. Paste these Kruti Dev strings and see what comes back:

Type thisShould giveWhat breaks elsewhere
HkkjrभारतComes out as भ्‌ाारत when the half-form rule is missing
fgUnhहिन्दीA stray joiner splits न्द into two loose letters
mÙkjउत्तरOften lands as उत्तार, one extra matra
/kkfeZdधार्मिकThe reph slides one syllable late: धामिर्क
laLd`frसंस्कृतिRound-trip through some tools drops the entirely

All five pass here. They are part of a 58-word test suite that runs against the conversion tables, covering government, legal and everyday vocabulary in both directions.

The hard part

Why this is not a find-and-replace job

You would think converting one font to another is a lookup table. Swap d for , done. That gets you about eighty percent of the way, and the last twenty percent is where every broken converter lives.

The i-matra sits in the wrong place

Kruti Dev stores text the way it looks on the page. Since ि is drawn to the left of its consonant, you type it first. Unicode stores text the way it is spoken, so the matra comes after. Moving it is easy for a single letter and much harder for a cluster: in स्थिति the matra belongs after the whole स्थ stack, not after स्. Get that wrong and the word still displays, just wrong.

The reph has to jump over matras

र् is typed after the syllable it sits above. In Unicode it goes in front of that syllable, and crucially in front of any matras attached to it. So धार्मिक needs the reph to travel back past both मि and its matra. Converters that only look one character back produce धामिर्क, which is a real word-shaped thing that means nothing.

Half letters need no joiner

A half consonant in Unicode is just the letter plus a virama. Add a zero-width non-joiner and you have told the renderer to keep the letters apart, which is exactly what you did not want. This is the single most common bug in legacy converters, and it is invisible until you look closely: स्कूल versus स्‌कूल.

Beyond text boxes

What else this does

Word files, not just text

Import a .docx and the text comes out ready to convert. Download the result as a Word file with Mangal already applied, so it opens looking right.

English survives

Office documents are rarely pure Hindi. Recognised English words pass through untouched instead of turning into consonant soup. Switch it off if your source is pure Hindi.

It tells you when it fails

Anything with no mapping gets listed under the boxes. Silence would be worse: a converter that quietly mangles one character in a thousand is harder to trust than one that admits it.

Nothing leaves your machine

The whole thing is JavaScript in your browser. Court files, draft circulars, personal letters — none of it is uploaded, because there is nowhere for it to go.

Devanagari digits work

१२३४५ live in a byte range that is easy to decode wrongly. Read those bytes as Latin-1 and the digits vanish. Read them as Windows-1252, which is what browsers do, and they survive.

Share straight out

WhatsApp and Gmail buttons under the output. Useful when the whole reason you converted something was to send it to somebody.

Background

What Kruti Dev actually is

Kruti Dev never encoded Hindi. It is a font that painted Devanagari shapes over the ASCII range, so is stored on disk as the plain letter d. In the 1990s that was a reasonable trick. Devanagari support was patchy, everyone had the font installed, and documents stayed on the machine they were typed on.

Then the internet happened. Search engines index Unicode, not glyph positions, so a circular typed in Kruti Dev cannot be found by searching its own title. Screen readers get nothing. Phones show Latin gibberish. Databases sort it alphabetically by the English letters underneath. The font is still everywhere in state offices, district courts and DTP shops, and it works fine inside those walls. The trouble starts at the door.

Unicode fixes this by giving every Devanagari character a permanent number. is U+0915 on every device ever made, with no font to install. That is why converting old archives is worth the effort: it is the difference between a document that exists and a document anyone can find.

FAQ

Questions people actually ask

Why does my Kruti Dev text look like English letters?

Because to your computer it is English letters. Kruti Dev stores क as the character d and only draws the Hindi shape when the font is applied. Strip the font and you are looking at the raw ASCII underneath. Unicode gives क its own code point, U+0915, so no font is needed for it to be correct.

Does it handle conjuncts and half letters?

Yes. क्ष, त्र, ज्ञ, श्र, द्व, ह्न, स्त्र and the half forms all map to proper Unicode clusters. Half consonants come out as letter plus virama with no joiner characters attached, which is what lets the renderer form the ligature correctly.

Is my text sent to a server?

No. Everything runs in your browser. Load the page once and it keeps working with your wifi off, which is a decent way to confirm nothing is being uploaded.

Which Kruti Dev versions does this cover?

010 and 011 are the ones it was built and tested against. 10, 012, 016, 020, 040 and 055 share the same key positions for standard Hindi, so they convert correctly too. If your source is an unusual variant, proof the output before you print it.

Can I convert a whole Word document?

Import the .docx and the text is pulled out and converted in the browser. Formatting does not survive, so you get clean text to paste back into your layout. Bold and headings need reapplying.

The output still looks wrong in Word. What now?

Select the pasted text and change the font to Mangal, Nirmala UI or Noto Sans Devanagari. If the paragraph style is still set to Kruti Dev, you are looking at correct Unicode drawn with the wrong glyphs, which produces nonsense.

Is there a character limit?

No. Conversion happens on your machine, so the only limit is how much text your browser is happy to hold in a text box. Long documents are better handled through the .docx import.

Other tools

You might also need