まめ - たんたんめん

備忘録 C# / WPF 多め

WPF DrawingContext.DrawText()で書いたテキストが滲む

WPF にはUseLayoutRoundingというプロパティがあり、ルート要素 (MainWindow等)で trueにすると文字や絵が滲まなくなることは有名だが DrawingContextを使って独自に文字列を描画している場合は滲んでしまう。

この対策としてルート要素に下記Propertyを指定しておけば文字が滲まなくなる。

    TextOptions.TextFormattingMode="Display"
    TextOptions.TextRenderingMode="ClearType"

微妙なのでわかりづらいのだが 「4」が露骨につぶれなくなっているのが分かる。 f:id:at12k313:20200406162617p:plain