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; }Får formens faktiska gränser i poäng.
OpaqueBoundsInPoints { get; }Får de ogenomskinliga gränserna för formen i punkter.
SizeInPoints { get; }Får den faktiska storleken på formen i poäng.

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 de ogenomskinliga gränserna för formen i pixlar för en angiven zoomfaktor och upplösning.
GetOpaqueBoundsInPixels(float, float, float)Beräknar de ogenomskinliga gränserna för formen i pixlar för en angiven zoomfaktor och upplösning.
GetSizeInPixels(float, float)Beräknar storleken på formen i pixlar för en angiven zoomfaktor och upplösning.
GetSizeInPixels(float, float, float)Beräknar storleken på formen i pixlar för en angiven zoomfaktor och upplösning.
RenderToScale(Graphics, float, float, float)Gör formen till enGraphics objekt i en angiven skala.
RenderToSize(Graphics, float, float, float, float)Gör formen till enGraphics objekt till en angiven storlek.
Save(Stream, ImageSaveOptions)Gör formen till en bild och sparar den i en ström.
Save(string, ImageSaveOptions)Gör formen till en 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 kommer att skapa när vi renderar den.
Assert.AreEqual(119.0f, renderer.SizeInPoints.Width, 0.2f);
Assert.AreEqual(13.0f, renderer.SizeInPoints.Height, 0.1f);

Assert.AreEqual(119.0f, renderer.BoundsInPoints.Width, 0.2f);
Assert.AreEqual(13.0f, renderer.BoundsInPoints.Height, 0.1f);

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

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

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

// Få formstorleken i pixlar, men med en annan DPI för de horisontella och vertikala dimensionerna.
bounds = renderer.GetBoundsInPixels(1.0f, 96.0f, 150.0f);
Assert.AreEqual(159, bounds.Width);
Assert.AreEqual(28, bounds.Height);

// De ogenomskinliga gränserna kan variera även här.
bounds = renderer.GetOpaqueBoundsInPixels(1.0f, 96.0f);

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

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

Assert.AreEqual(159, bounds.Width);
Assert.AreEqual(30, bounds.Height);

Se även