Есть ли способ указать, как изображение масштабируется в элементе Image
с LayoutTransform
, установленным на ScaleTransform
с целыми значениями для ScaleX
и ScaleY
?Как указать алгоритм масштабирования изображения, используемый изображением WPF?
Я хочу, чтобы изображение масштабированного изображения было четким (т.е. с использованием масштабирования «ближайшего соседа»), без размытия. (Представьте, как бы вы хотели, чтобы программа редактирования растровых изображений вела себя при масштабировании).
Я заметил, защищаемое свойство VisualBitmapScalingMode
на Image
, поэтому создал подкласс Image
, который устанавливает это свойство BitmapScalingMode.NearestNeighbor
. Однако это не имело никакого эффекта.
Ваш подкласс не изменит, как работает ScaleTransform. Пробовали ли вы установить размер изображения вручную (ширина/высота), чтобы увидеть, является ли он четким? – Will
К сожалению, нет. Если я разворачиваю изображение, задав ширину и высоту, я получаю тот же результат, что и применение ScaleTransform. Что имеет смысл, я думаю, учитывая это в любом случае, в конечном итоге Image, который решает, как сделать себя с учетом размера и растрового изображения. – mackenir
Получили ли вы лучшие результаты с TransformedBitmap? – Will