I have been developing a program in visual basic 6.0 with multi language facility both in English and Arabic. The problem here is I can type Arabic, but while making printout(IN WORD DOCUMENT) from text boxes or labels i get some other FONTS.Kindly Help me out.


If I understand your problem correctly you are transferring data from VB to a Word document but when you do this the text does not display in the correct font. Is this correct?

If so what you need is simply to tell Word to use the correct font before entering the text.

Assuming that you are using the "TypeText" method of the "Selection" object to enter text into your Word document you would use the "Font.Name" property to change the font before entering the text.

Selection.Font.Name = "Arial"
   Selection.TypeText "First line of text"
   Selection.Font.Name = "Times New Roman"
   Selection.TypeText "Second line of text"

Hope this helps


Thanks Yomet ,
I have tried this code but the result is same .Let me explain my problem
In vb textbox Arabic font display properly.
I used the word document object for creating report (i.e. sending text form vb application to word application).
While creating report in Arabic language, when I am sending Arabic text from vb application to word application, in word document it shows junk characters.
While my machine (xp Os) supporting Multilanguage futures. I.e. I can write in word document using Arabic font directly.
Kindly give ur suggestions ..


OK, let's see where we can get from here.

Have you tried to set the language in the Word document to Arabic?

Selection.LanguageID = wdArabicAlgeria

I know you might not use the wdArabicAlgeria language but it was the first on the list, just select the one that is appropriate for you.

This code, as well as the Selection.Font.Name, should be run in the Word document BEFORE any text is typed.

Try this and we'll see.

Happy coding