1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
PrintTicket myTix = new PrintTicket();
myTix.PageMediaSize = new PageMediaSize(1000, 1000);
LocalPrintServer server = new LocalPrintServer();
PrintQueue queue = server.DefaultPrintQueue;
queue.UserPrintTicket = myTix;
queue.Refresh();
PrintCapabilities capabilities = queue.GetPrintCapabilities();
PageImageableArea area = capabilities.PageImageableArea;
string documentUri = "http://www.odewit.net/ArticleContent.aspx?id=Wpf3DIntro&format=xaml&lang=fr&xml=1";
XmlTextReader xr = new XmlTextReader(documentUri);
FlowDocument flowDocument = XamlReader.Load(xr) as FlowDocument;
IDocumentPaginatorSource paginatorSource = flowDocument as IDocumentPaginatorSource;
paginatorSource.DocumentPaginator.PageSize = new Size(
area.ExtentWidth,
area.ExtentHeight);
XpsDocumentWriter xpsWriter = PrintQueue.CreateXpsDocumentWriter(queue);
if (xpsWriter != null)
{
xpsWriter.Write(paginatorSource.DocumentPaginator);
} |
Partager