TextBlock отображается на WriteableBitmap на Windows Phone не так четко
Я работаю с Windows Phone 8/C# Silverlight и использую код, подобный этому, для визуализации текста:
TextBlock drawStringInstance = new TextBlock();
drawStringInstance.Text = str;
drawStringInstance.Opacity = 1;
drawStringInstance.Measure(new Size(1000000, 1000000));
WriteableBitmap wb = new WriteableBitmap((int)drawStringInstance.ActualWidth, height);
wb.Render(drawStringInstance, null);
wb.Invalidate();
Обратите внимание, что я не сохраняю изображение и не рисую его напрямую, чтобы не было никаких артефактов сохранения. Если я просто помещаю текстовый блок, я получаю намного более четкий текст с меньшим количеством псевдонимов как таковой (слева - "хороший" рендеринг):
Что я могу сделать, чтобы улучшить это, или это неотъемлемая проблема с подходом WriteableBitmap.Render()?
1 ответ
Я думаю, что вы не должны отображать элементы, которые не находятся в визуальном дереве. На самом деле ваш код ничего не отображает на моем эмуляторе.
Просто добавьте текстовый блок где-нибудь на странице (возможно, установите для поля значение -1000, чтобы он не отображался), а затем визуализируйте его.