On 01.10.2013 12:12, Alexandre Julliard wrote: > Ralf Habacker <ralf.habac...@freenet.de> writes: > >> With other patches i have been told to implement such stuff in the dib >> driver. Unfortunally this do not works in this case, because in the top >> level function it looks like having driver specific stuff using display >> coordinates. > It would still most likely have to be in the driver, which is freetype_GetTextExtentExPoint() ?
> though maybe the driver would not be calling that exact entry point. not sure i understand right: GetTextExtentExPointW() calls get_char_positions(), which runs dev->funcs->pGetTextExtentExPoint(), which is mapped to freetype_GetTextExtentExPoint(), which is in the driver. Which entry point your are refering else ? > In any case, you can't change the DC transform like this then a real solution requires to move the transformation to logical coordinates stuff in BOOL GetTextExtentExPointW() to freetype_GetTextExtentExPoint() and to manipulate the related matrixes in freetype_GetTextExtentExPoint() directly wen using GM_ADVANCED ? > and you'll need test cases. > Do you mean in detail: 1. Create a specific font 2. Run GetTextExtentExPointW() which specific parameters 3. check if it results expected values Regards Ralf