Einzelnen Beitrag anzeigen

xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#79

Re: Vektor Format anzeigen/drucken

  Alt 20. Nov 2007, 19:59
Hallo,

ich glaube, es liegt an diesem Teil:
Delphi-Quellcode:
  SetMapMode(DC, MM_ANISOTROPIC);
  SetWindowExtEx(DC, Fpage_xres, Fpage_yres, nil);
  SetViewPortExtEx(DC, currX, currY, nil);
  SetViewPortOrgEx(DC, 0, 0, nil);
  SetWindowOrgEx(DC, 0, 0, nil);
Damit manipulierst Du das Koordinatensystem im GDI. GDI+ verwendet aber ein eigenes Koordinatensystem, das mit dem GDI nur bedingt zu tun hat. Ich vermute, diese beiden kollidieren irgendwie. Das dürfte auch der Grund für den Kerning-Fehler sein. PrepareKerning geht nämlich davon aus, dass der DC, von dem die Auflösung geholt wird, aud MM_TEXT steht. Da müsste man also je nach MapMode unterschiedliche Faktoren nehmen.

Gruß
xaromz

PS: Es gibt eine neuer Version, die das Problem mit dem Gradient löst, und ein neues Demoprogramm, bei dem der Zoom endlich besser arbeitet.
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat