Ich möchte native gdi + -Methode aufrufen, um die Leistung des Textzeichens zu verbessern. Kann mir jemand Beispiel geben? Ich habe den folgenden Code aus der Referenzquelle gefunden. Ich möchte diese Methode in C# verwenden, um die Leistung zu verbessern. Wie kann ich das erreichen?So rufen Sie die GDipDrawString-Methode in C#
[DllImport(ExternDll.Gdiplus, SetLastError=true, ExactSpelling=true,
CharSet = System.Runtime.InteropServices.CharSet.Unicode)] // 3 = Unicode
[ResourceExposure(ResourceScope.None)]
internal static extern int GdipDrawString(HandleRef graphics,
string textString, int length, HandleRef font,
ref GPRECTF layoutRect, HandleRef stringFormat, HandleRef brush);
Ich weiß nicht, wie für HandleRef
Klasse-Objekt zu erstellen. Bitte schlage mir das vor?
Derzeit verwende ich folgenden Code, um die Zeichenfolge zu zeichnen.
Graphics.DrawString(text, font, brush, rect, format);
Ich werde wetten, dass es etwas anderes in Ihrem Code ist, dass die Dinge langsam macht. Teilen Sie diesen Code mit uns, um Hilfe zu erhalten. Graphics.DrawString ist wirklich nur zum Drucken nützlich, ansonsten verwenden Sie TextRenderer.DrawText. – LarsTech
Bitte geben Sie einen Link an, wo Sie diese Beispiel-Deklaration erhalten haben, die uns hilft, Ihnen zu zeigen, wo HandleRef definiert ist. Außerdem stimme ich Lars zu, ich bezweifle, dass dies viel schneller machen wird. Zeigen Sie den Code, den Sie Graphics.DrawString aufrufen, gibt es wahrscheinlich schnellere Möglichkeiten, zu tun, was auch immer Sie versuchen zu tun –
Ich habe GDI + native Win32-Code von der folgenden Verknüpfung http://referencesource.microsoft.com/#System.Drawing/commonui /System/Drawing/Advanced/Gdiplus.cs,15ca78ad12cd45eb, –