Как определить размер ImageSource в пикселях? Объект ImageSource имеет свойство Height и Width, но они возвращают размер в 1/96 дюйма.Размер пикселя ImageSource
ответ
Есть 2 типа ImageSource: DrawingImage и BitmapSource.
Очевидно, что у DrawingImage нет DPI или ширины пикселя, потому что это по существу векторная графика.
С другой стороны, BitmapSource имеет PixeWidth/PixelHeight, а также DpiX/DpiY.
http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.bitmapsource.pixelheight.aspx
заимствование из того, что я нашел here я придумал:
внутри тега изображения в XAML сделать:
<Image.Resources>
<c:StringJoinConverter x:Key="StringJoin" />
</Image.Resources>
<Image.Tag>
<!-- Get Image's actual width & height and store it in the control's Tag -->
<MultiBinding Converter="{StaticResource StringJoin}">
<Binding RelativeSource="{RelativeSource Self}" Path="Source.PixelWidth" />
<Binding RelativeSource="{RelativeSource Self}" Path="Source.PixelHeight" />
</MultiBinding>
</Image.Tag>
Вы должны настроить свой c
пространство имен в верхней вашего файла XAML для папки/пространства имен вашего конвертора, например:
xmlns:c="clr-namespace:Project.Converters"
Затем создание конвертера:
public class StringJoinConverter : IMultiValueConverter
{
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
return string.Join((parameter ?? ",").ToString(), values);
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
Вы можете потом извлечь фактический (пиксель) Ширина & Высота изображения с:
var tag = imageControl.Tag; // width,height
List<double> size = tag.ToString()
.Split(',')
.Select(d => Convert.ToDouble(d))
.ToList();
double imageWidth = size[0],
imageHeight = size[1];
Супер старый пост, но для кого возникли проблемы с этим вам не нужно делать ничего сумасшедшего или сложного.
(ImageSource.Source as BitmapSource).PixelWidth
(ImageSource.Source as BitmapSource).PixelHeight
- 1. Размер пикселя изображений
- 2. Размер пикселя на устройствах
- 3. Размер пикселя od NSBitmapImageRep
- 4. Pygame размер пикселя пиксела
- 5. Фракционный размер пикселя с Qt
- 6. Как удвоить размер пикселя холста?
- 7. Как получить общий размер пикселя экрана
- 8. Как получить размер пикселя полной карты?
- 9. средний размер пикселя и максимальная ширина
- 10. получить реальный размер на основе размера пикселя
- 11. PyQt4: Графический вид и размер пикселя
- 12. Минимальный размер пикселя для изображений facebook
- 13. Задает программный размер пикселя удаленного ImageVIew?
- 14. Пользовательский размер пикселя отслеживания Google Analytics?
- 15. Найти размер пикселя для WKInterfaceImage в WKInterfaceController
- 16. Как изменить размер пикселя изображения программно
- 17. додзё: скачать изображения и обнаруживающего размер пикселя
- 18. Размер мобильного пикселя (с использованием эмулятора Chrome)
- 19. Веб-дизайн для смартфона - размер пикселя
- 20. RMagick - как определить размер пикселя изображения
- 21. Как получить размер пикселя изображения SVG
- 22. Как вы вычисляете размер пикселя строки?
- 23. OPENCV 2.4.9 Изменяет ли размер значение пикселя?
- 24. Как контролировать размер пикселя цветовой модели ErrorDiffusionDescriptor?
- 25. Как вычислить размер пикселя и размер луча в файле fits?
- 26. Преобразование ImageSource в BitmapImage - WPF
- 27. Связывание XAMLCropControl ImageSource в свойство ImageSource в ViewModel не удалось
- 28. CGImageSourceRef ImageSource = CGImageSourceCreateWithURL возвращает NULL
- 29. Xamarin.Forms: Сравнение ImageSource
- 30. Convert Canvas to ImageSource