Наброски / Штрих отформатированный текст - PullRequest
2 голосов
/ 26 августа 2009

Я рендерил FormattedText с другим цветом переднего плана на другой символ (например, первые два красных, следующие два желтых как ...), теперь мне нужно отобразить контур, окруженный этим текстом Для применения контура (обводки) я должен преобразовать этот FormattedText в геометрию, а затем нарисовать геометрию как

Geometry textGeometry = FormattedText.BuildGeometry (новая точка (_xOffset, _yOffset)); drawingContext.DrawGeometry (null, new Pen (новый SolidColorBrush (OutlineColor), storkeWidth), textGeometry);

но проблема в том, что он отобразит FormattedText красным цветом и потеряет мой форматирующий цвет. я что-то упустил или есть другой способ набросать текст.

1 Ответ

6 голосов
/ 27 августа 2009

Я думаю, что нашел решение. сначала нарисуйте отформатированный текст, а затем геометрию, он будет отображать текст, а также контур.

Geometry textGeometry = FormattedText.BuildGeometry(new Point(_xOffset, _yOffset)); 
drawingContext.DrawText(FormattedText,new Point(0,0));
drawingContext.DrawGeometry(null, new Pen(new SolidColorBrush(OutlineColor), storkeWidth),textGeometry);

Если у кого-то есть лучший подход, пожалуйста, дайте мне знать.

...