How can I convert symbol-based fonts that produce text back to re.

G

Guest

I used a font (JOAN) when producing a Word document, just to have some
variety from the usual fonts. Now that I want to convert it to a business
font (say arial), I find that it comes out as gibberish. I noticed in the
reveal formatting box that JOAN is a "symbol" font.

Should I have expected this?
Any way to convert to arial?
 
O

Opinicus

JR said:
I used a font (JOAN) when producing a Word document, just
to have some
variety from the usual fonts. Now that I want to convert
it to a business
font (say arial), I find that it comes out as gibberish. I
noticed in the
reveal formatting box that JOAN is a "symbol" font.
Should I have expected this?
Any way to convert to arial?

Try capturing all the text (control-A, control-C) and paste
it (control-V) into Notepad. Now if you still see letters
and not gibberish, do the same thing again in Notepad and
paste it back into a freshly-opened, new Word document whose
font has been set to Arial. (This means close the old Word
document. Exit Word. Start Word up again. Type control-A and
set the font to Arial, just to be sure.)

I've never knowingly worked with a symbol font so I can't be
sure this will work but I just tried it with Wingdings and
Word had no problem changing back and for between that and
Ariel.
 
G

Guest

Opinicus:

Thanks for the suggestion. When I transferred the text to Notepad, it came
out as gibberish - all squares. I have been able to transfer to other
symbol-based text fonts, just not Arial, Times NewRoman, Palatino, etc.

Have a great day
JR
 
O

Opinicus

JR said:
Thanks for the suggestion. When I transferred the text to
Notepad, it came
out as gibberish - all squares. I have been able to
transfer to other
symbol-based text fonts, just not Arial, Times NewRoman,
Palatino, etc.

Interesting. Can you point me to a symbol-based font that I
can download on the internet? Wingdings is apparently not a
symbol-based font and I want to explore this problem.
 
K

Klaus Linke

Hi Bob,

You'll only see the problem after you saved and reopened the file.

Hi JR,

Below's a macro to fix the text. It changes it to Arial. It'd be nicer to change it to the style's font, but that would require a much slower macro. You'd need to fix the font yourself as neccessary.

Regards,
Klaus


Sub FixTextAccidentallyUsingDecorativeFonts2()
' Should fix text that has been accidentally formatted
' in a decorative font, and change it to "Arial".
Dim myRange As Range
Dim myStoryRange As Range
For Each myStoryRange In ActiveDocument.StoryRanges
Set myRange = myStoryRange.Duplicate
Call FixText2(myRange)
MsgBox myStoryRange.Text, , myStoryRange.StoryType
While Not (myStoryRange.NextStoryRange Is Nothing)
Set myStoryRange = myStoryRange.NextStoryRange
Set myRange = myStoryRange.Duplicate
Call FixText2(myRange)
MsgBox myStoryRange.Text, , myStoryRange.StoryType
Wend
Next myStoryRange
End Sub

Sub FixText2(myRangeOld As Range)
' myRange needed because a bug(?) in Word2003
' always takes me to footnote separator StoryRange?!?
Dim myRange As Range
Do
Set myRange = myRangeOld.Duplicate
With myRange.Find
.ClearFormatting
.Text = "[" & ChrW(&HF000) & "-" & ChrW(&HF0FF) & "]"
.Forward = True
.Wrap = wdFindContinue
.MatchWildcards = True
If .Execute Then
With myRange.Find
.Text = "^u" & Trim(str(AscW(myRange.Text) And &HFFFF&))
.Replacement.Text = ChrW(AscW(myRange.Text) - &HF000)
.Replacement.Font.Name = "Arial"
.Forward = True
.Wrap = wdFindContinue
.MatchWildcards = False
End With
myRange.Find.Execute Replace:=wdReplaceAll
Else
Exit Do
End If
End With
Loop
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top