wpf xaml blur dropshadow

WPF: ¿Por qué el texto y los elementos se confunden si uso el efecto sombra sobre un elemento principal?



xaml blur (3)

Intente agregar TextOptions.TextFormattingMode="Display" al TextBlock como se muestra en el problema WPF Blurry fonts - Solutions .
El efecto de alguna manera podría aumentar la "borrosidad", por ejemplo, al mover la grilla algunas fracciones de un píxel más o menos.

Si agrego un DropShadowEffect a un elemento primario, el texto de los elementos secundarios está borroso. ¿Por qué?

<Grid> <Grid.Effect> <DropShadowEffect /> </Grid.Effect> <Grid.ColumnDefinitions> <ColumnDefinition /> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition /> </Grid.RowDefinitions> <TextBlock Background="White">Test</TextBlock> </Grid>

Actualizar:

con sombra

sin sombra


La razón por la que el texto está borroso es porque los Efectos causan que los elementos y todos los subelementos se procesen en un Mapa de bits primero. Esto significa que la representación subpíxel (ClearType) no puede tener lugar y, por lo tanto, el texto aparece de menor calidad.

Puede solucionar esto aplicando el efecto a solo partes de su árbol visual. Las partes que no contienen el texto.

En tu caso, probablemente quieras algo como esto:

<Grid> <Border> <Border.Effect> <DropShadowEffect /> </Border.Effect> </Border> <TextBlock Background="White">Test</TextBlock> </Grid>


Puede ser un problema con los subpíxeles.

Intenta agregar UseLayoutRounding = "True" a la grilla.