Windows.UI.Color foreground, comment, keyword1, keyword2, literal, url;\r
string fontName;\r
double fontSize;\r
- Document document;\r
LineBreakMethod lineBreakMethod;\r
int lineBreakCharCount, tabCount;\r
+ Document document;\r
bool urlMark;\r
IHilighter hilighter;\r
float displayDpi;\r
this.fontName = textbox.FontFamily.Source;\r
this.fontSize = textbox.FontSize;\r
this.tabCount = textbox.TabChars;\r
- this.document = new Document(textbox.Document);\r
+ this.document = textbox.Document;\r
this.lineBreakMethod = textbox.LineBreakMethod;\r
this.lineBreakCharCount = textbox.LineBreakCharCount;\r
this.drawLineNumber = textbox.DrawLineNumber;\r
this.padding = padding;\r
this.EnableHilight = true;\r
}\r
- public D2DRenderBase CreateRender(PrintPageDescription pagedesc, IPrintDocumentPackageTarget docPackageTarget)\r
+ public D2DPrintRender CreateRender(PrintPageDescription pagedesc, IPrintDocumentPackageTarget docPackageTarget)\r
{\r
- D2DRenderBase render;\r
+ D2DPrintRender render;\r
Size size = new Size(pagedesc.ImageableRect.Width, pagedesc.ImageableRect.Height);\r
render = new D2DPrintRender(this.fontName, this.fontSize, size, Math.Min(pagedesc.DpiX, pagedesc.DpiY), docPackageTarget);\r
render.Foreground = D2DRenderBase.ToColor4(this.foreground);\r
render.Url = D2DRenderBase.ToColor4(this.url);\r
return render;\r
}\r
- public PrintableView CreateView(PrintPageDescription pagedesc, D2DRenderBase render, string header, string footer)\r
+ public PrintableView CreateView(PrintPageDescription pagedesc, IPrintableTextRender render, string header, string footer)\r
{\r
- PrintableView view = new PrintableView(this.document, (IPrintableTextRender)render,padding);\r
+ Document documentSnap = new Document(this.document);\r
+ documentSnap.LayoutLines.Render = render;\r
+ PrintableView view = new PrintableView(documentSnap, render,padding);\r
view.TabStops = this.tabCount;\r
view.LineBreak = this.lineBreakMethod == LineBreakMethod.None ? LineBreakMethod.PageBound : this.lineBreakMethod;\r
view.LineBreakCharCount = this.lineBreakCharCount;\r
PrintTaskOptions options = (PrintTaskOptions)printTaskOptions;\r
PrintPageDescription pagedesc = options.GetPageDescription(1);\r
\r
- D2DRenderBase render = this.factory.CreateRender(pagedesc, docPackageTarget);\r
+ D2DPrintRender render = this.factory.CreateRender(pagedesc, docPackageTarget);\r
PrintableView view = this.factory.CreateView(pagedesc, render, this.Header, this.Fotter);\r
\r
bool result = false;\r