Hello,
I encountered some issues when using Unicode characters.
When I try to insert characters that are not "basic latin" (i.e. codepage Latin I 1252), for example ligatures or symbols that are stored in the Unicode Specials block of a certain font or plainly Roman numbers from the Number Forms block, DRAW X4 displays a rectangle [ ] instead of the character.
1. Open Windows' charmap.exe -> select the font / "non-standard" Unicode character and copy it to the clipboard2. Paste it to DRAW X4 and choose a) Keep font and formatting or b) Replace font and formatting.
a) means I can get the character displayed in the font I chose when copying from the Windows character map.b) means I get a rectangle instead of the character.
As you can see in the attached PDF file, DRAW X4 arbitrarily seems to select a certain codepage for the inserted character like Korean 949 or Chinese Traditional 950. Sure, it is possible to convert the character back to codepage 1252, but this leads to a totally different character.So I cannot apply the desired font on that "rectangle" since all fonts are greyed out. The only font I can use is Arial Unicode MS which of course does not contain the needed ligature or symbol, not to speak that this is not the font I want to use.
Next thing is, in case I selected to keep font and formatting when pasting the character to DRAW X4, the next time I open the document it is also a rectangle just like the character which I chose to paste without keeping font and formatting.
But when I select that rectangle and hover the font list, the font preview fly-out displays the wanted character correctly! I simply cannot select that font since they all are greyed out...
And one more interesting thing to add: When I look into the textinfo.xml file that is contained in the .cdr file I can find the "bad" character (of course displayed as a rectangle this time since the standard system fonts do not contain every character), copy it to MS Word and select the font of my choice - voilà! The character again is displayed correctly. To me this looks as if CorelDRAW X4 stores the Unicode character in its file format correctly but is unable to handle it.I see that there are variables that store language scripts of the text, e.g. 1031 for German. The characters that are not correctly displayed are defined as 2052, 3076 (Chinese) and 1042 (Korean).
I understand that when you select a certain codepage DRAW X4 only offers fonts that are compatible. But on the other hand this prevents me to take benefit of the Unicode "universe". Maybe it is possible for future versions to toss away the Latin, Asian etc. scripts scheme and switch to full Unicode support, independent from the selected language?And a broader Open Type support would be nice, too ;-)
Christopher
Dear nixblik and all,
here I am a new use. I have just purchased Draw Suite X4 because we need Unicode. And what do I discover on my first day - a bug. And the entry from nixblik which seems to me the best description I have seen during my searches. My compliments.
Yet supposedly Draw was Unicode ready since version 12. Until last week we happily worked with version 9 - just now we need Unicode.
If this is a real bug, I am upset, that there seems to be total silence from Corel about this issue (try searching their support database). This is a scandal for software that sells for 630 Euro in Germany and claims to support Unicode.
For now I am asking two questions. I never had problems with Corel Draw, neither with version 4, 6 nor 9 so I am obviously new here:
- Is there a better fix for now? I am willing to work (or rather write a macro) to be able to produce my booklets. I am afraid of what it will do to my computer to uninstall Arial Unicode, since Arial seems to have a special status somehow. Does anybody have experience with the Font Navigator concerning the idea of (temporarily) removing certain fonts?
- Secondly I am asking about Corel: Do they read these entries? Hallo, anybody there? Could we as paying users put some lobbying or even pressure on them about this obvious bug? Is this a good place for a "little union" or forbidden by the rules? I would even go to the media, because I am upset - I am in time stress about my booklets, I am not a politician normally. If there is any friendly way of having this fixed, say by the end of January, that would be great. If Corel Draw is by its very structure unable to handle Unicode properly - then please just say so. If anybody knows a powerful DTP software for not more than 500 Euro (we work in the non profit development sector), please let me know too. "Besser ein Ende mit Schrecken, als ein Schrecken ohne Ende."
Let us not accept this bug, I still believe Corel can fix this, if they just assign the ressources to it,
respectfully, Martin (user)
Not a solution, but just a reassurance to Martin. The font that shows up in font listings as Arial Unicode MS is not the same as Arial.
Arial Unicode has only a single style (normal), but a huge number of character sets. It’s an immense file of 22Mb, and it’s very unlikely that you need it. (I uninstall it when I find it, but new Windows installations seem to include it. It may depend on whether or not you install support for Asian languages.)
I haven’t come across the bug under discussion, although I often work with non-Western European languages, including Cyrillic and Greek character sets. Is it perhaps a question of avoiding the use of special typographic characters like ligatures and old-style figures? What one might call the non-linguistic aspect of Unicode? Not that I would advocate this as a philosophy, but it might help us better to understand the problem.
So this place is alive, that is wonderful. (The previous posts were long ago.)
Thank you Corbeau for your reassurance, that is helpful. Since nixblik gave some hint of a fix, this is what I tried today:
I went to Font Navigator which came with CDGS X4. First, as a backup, I created a group and put all fonts into it, which were installed on my computer.
Then I made another group for my publishing work with my four needed fonts - and added Arial, Courrier New, Symbol, TNR, Wingdings because Font Navigator sais not to remove those. Then I took a deep breath and uninstalled all fonts and then installed my new little "workgroup". Now my Windows does indeed look funny in many places and some messages do not fit the place provided any more. Guess I uninstalled some system font after all.
Then I tried my document in Draw: No more funny changing of individual letters! Another big thank you to nixblik for this create temporary solution.
To let you know (Corbeau) that we are not nerds: We work with several minority languages in West Africa. They do not have the lobbies like major people groups, so they do not have their unique code pages (like latin or greek or cyriilic). They rather have to do with a patchwork, mainly from latin and latin extended, but also a few exotic characters from deeper down the list.
For example this character is needed and gives me trouble in Corel Draw:
U+014A LATIN CAPITAL LETTER ENG and also U+014B LATIN SMALL LETTER ENG
Now I hope most people - and Corel - would agree that the very idea of Unicode was to be able to make multilanguage and international documents. Who ever said to stick to one code page per text? What about a poster with the word "welcome" in 30 languages, including "exotic" stuff like Russian or Korean?
So I will experiment some more and add details if I discover helpful hints. Please everybody also share your tricks and work-arounds. Corel, please fix.
respectfully,
Martin
Hello there, someone brought my attention to this post and I thought I could at least give a partial answer.
First, Draw is a unicode application. It's UI is unicode and its text engine is unicode as well. That means that we store unicode character value in our file format.
When you see a square, this usually means that the font that Draw is trying to use to display that unicode character does not have a glyph for it.
Any portion of text in a text object is assigned 3 fonts at all time : 1 latin font, 1 asian font and 1 far east font. These fonts can come from a style or can be overrided by the user when he is manually applying a font. Draw tries to pick the right out of these 3 fonts to display a given character based on the character's unicode value and/or based on the keyboard that was active when the character was typed.
Problems arise when there are conflicts between characters and these 3 fonts. For example, a font may very well provide a glyph for the chinese character you are inputing but might not report itself as a "chinese" font in which case, Draw might assume that the font can not render this character and may fall back to another of these 3 fonts or the original text style.
All these details makes it hard to predict what will happen in certain scenarios.
Here is 2 things you can play with.
1) The character formatting docker
In there, you can see what are the 3 fonts assigned to your selection but this dialog isn't layed out right :
A
t the bottom you see the "script" combobox. That actually let you choose which font out of these 3 fonts you can to modify. If you first pick asian and then pick a valid asian font, the asian font for this selected block of text will be changed to your new selection. When choosing "All Languages", the then selected font will be applied to all 3 IF the fonts says that it support them all.
2) Change your default text styles :
This might help too in case Draw fall back to your style to get the proper font.
Also, It does when going through the "insert character" docker and inserting a character inside an existing text object, if the existing text object is using a font that have this character, then the font selected in the docker will be IGNORED. So you might want to first change the font of your text object before inserting a character from a specific font from that docker.
Lastly, beware of the special SYMBOL font like "Wingdigns". X4 does not support them correctly. A lot of work was done in X5 to get them to work properly. The problem with these fonts is that their "glyph to unicode value" mapping changes depending on your system locale and isn't fixed like it is normally the case for ordinary font.
Hope this help a bit.
Hello Claude,
thank you for your detailed reply. I guess when I deleted the fonts that were causing problems (that is, not the font I wanted to insert a character from, but the fonts whose glyphs were used instead, like Arial Unicode), Corel changed the default Asian / Middle East fonts, up to the point where these replacements did not contain the particular character. That was why the crude fix worked.
Anyways, I still wonder why the U+2082 "subscript 2" glyph is considered Asian. Corel automatically uses the Batang font for it, instead of Adobe CaslonPro:
And I cannot find a way to change it, because I cannot select CaslonPro as the Asian font, neither in the character formatting tab displayed here, nor in the default text styles (obviously, CaslonPro is not an Asian font).
Thanks and greetings,
Uwe