我刚刚将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);