GetOpaqueBoundsInPixels

GetOpaqueBoundsInPixels(float, float)

Belirtilen yakınlaştırma faktörü ve çözünürlük için şeklin opak sınırlarını piksel cinsinden hesaplar.

public Rectangle GetOpaqueBoundsInPixels(float scale, float dpi)
ParametreTipTanım
scaleSingleYakınlaştırma faktörü (1,0 %100’dür).
dpiSingleNoktalardan piksellere (inç başına nokta) dönüştürülecek çözünürlük.

Geri dönüş değeri

Şeklin piksel cinsinden opak dikdörtgeni.

Notlar

Bu yöntem dönüştürürOpaqueBoundsInPoints piksel cinsinden dikdörtgene dönüştürür ve şekli yalnızca opak kısmıyla oluşturmak için bir bitmap oluşturmak istediğinizde kullanışlı kullanışlıdır.

Örnekler

Şekillerin nasıl ölçüleceğini ve ölçeklendirileceğini gösterir.

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

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

// OfficeMath nesnesini oluşturduğumuzda oluşturacağı görüntünün boyutunu doğrulayın.
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);

// Saydam kısımlara sahip şekiller "OpaqueBoundsInPoints" özelliklerinde farklı değerler içerebilir.
Assert.AreEqual(119.0f, renderer.OpaqueBoundsInPoints.Width, 0.2f);
Assert.AreEqual(14.2f, renderer.OpaqueBoundsInPoints.Height, 0.1f);

// Belirli bir DPI'ya doğrusal ölçeklendirmeyle şekil boyutunu piksel cinsinden alın.
Rectangle bounds = renderer.GetBoundsInPixels(1.0f, 96.0f);

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

// Şekil boyutunu piksel cinsinden alın, ancak yatay ve dikey boyutlar için farklı bir DPI ile.
bounds = renderer.GetBoundsInPixels(1.0f, 96.0f, 150.0f);
Assert.AreEqual(159, bounds.Width);
Assert.AreEqual(28, bounds.Height);

// Opak sınırlar burada da değişebilir.
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);

Ayrıca bakınız


GetOpaqueBoundsInPixels(float, float, float)

Belirtilen yakınlaştırma faktörü ve çözünürlük için şeklin opak sınırlarını piksel cinsinden hesaplar.

public Rectangle GetOpaqueBoundsInPixels(float scale, float horizontalDpi, float verticalDpi)
ParametreTipTanım
scaleSingleYakınlaştırma faktörü (1,0 %100’dür).
horizontalDpiSingleNoktalardan piksellere (inç başına nokta) dönüştürülecek yatay çözünürlük.
verticalDpiSingleNoktalardan piksellere (inç başına nokta) dönüştürülecek dikey çözünürlük.

Geri dönüş değeri

Şeklin piksel cinsinden opak dikdörtgeni.

Notlar

Bu yöntem dönüştürürOpaqueBoundsInPoints piksel cinsinden dikdörtgene dönüştürür ve şekli yalnızca opak kısmıyla oluşturmak için bir bitmap oluşturmak istediğinizde kullanışlı kullanışlıdır.

Örnekler

Şekillerin nasıl ölçüleceğini ve ölçeklendirileceğini gösterir.

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

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

// OfficeMath nesnesini oluşturduğumuzda oluşturacağı görüntünün boyutunu doğrulayın.
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);

// Saydam kısımlara sahip şekiller "OpaqueBoundsInPoints" özelliklerinde farklı değerler içerebilir.
Assert.AreEqual(119.0f, renderer.OpaqueBoundsInPoints.Width, 0.2f);
Assert.AreEqual(14.2f, renderer.OpaqueBoundsInPoints.Height, 0.1f);

// Belirli bir DPI'ya doğrusal ölçeklendirmeyle şekil boyutunu piksel cinsinden alın.
Rectangle bounds = renderer.GetBoundsInPixels(1.0f, 96.0f);

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

// Şekil boyutunu piksel cinsinden alın, ancak yatay ve dikey boyutlar için farklı bir DPI ile.
bounds = renderer.GetBoundsInPixels(1.0f, 96.0f, 150.0f);
Assert.AreEqual(159, bounds.Width);
Assert.AreEqual(28, bounds.Height);

// Opak sınırlar burada da değişebilir.
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);

Ayrıca bakınız