NodeRendererBase

NodeRendererBase class

Clase base paraShapeRenderer yOfficeMathRenderer .

Para obtener más información, visite elTrabajando con formas Artículo de documentación.

public abstract class NodeRendererBase

Propiedades

NombreDescripción
BoundsInPoints { get; }Obtiene los límites reales de la forma en puntos.
OpaqueBoundsInPoints { get; }Obtiene los límites opacos de la forma en puntos.
SizeInPoints { get; }Obtiene el tamaño real de la forma en puntos.

Métodos

NombreDescripción
GetBoundsInPixels(float, float)Calcula los límites de la forma en píxeles para un factor de zoom y una resolución especificados.
GetBoundsInPixels(float, float, float)Calcula los límites de la forma en píxeles para un factor de zoom y una resolución especificados.
GetOpaqueBoundsInPixels(float, float)Calcula los límites opacos de la forma en píxeles para un factor de zoom y una resolución especificados.
GetOpaqueBoundsInPixels(float, float, float)Calcula los límites opacos de la forma en píxeles para un factor de zoom y una resolución especificados.
GetSizeInPixels(float, float)Calcula el tamaño de la forma en píxeles para un factor de zoom y una resolución especificados.
GetSizeInPixels(float, float, float)Calcula el tamaño de la forma en píxeles para un factor de zoom y una resolución especificados.
RenderToScale(Graphics, float, float, float)Representa la forma en unaGraphics objeto a una escala especificada.
RenderToSize(Graphics, float, float, float, float)Representa la forma en unaGraphics objeto a un tamaño especificado.
Save(Stream, ImageSaveOptions)Representa la forma en una imagen y la guarda en una secuencia.
Save(Stream, SvgSaveOptions)Representa la forma en una imagen SVG y la guarda en una secuencia.
Save(string, ImageSaveOptions)Representa la forma en una imagen y la guarda en un archivo.
Save(string, SvgSaveOptions)Representa la forma en una imagen SVG y la guarda en un archivo.

Ejemplos

Muestra cómo medir y escalar formas.

Document doc = new Document(MyDir + "Office math.docx");

OfficeMath officeMath = (OfficeMath)doc.GetChild(NodeType.OfficeMath, 0, true);
OfficeMathRenderer renderer = new OfficeMathRenderer(officeMath);

// Verificar el tamaño de la imagen que el objeto OfficeMath creará cuando lo rendericemos.
Assert.AreEqual(122.0f, renderer.SizeInPoints.Width, 0.25f);
Assert.AreEqual(13.0f, renderer.SizeInPoints.Height, 0.15f);

Assert.AreEqual(122.0f, renderer.BoundsInPoints.Width, 0.25f);
Assert.AreEqual(13.0f, renderer.BoundsInPoints.Height, 0.15f);

// Las formas con partes transparentes pueden contener valores diferentes en las propiedades "OpaqueBoundsInPoints".
Assert.AreEqual(122.0f, renderer.OpaqueBoundsInPoints.Width, 0.25f);
Assert.AreEqual(14.2f, renderer.OpaqueBoundsInPoints.Height, 0.1f);

// Obtenga el tamaño de la forma en píxeles, con escala lineal a un DPI específico.
Rectangle bounds = renderer.GetBoundsInPixels(1.0f, 96.0f);

Assert.AreEqual(163, bounds.Width);
Assert.AreEqual(18, bounds.Height);

// Obtenga el tamaño de la forma en píxeles, pero con un DPI diferente para las dimensiones horizontales y verticales.
bounds = renderer.GetBoundsInPixels(1.0f, 96.0f, 150.0f);
Assert.AreEqual(163, bounds.Width);
Assert.AreEqual(27, bounds.Height);

// Los límites opacos también pueden variar aquí.
bounds = renderer.GetOpaqueBoundsInPixels(1.0f, 96.0f);

Assert.AreEqual(163, bounds.Width);
Assert.AreEqual(19, bounds.Height);

bounds = renderer.GetOpaqueBoundsInPixels(1.0f, 96.0f, 150.0f);

Assert.AreEqual(163, bounds.Width);
Assert.AreEqual(29, bounds.Height);

Ver también