Font differences between applications such as Terminal, VSCode, Word


  1. Posts : 4
    Windows 10 Pro
       #1

    Font differences between applications such as Terminal, VSCode, Word


    I've been playing with C# scripting lately, primarily using VSCode as the IDE on Windows 10.
    Whilst displaying a table of some of the more esoteric characters from the old IBM PC codepage 437 that have been adopted into Unicode, I noticed differences in the rendering of the same character using the same font while in different applications.

    Take for example character D8 which in Unicode is 0x256A. The Wikipedia article on codepage 437 (Code page 437 - Wikipedia) shows this as a single vertical line with two parallel horizontal lines cutting across its middle.
    When I ran my program in the Console or in Windows Terminal, the single vertical line becomes two parallel vertical lines, and no lines cutting across any others. This seems to be consistent with any font, such as Consolas.
    When I display this character using Consolas in Word, I get a single vertical but it doesn't continue across the two parallel horizontals - it breaks so that there is an uninterrupted gap between the horizontal lines.
    When I display it in DEBUG CONSOLE in VSCode it displays the same as Word displays it. I have not been able to determine what font is used on this panel in VSCode though.
    Font differences between applications such as Terminal, VSCode, Word-character-256a-2.png
    I'm clearly not a font expert - I was under the impression that the whole point of the operating system managing fonts meant that they look the same in all applications, but clearly that is not the case. So what's the story here?

    Regards,
    Michael
      My Computer


  2. Posts : 12,472
    Win10 Version 21H2 Pro and Home, Win11 Pro
       #2

    As I recall, back in Win3.0 days one had to install a Font manager program, most Fonts were supported by programs as they needed. With Win3.1 there was better Font management but WordPerfect 5.1 for Windows still installed their own Fonts as most programs did. About all Windows has done is provide, and allow for, more Fonts and make them available to programs as needed or desired. Programmers could make use of the installed Fonts and lessen the size of their delivered software/programs. Then Windows throws in their zooming using the Ctrl and + or - or the Ctrl and Scroll wheel to change the view size. There are times I've considered doing programming but then my brain sees variables in doing that and says No, guess at 80 it knows best.
      My Computers


  3. Posts : 4
    Windows 10 Pro
    Thread Starter
       #3

    Thanks for the reply Berton. If I'm following you correctly, I think you're saying that programs can choose whether or not to make use of the fonts provided by Windows. That means that different applications may display characters differently because they are not using the same fonts. That much I follow without difficulty.
    My problem arises with applications that have all chosen to apply the same font but the characters still appear differently. In the case of the Console, Windows Terminal, and Microsoft Word, these applications all allow me to select the font. I select the same font (Consolas), but the characters look different across the set of applications.
    It's very possible that I have misunderstood the point you were making though...
      My Computer


  4. Posts : 12,472
    Win10 Version 21H2 Pro and Home, Win11 Pro
       #4

    A lot of what programs can display with Fonts depends upon how the programs have been written, text editors like Notepad use very basic Fonts while word processors like WordPad, Word, WordPerfect, WordPro, LibreOffice Writer and others can use any of the installed Fonts and can display differently than any of the other programs.

    The Font used in this reply appears to be the Open Sans Regular, in Control Panel I see none of the A through B and some C Fonts, the Consolas is the first on the list in mine.

    Use of Fonts has always been of concern when creating documents, especially Web pages in whether any viewer has the same Font installed or it there has to be a substitution of something other.
      My Computers


  5. Posts : 4
    Windows 10 Pro
    Thread Starter
       #5

    Yes, but again you seem to be describing different programs using different fonts - they will of course appear different because they are. And browsers are a special case because they have to try to render something that was defined elsewhere - i.e. they may not have the font that has been specified in the document.
    I am talking about pure Windows desktop programs. A Windows program will only allow the user to select the fonts that it can actually use - it will never give the option to choose Consolas if it cannot render a Consolas font. In my example all three programs (Console, Terminal, Word) include Consolas among the available set of fonts that the user may choose. But when I tell them to render Consolas, I see different results on some characters.
    The rendering should be performed by the relevant subsystem of the operating system and not by the applications themselves (no one writes character rendering code when the O.S. provides it ready-to-use), so what explains the different renderings?
      My Computer


  6. Posts : 1,249
    Windows 10 Pro
       #6

    The reason for the OS managing fonts is to relieve applications of the burden of doing this themselves. Applications have access to quite a few parameters which determine how text using a specific font will appear. Windows provides a number of different methods for rendering text that applications choose from. Some provide more control than others.

    If the selected font doesn't have a specific character Windows can substitute a different font that does for that specific character. I am not sure when this was introduced. XP didn't do this but Windows 7 does. It will try to pick a font that is most like the normal font, such as being a fixed or proportional font. In most cases this is done independently of the application. Differing parameters can result in a different font being chosen. The more advanced rendering methods may allow the application to choose.
      My Computer


  7. Posts : 4
    Windows 10 Pro
    Thread Starter
       #7

    Ah, that makes some more sense - thanks LMiller7. I don't understand why Windows provides a number of different rendering methods that could be applied to any single font, but I'll accept that it does and that this is why variations in the rendering can appear across different applications.
      My Computer


  8. Posts : 1,249
    Windows 10 Pro
       #8

    A major reason for providing multiple rendering methods is to make things easier for developers. As an example there is one method that gives very good results and provides a lot of control but is quite complex to use. Some applications need this kind of thing. But it would be unreasonable to require developers to use it for simple text. Windows and other operating systems do a great deal of this kind of thing and it is greatly appreciated by programmers.
      My Computer


 

  Related Discussions
Our Sites
Site Links
About Us
Windows 10 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 10" and related materials are trademarks of Microsoft Corp.

Designer Media Ltd
All times are GMT -5. The time now is 04:51.
Find Us




Windows 10 Forums