On Thu Feb 8 03:35:58 2024 +0000, Esme Povirk wrote:
I believe the text sizes you're getting from gdi32 are in gdi device coordinates, and draw_driver_string expects world coordinates. This is why measure_ranges_callback has to scale the size/coordinates it gets. I expect that to be needed in draw_string_callback too. Try it with a scaling transform. I guess rotation on its own may work because the lack of a proper conversion from gdidevice to world coordinates, and the rotation applied as part of the world transform in draw_driver_string, cancel each other out.
I think now it should be right.