我刚刚将Silverlight应用程序升级到SL5,主要是为了利用新的矢量打印功能 . 它似乎工作得很好 . 事实上如果我打印到PDF Creator我可以选择里面的文本(在SL4中所有都打印为光栅) .

但是,如果我尝试将所选文本复制并粘贴到记事本中,我会得到奇怪的字符 .

对于带有打印按钮的小型测试应用程序,我遇到了同样的问题,后面的代码如下:

StackPanel panel = new StackPanel();
  TextBlock tb = new TextBlock();
  tb.Text = "Hello World!";      
  panel.Children.Add(tb);

  PrintDocument document = new PrintDocument();
  document.PrintPage += (s, e) =>
  {
    e.PageVisual = panel;
    e.HasMorePages = false;
  };

  PrinterFallbackSettings settings = new PrinterFallbackSettings();
  settings.ForceVector = true;      
  document.Print("Silverlight Printing Test", settings);