При использовании класса ScaleTransform
Silverlight также масштабирует толщину штрихов на фигурах, которые я показываю. Но что, если я не хочу этого поведения? Можно ли отключить масштабирование штрихов, или мне придется перебирать каждый объект формы и устанавливать обратную толщину?Предотвращение масштабирования линии Silverlight от
3
A
ответ
0
A ScaleTransform
- это визуализатор. Он не меняет базовый макет, просто меняет способ его рисования на экране. Невозможно иметь шкалу точек, но не иметь масштаб толщины линии.
Далеко любая линия определяется ее конечными точками и их толщиной. Имеет смысл также масштабировать толщину, но имеет смысл еще больше отключить его. OpenGL и Direct3D работают только с вершинами, а растеризатор рисует линии непосредственно в backbuffer, не заботясь о каких-либо преобразованиях, поскольку вершины уже есть. Если это невозможно, это потому, что Microsoft сделала это не потому, что это невозможно. –
Я говорил исключительно в контексте Silverlight. Я знаю, что можно реализовать способ сделать это, но способ рендеринга преобразований в работе SL делает невозможным сделать это автоматически. – Stephan