BitmapCache Class
Definition
Represents the behavior of caching a visual element or tree of elements as bitmap surfaces.
public class BitmapCache
Constructors
| Name | Description |
|---|---|
| BitmapCache | No summary available. |
BitmapCache Constructor
public BitmapCache()
Methods
| Name | Description |
|---|---|
| Parse | Inherited from CacheMode. |
| ApplyStyling | Applies styling to the control if the control is initialized and styling is not already applied. Inherited from StyledElement. |
| BeginInit | Inherited from StyledElement. |
| EndInit | Inherited from StyledElement. |
| TryGetResource | Inherited from StyledElement. |
| Bind (8 overloads) | Binds a Avalonia.AvaloniaProperty to an Avalonia.Data.BindingBase. Inherited from AvaloniaObject. |
| CheckAccess | Returns a value indicating whether the current thread is the UI thread. Inherited from AvaloniaObject. |
| ClearValue (4 overloads) | Clears a Avalonia.AvaloniaProperty's local value. Inherited from AvaloniaObject. |
| CoerceValue | Coerces the specified Avalonia.AvaloniaProperty. Inherited from AvaloniaObject. |
| Equals | Compares two objects using reference equality. Inherited from AvaloniaObject. |
| GetBaseValue | Inherited from AvaloniaObject. |
| GetHashCode | Gets the hash code for the object. Inherited from AvaloniaObject. |
| GetValue (3 overloads) | Gets a Avalonia.AvaloniaProperty value. Inherited from AvaloniaObject. |
| IsAnimating | Checks whether a Avalonia.AvaloniaProperty is animating. Inherited from AvaloniaObject. |
| IsSet | Checks whether a Avalonia.AvaloniaProperty is set on this object. Inherited from AvaloniaObject. |
| SetCurrentValue (2 overloads) | Sets the value of a dependency property without changing its value source. Inherited from AvaloniaObject. |
| SetValue (3 overloads) | Sets a Avalonia.AvaloniaProperty value. Inherited from AvaloniaObject. |
| VerifyAccess | Checks that the current thread is the UI thread and throws if not. Inherited from AvaloniaObject. |
Properties
| Name | Description |
|---|---|
| EnableClearType | Set the EnableClearType property to allow subpixel text to be rendered in the cache. When the EnableClearType property is true, your application MUST render all of its subpixel text on an opaque background. |
| RenderAtScale | Use the RenderAtScale property to render the BitmapCache at a multiple of the normal bitmap size. The normal size is determined by the local size of the element. |
| SnapsToDevicePixels | Set the SnapsToDevicePixels property when the cache displays content that requires pixel-alignment to render correctly. This is the case for text with subpixel antialiasing. If you set the EnableClearType property to true, consider setting SnapsToDevicePixels to true to ensure proper rendering. |
| ActualThemeVariant | Gets the UI theme that is currently used by the element, which might be different than the RequestedThemeVariantProperty. Inherited from StyledElement. |
| Classes | Gets or sets the styled element's classes. Inherited from StyledElement. |
| DataContext | Gets or sets the control's data context. Inherited from StyledElement. |
| IsInitialized | Gets a value that indicates whether the element has finished initialization. Inherited from StyledElement. |
| Name | Gets or sets the name of the styled element. Inherited from StyledElement. |
| Parent | Gets the styled element's logical parent. Inherited from StyledElement. |
| Resources | Gets or sets the styled element's resource dictionary. Inherited from StyledElement. |
| StyleKey | Gets the type by which the element is styled. Inherited from StyledElement. |
| Styles | Gets the styles for the styled element. Inherited from StyledElement. |
| TemplatedParent | Gets the styled element whose lookless template this styled element is part of. Inherited from StyledElement. |
| Theme | Gets or sets the theme to be applied to the element. Inherited from StyledElement. |
| Transitions | Gets or sets the property transitions for the control. Inherited from Animatable. |
| Dispatcher | Returns the Avalonia.AvaloniaObject.Dispatcher that this Avalonia.AvaloniaObject is associated with. Inherited from AvaloniaObject. |
| Item | Inherited from AvaloniaObject. |
EnableClearType Property
Set the EnableClearType property to allow subpixel text to be rendered in the cache. When the EnableClearType property is true, your application MUST render all of its subpixel text on an opaque background.
When the EnableClearType property is false, text in the cache is rendered with grayscale antialiasing.
ClearType text requires correct pixel alignment of rendered characters, so you should set the SnapsToDevicePixels property to true. If you do not set this property, the content may not blend correctly.
Use the EnableClearType property when you know the cache is rendered on pixel boundaries, so it is safe to cache ClearType text. This situation occurs commonly in text-scrolling scenarios.
public bool EnableClearType { get; set; }
RenderAtScale Property
Use the RenderAtScale property to render the BitmapCache at a multiple of the normal bitmap size. The normal size is determined by the local size of the element.
Values greater than 1 increase the resolution of the bitmap relative to the native resolution of the element, and values less than 1 decrease the resolution. For example, if the RenderAtScale property is set to 2.0, and you apply a scale transform that enlarges the content by a factor of 2, the content will have the same visual quality as the same content with RenderAtScale set to 1.0 and a transform scale of 1.
When RenderAtScale is set to 0, no bitmap is rendered. Negative values are clamped to 0.
If you change this value, the cache is regenerated at the appropriate new resolution.
public double RenderAtScale { get; set; }
SnapsToDevicePixels Property
Set the SnapsToDevicePixels property when the cache displays content that requires pixel-alignment to render correctly. This is the case for text with subpixel antialiasing. If you set the EnableClearType property to true, consider setting SnapsToDevicePixels to true to ensure proper rendering.
When the SnapsToDevicePixels property is set to false, you can move and scale the cached element by a fraction of a pixel.
When the SnapsToDevicePixels property is set to true, the bitmap cache is aligned with pixel boundaries of the destination. If you move or scale the cached element by a fraction of a pixel, the bitmap snaps to the pixel grid . In this case, the top-left corner of the bitmap is rounded up and snapped to the pixel grid, but the bottom-right corner is on a fractional pixel boundary.
public bool SnapsToDevicePixels { get; set; }
Fields
| Name | Description |
|---|---|
| EnableClearTypeProperty | No summary available. |
| RenderAtScaleProperty | No summary available. |
| SnapsToDevicePixelsProperty | No summary available. |
| DataContextProperty | Defines the Avalonia.StyledElement.DataContext property. Inherited from StyledElement. |
| NameProperty | Defines the Avalonia.StyledElement.Name property. Inherited from StyledElement. |
| ParentProperty | Defines the Avalonia.StyledElement.Parent property. Inherited from StyledElement. |
| TemplatedParentProperty | Defines the Avalonia.StyledElement.TemplatedParent property. Inherited from StyledElement. |
| ThemeProperty | Defines the Avalonia.StyledElement.Theme property. Inherited from StyledElement. |
| TransitionsProperty | Defines the Avalonia.Animation.Animatable.Transitions property. Inherited from Animatable. |
EnableClearTypeProperty Field
public Avalonia.StyledProperty<TValue><bool> EnableClearTypeProperty
RenderAtScaleProperty Field
public Avalonia.StyledProperty<TValue><double> RenderAtScaleProperty
SnapsToDevicePixelsProperty Field
public Avalonia.StyledProperty<TValue><bool> SnapsToDevicePixelsProperty
Events
| Name | Description |
|---|---|
| ActualThemeVariantChanged | Raised when the theme variant is changed on the element or an ancestor of the element. Inherited from StyledElement. |
| AttachedToLogicalTree | Raised when the styled element is attached to a rooted logical tree. Inherited from StyledElement. |
| DataContextChanged | Occurs when the Avalonia.StyledElement.DataContext property changes. Inherited from StyledElement. |
| DetachedFromLogicalTree | Raised when the styled element is detached from a rooted logical tree. Inherited from StyledElement. |
| Initialized | Occurs when the styled element has finished initialization. Inherited from StyledElement. |
| ResourcesChanged | Occurs when a resource in this styled element or a parent styled element has changed. Inherited from StyledElement. |
| PropertyChanged | Raised when a Avalonia.AvaloniaProperty value changes on this object. Inherited from AvaloniaObject. |