可用于:用户界面的ASP。NET MVC | 用户界面的ASP。净AJAX | Blazor用户界面 | WPF的用户界面 | WinForms的UI | Silverlight的用户界面 | Xamarin的UI | WinUI的用户界面 | 用户界面的ASP。网络核心 | .NET MAUI的用户界面

Telerik文档处理?下载30天免费试用

类旨在以类流的方式排列添加到其中的元素。它可用于测量,绘图,分割FixedContentElements

添加和修改内容

最常见的用法就是画出流畅的内容。类似于FixedContentEditor,一个块可以包含图像、图形或文本。同一个Block实例只能被绘制一次。

插入文本

插入TextFragments是用其中一个重载实现的Insert ()方法。示例1通过向方法传递字符串来显示简单的插入。

例1:插入文本

Block Block = new Block();block.InsertText(“文本”);

示例2演示如何插入具有特定字体族的文本。

例2:插入Arial字体的文本

块。InsertText(new FontFamily("Arial"), "Text");
InsertText()方法有一个额外的重载,使您能够为想要插入的文本指定字体族、字体样式和字体权重。

例3:插入样式文本

块。InsertText(新的FontFamily(“Arial”),FontStyles。斜体,FontWeights。大胆,“文本”);

当“\r”和“\n”字符被插入到PDF文档中时,它们没有“转到下一行”的通常含义,并且您不能简单地插入包含这些字符的文本以生成多行文本。相反,应该插入换行符。

插入换行符

插入换行符会导致下一个元素从新行开始。操作是通过InsertLineBreak ()方法,如示例4

例4:断行

block.InsertLineBreak ();

插入图片

提供以下插入图像的方法:

  • block.InsertImage (imageSource);
  • block.InsertImage(流);
  • 块。InsertImage (imageSource、大小);
  • 块。InsertImage(流、大小);
  • 块。InsertImage(imageSource, width, height);
  • 块。InsertImage(流,宽度,高度);

有关图片库上下文中图像的信息可在ImageSource而且图像文章。

插入几何图形

几何图形允许您在文档中描述2D形状。可以使用以下方法插入不同的几何图形。

  • 块。InsertCircle(中心、半径);
  • 块。InsertEllipse(中心,radiusX, radiusY);
  • 块。InsertLine(point1卷帘窗);
  • 块。InsertPath(几何);
  • 块。InsertRectangle(矩形);

插入Form-XObject元素

Form(也称为Form- xobject)是一个可以包含PDF内容并且可以在文档中剪切的对象。Block类公开InsertForm ()方法,该方法允许您在文档中插入FormSource对象。

例5:插入一个表单

block.InsertForm (simpleForm);
InsertForm()还有两个重载,使您能够传递应该用于表单的大小。

有关如何创建表单的详细信息,请检查形式而且FormSource文章。

改变当前样式

类的一些属性和方法会影响它的呈现方式:

  • SpacingBefore:表示之前的间距。

  • SpacingAfter:表示之后的空格。

  • LineSpacing:线与线之间的间距。

  • LineSpacingType:指定如何解释行间距。

  • FirstLineIndent:第一行的缩进。

  • LeftIndent:左缩进。

  • RightIndent:正确的缩进。

  • 写成BackgroundColor:背景色。

  • HorizontalAlignment:内容的水平对齐。

  • VerticalAlignment:内容的垂直对齐。

  • 子弹:应呈现为的元素的列表项目。

  • IndentAfterBullet:项目符号元素后的缩进大小。

  • TextProperties而且GraphicProperties:负责文本和图形属性。有关更多信息,请参阅文本和图形属性篇文章。

  • SaveTextProperties ():保存TextProperties。它返回一个IDisposable对象,当dispose调用该对象时RestoreTextProperties ()并且可以在using语句中使用。

  • RestoreTextProperties ():将TextProperties恢复到以前的状态。

  • SaveGraphicProperties ():保存GraphicProperties。它返回一个IDisposable对象,当dispose调用该对象时RestoreTextProperties ()并且可以在using语句中使用。

  • RestoreGraphicProperties ():将图形属性恢复到之前的状态。

  • SaveProperties ():保存文本和图形属性。它返回一个IDisposable对象,当dispose调用该对象时RestoreTextProperties ()并且可以在using语句中使用。

  • RestoreProperties ():恢复文本和图形属性。

  • SetBullet(List List, int listLevel):此方法帮助您轻松地设置项目符号相关的属性,这些属性涉及某些List类实例的编号和格式。关于列表的更多信息,您可以在这篇文章

  • 明确的():清除块中的所有元素。

绘制块

控件可以将块绘制到内容画()方法。该方法接受参数a矩形,指定所需的大小和相对于元素编辑器的位置。

例5:绘制块

矩形boundingRect =新的矩形(新的点(0,0),新的大小(200,300));块。画(fixedContentEditor boundingRect);

每个方块只能画一次。否则,将抛出异常。

测量块尺寸

方法的一个重载可以实现对块的测量测量()方法。调用不带参数的方法将返回块中元素所需的大小,并设置块的大小DesiredSize财产。当您想要确定Block的大小时,此方法非常方便。当您想要换行文本或页面空间有限时,请确保将可用大小传递给该方法。

调用接受可用大小的重载来测量该特定大小的块。此外,设置DesiredSize属性,它设置PendingElements属性,该元素的集合不能满足可用大小。

例7创建一个文本为“Hello RadPdfProcessing!”的Block并测量它。

例7:度量块

Block Block = new Block();块。InsertText(“你好RadPdfProcessing !”);Size = block.Measure();

分割块

Split ()方法返回一个具有相同属性的新Block。根据最后一次度量调用的结果,生成的块包含所有不适合当前块的未决元素。

中的代码示例8把一个街区一分为二。第一个包含文本“Hello”,第二个包含“RadPdfProcessing!”。

例8:分割块

Block helloBlock = new Block();helloBlock.InsertText(“Hello”);大小helloSize = helloBlock.Measure();Block Block = new Block();块。InsertText(“你好RadPdfProcessing !”);Size = block.Measure(helloSize);Block secondBlock = Block . split ();

另请参阅

在本文中
Baidu
map