Windows does not use ClearType with this font, Inconsolata, because it has PostScript outlines. MSDN explicitly mentions that ClearType antialiasing is not possible with PostScript OpenType fonts. See Remarks section in LOGFONT structure documentation: https://msdn.microsoft.com/en-us/library/dd145037%28v=vs.85%29.aspx
Although it's not spelt out in the documentation, the result of GetGlyphOutline depends on the bitmap selected into the DC.
In Java native code, a compatible DC is created. It is used for measuring the glyph size. Then a compatible bitmap is created with the correct size, and the glyph is rendered.
Remarks section of CreateCompatibleDC function documentation https://msdn.microsoft.com/en-us/library/vs/alm/dd183489%28v=vs.85%29.aspx
“When the memory DC is created, its display surface is exactly one monochrome pixel wide and one monochrome pixel high. Before an application can use a memory DC for drawing operations, it must select a bitmap of the correct width and height into the DC.”
That is when GetGlyphOutline is called, a monochrome bitmap is selected into the DC. GetGlyphOutline does not perform any drawing, yet its result is affected by the selected bitmap: antialiasing is not possible in black-and-white mode.
For Inconsolata font with the size of 12, GetGlyphOutline returns the glyph size is 4×1. It corresponds to what we see: one line is rendered, in this case it is the lower of two.
If you select a compatible bitmap into the DC before calling GetGlyphOutline, the result changes to 6×4, and equals sign becomes distinguishable from minus sign.
For this particular font, the height of glyphs for 'a' and 'b' in the sample is also affected. With monochrome bitmap, the height of 'a' and 'b' is 6 and 8 correspondingly; with compatible bitmap, the height is 1px greater: 7 and 9.