darkpoon 发表于 2015-5-13 08:59:59

Windows phone 7画图--画字

  类似Google Maps中矢量地图的绘制,路名、公园名等是在类似画布Canvas的容器上绘制文字,文字绘制分为两种,一种为矢量,一种为像素矩阵;在Silverlight中可以理解为矢量字体,在XNA中可理解为象素矩阵字体(矢量字体转换为像素矩阵),在此讨论Silverlight中的字体绘制。
  1.使用TextBlock,在此不做讨论;主要讨论使用Glyphs适用于类似矢量地图绘制路名、公园名等的场景;
  2.使用Glyphs,大致使用过程如下
  Glyphs glyphs = new Glyphs();
glyphs.Fill = new SolidColorBrush(color);//文字绘制使用的笔刷、颜色
glyphs.FontSource = fontSouce;// 文字字体
glyphs.FontRenderingEmSize = fontSize; //字体大小
glyphs.UnicodeString = "公园名";//绘制的文字
glyphs.OriginX = 100; //绘制文字在画布上的位置
glyphs.OriginY = 100;
  canvas.Children.Add(glyphs); //作为控件加入画布
  上述Glyphs的使用中发现两个问题,请大家讨论指教:
  1.大量Glyphs作为控件加入canvas,导致布局、控件大小计算频繁,效率较低,用户响应慢;
  2.文字的美观--描边,我没有找到方法。
  读者有解决类似问题的经验、方法、疑问,欢迎在此讨论...
页: [1]
查看完整版本: Windows phone 7画图--画字