NodeRendererBase

NodeRendererBase class

Basklass förShapeRenderer ochOfficeMathRenderer .

För att lära dig mer, besökArbeta med former dokumentationsartikel.

public abstract class NodeRendererBase

Egenskaper

namnBeskrivning
BoundsInPoints { get; }Hämtar formens faktiska gränser i punkter.
OpaqueBoundsInPoints { get; }Hämtar formens ogenomskinliga gränser i punkter.
SizeInPoints { get; }Hämtar formens faktiska storlek i punkter.

Metoder

namnBeskrivning
GetBoundsInPixels(float, float)Beräknar formens gränser i pixlar för en angiven zoomfaktor och upplösning.
GetBoundsInPixels(float, float, float)Beräknar formens gränser i pixlar för en angiven zoomfaktor och upplösning.
GetOpaqueBoundsInPixels(float, float)Beräknar formens ogenomskinliga gränser i pixlar för en angiven zoomfaktor och upplösning.
GetOpaqueBoundsInPixels(float, float, float)Beräknar formens ogenomskinliga gränser i pixlar för en angiven zoomfaktor och upplösning.
GetSizeInPixels(float, float)Beräknar formens storlek i pixlar för en angiven zoomfaktor och upplösning.
GetSizeInPixels(float, float, float)Beräknar formens storlek i pixlar för en angiven zoomfaktor och upplösning.
RenderToScale(Graphics, float, float, float)Återger formen till enGraphics objekt till en specificerad skala.
RenderToSize(Graphics, float, float, float, float)Återger formen till enGraphics objekt till en angiven storlek.
Save(Stream, ImageSaveOptions)Renderar formen till en bild och sparar i en ström.
Save(Stream, SvgSaveOptions)Renderar formen till en SVG-bild och sparar i en dataström.
Save(string, ImageSaveOptions)Renderar formen till en bild och sparar den i en fil.
Save(string, SvgSaveOptions)Återger formen till en SVG-bild och sparar den i en fil.

Exempel

Visar hur man mäter och skalar former.

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

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

// Verifiera storleken på bilden som OfficeMath-objektet skapar när vi renderar den.
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);

// Former med genomskinliga delar kan innehålla olika värden i egenskaperna "OpaqueBoundsInPoints".
Assert.AreEqual(122.0f, renderer.OpaqueBoundsInPoints.Width, 0.25f);
Assert.AreEqual(14.2f, renderer.OpaqueBoundsInPoints.Height, 0.1f);

// Hämta formstorleken i pixlar, med linjär skalning till en specifik DPI.
Rectangle bounds = renderer.GetBoundsInPixels(1.0f, 96.0f);

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

// Hämta formstorleken i pixlar, men med olika DPI för de horisontella och vertikala dimensionerna.
bounds = renderer.GetBoundsInPixels(1.0f, 96.0f, 150.0f);
Assert.AreEqual(163, bounds.Width);
Assert.AreEqual(27, bounds.Height);

// De ogenomskinliga gränserna kan variera även här.
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);

Se även