←选择平台

渲染方法

总结
使这SvgDocument一个输出引擎。
语法
c#
VB
c++
Java
公共呈现(_按值传递引擎作为IRenderingEngine,_按值传递选项作为SvgRenderOptions_)
公共无效呈现(IRenderingEngine引擎,SvgRenderOptions选项)

参数

引擎
渲染引擎使用目标设备。不能

选项
在渲染选项来使用。可以

讲话

有关更多信息,请参考SVG呈现

使用栅格化来呈现这个SVG文档LEADTOOLS表面Leadtools.RasterImage对象。

这个方法将抛出一个异常,如果这个文档不是平(的价值IsFlat),或者如果它没有有效的物理边界的值((像素)Bounds.IsValid)。

如果该值的选项,然后将使用以下默认选项:

成员 价值
SvgRenderOptions.Bounds

当前的文档(物理界限Bounds.Bounds)

SvgRenderOptions.ClipBounds

空矩形呈现文档

SvgRenderOptions.Transform

身份Leadtools.LeadMatrix

SvgRenderOptions.UseBackgroundColor

真正的

写成BackgroundColor

白色的颜色

例子

这个例子将一个页面从PDF文件转换为SVG格式和呈现形式。

c#
VB
使用Leadtools;使用Leadtools.Codecs;使用Leadtools.Drawing;使用Leadtools.Forms.DocumentWriters;使用Leadtools.Svg;使用LeadtoolsExamples.Common;公共无效SvgDocumentRenderExample (){/ /创建一个窗体,带有一个图片框表格形式=形式();图片框图片框=图片框();图片框。码头= DockStyle.Fill;form.Controls.Add(图片框);SvgDocument文档=;/ /加载一个页面从SVG文档文件字符串srcFileName = Path.Combine (ImagesPath.Path,“Leadtools.pdf”);使用(var编解码器=RasterCodecs ()){/ /设置300作为加载文档文件的默认值codecs.Options.RasterizeDocument.Load。分辨率= 300;文档=编解码器。LoadSvg (srcFileName 1)作为SvgDocument;}/ /确保文档是有效的呈现如果(document.IsFlat !)document.Flat ();如果(document.Bounds.IsValid !)document.CalculateBounds ();/ /优化呈现增加的速度document.BeginRenderOptimize ();Console.WriteLine (“IsRenderOptimized”+ document.IsRenderOptimized);/ /这是我们油漆代码图片框。油漆+ =(发送方,e) = >{图形图像= e.Graphics;/ /我们将配合和中心的SVG文档图片框的客户区矩形dstBounds = pictureBox.ClientRectangle;如果(dstBounds。宽度< 1||dstBounds。高度< 1)返回;/ /创建的变换矩阵LeadMatrix变换= LeadMatrix.Identity;LeadRectD srcBounds = document.Bounds.Bounds;/ /计算放大我们可以配合变焦= 1.0;如果(dstBounds。宽度> dstBounds.Height){变焦= dstBounds。宽/ srcBounds.Width;如果((变焦* srcBounds.Height) > dstBounds.Height)变焦= dstBounds。高度/ srcBounds.Height;}其他的{变焦= dstBounds。高度/ srcBounds.Height;如果((变焦* srcBounds.Width) > dstBounds.Width)变焦= dstBounds。宽/ srcBounds.Width;}/ /我们有缩放因子,设置它的变换变换。规模(放大、放大);/ /中心xOffset = (dstBounds。(宽度)-放大* srcBounds.Width) / 2.0;yOffset = (dstBounds。(高度)-放大* srcBounds.Height) / 2.0;变换。翻译(xOffset yOffset);/ /设置渲染选项SvgRenderOptions选项=SvgRenderOptions ();/ /使用我们的变换选项。变换=变换;/ /剪切(如果有的话)选项。ClipBounds = LeadRectD.Create (e.ClipRectangle。X, e.ClipRectangle。Y, e.ClipRectangle。宽度,e.ClipRectangle.Height);/ /填充背景颜色呈白色选项。使用写成BackgroundColor=真正的;选项。写成BackgroundColor = RasterColor.FromKnownColor (RasterKnownColor.White);选项。边界= srcBounds;/ /创建一个渲染引擎使用(var引擎= RenderingEngineFactory.Create(图形)){/ /渲染文档文档。呈现(引擎,选项);}};的形式。SizeChanged + =(发送方,e) = > pictureBox.Invalidate ();form.ShowDialog ();document.Dispose ();}
进口Leadtools进口Leadtools.Codecs进口Leadtools.Drawing进口Leadtools.Forms.DocumentWriters进口Leadtools.Svg公共共享SvgDocumentRenderExample ()“创建一个窗体,带有一个图片框昏暗的形式作为形式()昏暗的图片框作为图片框()图片框。码头= DockStyle.Fillform.Controls.Add(图片框)昏暗的文档作为SvgDocument =没有什么“加载一个页面从SVG文档文件昏暗的srcFileName作为字符串= Path.Combine (Common.ImagesPath.Path“Leadtools.pdf”)使用编解码器作为RasterCodecs ()“300设置为默认值加载文档文件codecs.Options.RasterizeDocument.Load。分辨率= 300文档=DirectCast(编解码器。LoadSvg (srcFileName 1没有什么),SvgDocument)结束使用确保文档是有效的呈现如果document.IsFlat然后document.Flat (没有什么)结束如果如果document.Bounds.IsValid然后document.CalculateBounds ()结束如果优化它的呈现增加的速度document.BeginRenderOptimize ()Console.WriteLine (“IsRenderOptimized”+ document.IsRenderOptimized.ToString ())“这是我们的油漆代码AddHandlerpictureBox.Paint,(发送方作为对象e作为PaintEventArgs)昏暗的图形作为图形= e.Graphics我们将配合和中心的SVG文档图片框的客户区昏暗的dstBounds作为矩形= pictureBox.ClientRectangle如果dstBounds。宽度< 1OrElsedstBounds。高度< 1然后返回结束如果“创建的变换矩阵昏暗的变换作为LeadMatrix = LeadMatrix.Identity昏暗的srcBounds作为LeadRectD = document.Bounds.Bounds”放大,所以我们可以计算昏暗的变焦作为= 1.0如果dstBounds。宽度> dstBounds.Height然后变焦= dstBounds。宽/ srcBounds.Width如果(放大* srcBounds.Height) > dstBounds.Height然后变焦= dstBounds。高度/ srcBounds.Height结束如果其他的变焦= dstBounds。高度/ srcBounds.Height如果(放大* srcBounds.Width) > dstBounds.Width然后变焦= dstBounds。宽/ srcBounds.Width结束如果结束如果我们放大因子,设置它的变换变换。量表(放大、放大)的中心昏暗的xOffset作为= (dstBounds。(宽度)-放大* srcBounds.Width) / 2.0昏暗的yOffset作为= (dstBounds。高度-(变焦* srcBounds.Height)) / 2.0变换。翻译(xOffset yOffset)“现在设置渲染选项昏暗的选项作为SvgRenderOptions ()“所有的文档选项。边界= srcBounds使用我们的变换选项。变换=变换“剪切(如果有的话)选项。ClipBounds = LeadRectD.Create (e.ClipRectangle。X, e.ClipRectangle。Y, e.ClipRectangle。宽度,e.ClipRectangle.Height)把背景填充白色选项。使用写成BackgroundColor=真正的选项。写成BackgroundColor = RasterColor.FromKnownColor (RasterKnownColor.White)创建渲染引擎使用引擎作为IRenderingEngine = RenderingEngineFactory.Create(图形)文档的呈现文档。呈现(引擎,选项)结束使用结束AddHandlerform.SizeChanged,(发送方作为对象e作为EventArgs)pictureBox.Invalidate ()结束form.ShowDialog ()document.Dispose ()结束
需求

目标平台

另请参阅

参考

SvgDocument类

SvgDocument成员

Leadtools.Svg作为sembly
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。