Shape

Shape class

Otomatik Şekil, metin kutusu, serbest biçim, OLE nesnesi, ActiveX denetimi veya resim gibi çizim katmanındaki bir nesneyi temsil eder.

public sealed class Shape : ShapeBase

yapıcılar

İsim Tanım
Shape(DocumentBase, ShapeType) Yeni bir şekil nesnesi oluşturur.

Özellikleri

İsim Tanım
AllowOverlap { get; set; } Bu şeklin diğer şekillerle örtüşüp örtüşmeyeceğini belirten bir değer alır veya ayarlar.
AlternativeText { get; set; } Grafik yerine görüntülenecek alternatif metni tanımlar.
AnchorLocked { get; set; } Şeklin bağlantısının kilitli olup olmadığını belirtir.
AspectRatioLocked { get; set; } Şeklin en boy oranının kilitli olup olmadığını belirtir.
BehindText { get; set; } Şeklin metnin altında mı yoksa üstünde mi olduğunu belirtir.
Bottom { get; } Şeklin içeren bloğunun alt kenarının konumunu alır.
Bounds { get; set; } Şeklin içerdiği bloğun konumunu ve boyutunu alır veya ayarlar.
BoundsInPoints { get; } En üstteki şeklin bağlantısına göre, şekli içeren bloğun konumunu ve boyutunu nokta olarak alır.
BoundsWithEffects { get; } Çizim efektleri uygulandıktan sonra bu şekil nesnesinin sahip olduğu son kapsamı alır. Değer, noktalarla ölçülür.
CanHaveImage { get; } Şekil türü, şeklin bir görüntüye sahip olmasına izin veriyorsa true değerini döndürür.
Chart { get; } Bu şeklin bir Grafiği varsa, grafik özelliklerine erişim sağlar.
ChildNodes { get; } Bu düğümün tüm acil alt düğümlerini alır.
CoordOrigin { get; set; } Bu şekli içeren bloğun sol üst köşesindeki koordinatlar.
CoordSize { get; set; } Bu şeklin içerdiği bloğun içindeki koordinat uzayının genişliği ve yüksekliği.
Count { get; } Bu düğümün acil alt öğelerinin sayısını alır.
CustomNodeId { get; set; } Özel düğüm tanımlayıcısını belirtir.
DistanceBottom { get; set; } Belge metni ile şeklin alt kenarı arasındaki mesafeyi (nokta olarak) döndürür veya ayarlar.
DistanceLeft { get; set; } Belge metni ile şeklin sol kenarı arasındaki mesafeyi (nokta olarak) döndürür veya ayarlar.
DistanceRight { get; set; } Belge metni ile şeklin sağ kenarı arasındaki mesafeyi (nokta olarak) döndürür veya ayarlar.
DistanceTop { get; set; } Belge metni ile şeklin üst kenarı arasındaki mesafeyi (nokta olarak) döndürür veya ayarlar.
virtual Document { get; } Bu düğümün ait olduğu belgeyi alır.
ExtrusionEnabled { get; } Bir ekstrüzyon efekti etkinleştirilirse true değerini döndürür.
Fill { get; } Şekil için dolgu biçimlendirmesini alır.
FillColor { get; set; } Şeklin kapalı yolunu dolduran fırça rengini tanımlar.
Filled { get; set; } Şeklin kapalı yolunun doldurulup doldurulmayacağını belirler.
FirstChild { get; } Düğümün ilk alt öğesini alır.
FirstParagraph { get; } Şekildeki ilk paragrafı alır.
FlipOrientation { get; set; } Şeklin yönünü değiştirir.
Font { get; } Bu nesnenin yazı tipi biçimlendirmesine erişim sağlar.
HasChart { get; } Bu Şeklin birChart .
HasChildNodes { get; } Bu düğümün herhangi bir alt düğümü varsa doğru döndürür.
HasImage { get; } Şekilde görüntü baytları varsa veya bir görüntüye bağlanırsa true değerini döndürür.
HasSmartArt { get; } Bu Shape bir SmartArt nesnesine sahipse true döndürür.
Height { get; set; } Şeklin içerdiği bloğun yüksekliğini alır veya ayarlar.
HorizontalAlignment { get; set; } Şeklin yatay olarak nasıl konumlandırılacağını belirtir.
HorizontalRuleFormat { get; } Yatay kural şeklinin özelliklerine erişim sağlar. Yatay kural olmayan bir şekil için null döndürür.
HRef { get; set; } Bir şekil için tam köprü adresini alır veya ayarlar.
ImageData { get; } Şeklin görüntüsüne erişim sağlar. Şeklin görüntüsü yoksa null değerini döndürür.
override IsComposite { get; } Bu düğümün alt düğümleri olabileceğinden true değerini döndürür.
IsDecorative { get; set; } Şeklin belgede dekoratif olup olmadığını belirten bayrağı alır veya ayarlar.
IsDeleteRevision { get; } Bu nesne, değişiklik izleme etkinleştirilirken Microsoft Word’de silindiyse true değerini döndürür.
IsGroup { get; } Bu bir grup şekliyse true değerini döndürür.
IsHorizontalRule { get; } Bu şekil yatay bir kural ise true değerini döndürür.
IsImage { get; } Bu şekil bir görüntü şekliyse true değerini döndürür.
IsInline { get; } Bu şeklin metinle aynı hizada olup olmadığını belirlemenin hızlı bir yolu.
IsInsertRevision { get; } Bu nesne, değişiklik izleme etkinken Microsoft Word’e eklendiyse true değerini döndürür.
IsLayoutInCell { get; set; } Şeklin bir tablonun içinde mi yoksa dışında mı görüntülendiğini belirten bir bayrak alır veya ayarlar.
IsMoveFromRevision { get; } İade doğru değişiklik izleme etkinken bu nesne Microsoft Word’de taşındıysa (silindiyse).
IsMoveToRevision { get; } İade doğru bu nesne, değişiklik izleme etkinken Microsoft Word’de taşındıysa (yerleştirildiyse).
IsSignatureLine { get; } Şeklin bir SignatureLine olduğunu gösterir.
IsTopLevel { get; } Bu şekil bir grup şeklinin alt öğesi değilse true değerini döndürür.
IsWordArt { get; } Bu şekil bir WordArt nesnesiyse true değerini döndürür.
LastChild { get; } Düğümün son alt öğesini alır.
LastParagraph { get; } Şekildeki son paragrafı alır.
Left { get; set; } Şeklin içeren bloğunun sol kenarının konumunu alır veya ayarlar.
MarkupLanguage { get; } Bu grafik nesnesi için kullanılan İşaretleme Dilini alır.
Name { get; set; } İsteğe bağlı şekil adını alır veya ayarlar.
NextSibling { get; } Bu düğümden hemen sonraki düğümü alır.
override NodeType { get; } İadeShape .
OleFormat { get; } Bir şeklin OLE verilerine erişim sağlar. OLE nesnesi veya ActiveX denetimi olmayan bir şekil için null. döndürür
ParentNode { get; } Bu düğümün hemen üst öğesini alır.
ParentParagraph { get; } Hemen üst paragrafı döndürür.
PreviousSibling { get; } Bu düğümden hemen önceki düğümü alır.
Range { get; } Bir döndürür Menzil belgenin bu düğümde bulunan bölümünü temsil eden nesne.
RelativeHorizontalPosition { get; set; } Şeklin yatay olarak neye göre konumlandırıldığını belirtir.
RelativeVerticalPosition { get; set; } Şeklin dikey olarak neye göre konumlandırıldığını belirtir.
Right { get; } Şeklin içeren bloğunun sağ kenarının konumunu alır.
Rotation { get; set; } Şeklin döndürüldüğü açıyı (derece olarak) tanımlar. Pozitif değer, saat yönünde dönüş açısına karşılık gelir.
ScreenTip { get; set; } Fare işaretçisi şeklin üzerine geldiğinde görüntülenen metni tanımlar.
ShadowEnabled { get; } Bir gölge efekti etkinleştirilirse true değerini döndürür.
ShadowFormat { get; } Şekil için gölge biçimlendirmesini alır.
ShapeType { get; } Şekil türünü alır.
SignatureLine { get; } AlırSignatureLine şekil bir imza satırı ise nesne. İadeler hükümsüz aksi halde.
SizeInPoints { get; } Şeklin boyutunu nokta olarak alır.
StoryType { get; } İadeTextbox .
Stroke { get; } Bir şekil için kontur tanımlar.
StrokeColor { get; set; } Konturun rengini tanımlar.
Stroked { get; set; } Yolun konturlu olup olmayacağını tanımlar.
StrokeWeight { get; set; } Bir şeklin yolunu nokta olarak çizen fırça kalınlığını tanımlar.
Target { get; set; } Şekil köprüsü için hedef çerçeveyi alır veya ayarlar.
TextBox { get; } Metnin bir şekilde nasıl görüntüleneceğini belirleyen özellikleri tanımlar.
TextPath { get; } Metin yolunun (bir WordArt nesnesinin) metnini tanımlar.
Title { get; set; } Geçerli şekil nesnesinin başlığını (başlık) alır veya ayarlar.
Top { get; set; } Şeklin içeren bloğunun üst kenarının konumunu alır veya ayarlar.
VerticalAlignment { get; set; } Şeklin dikey olarak nasıl konumlandırılacağını belirtir.
Width { get; set; } Şeklin içerdiği bloğun genişliğini alır veya ayarlar.
WrapSide { get; set; } Metnin şeklin etrafına nasıl sarılacağını belirtir.
WrapType { get; set; } Şeklin satır içi mi yoksa kayan mı olduğunu tanımlar. Kayan şekiller için, şeklin etrafındaki metin için kaydırma modunu tanımlar.
ZOrder { get; set; } Çakışan şekillerin görüntülenme sırasını belirler.

yöntemler

İsim Tanım
override Accept(DocumentVisitor) Bir ziyaretçiyi kabul eder.
AdjustWithEffects(RectangleF) Efekt kapsamının kaynak dikdörtgen değerlerini ekler ve son dikdörtgeni döndürür.
AppendChild(Node) Belirtilen düğümü, bu düğüm için alt düğümler listesinin sonuna ekler.
Clone(bool) Düğümün bir kopyasını oluşturur.
CreateNavigator() Sistem kullanımı için ayrılmıştır. IXPathNavigable.
FetchInheritedShapeAttr(int) Sistem kullanımı için ayrılmıştır. IShapeAttrSource.
FetchShapeAttr(int) Sistem kullanımı için ayrılmıştır. IShapeAttrSource.
GetAncestor(NodeType) Belirtilenin ilk atasını alırNodeType .
GetAncestor(Type) Belirtilen nesne türünün ilk üst öğesini alır.
GetChild(NodeType, int, bool) Belirtilen türle eşleşen N. alt düğümü döndürür.
GetChildNodes(NodeType, bool) Belirtilen türle eşleşen canlı bir alt düğüm koleksiyonu döndürür.
GetDirectShapeAttr(int) Sistem kullanımı için ayrılmıştır. IShapeAttrSource.
GetEnumerator() Bu düğümün alt düğümleri üzerinde her stil yinelemesi için destek sağlar.
GetShapeRenderer() Bu şekli bir görüntüye dönüştürmek için kullanılabilecek bir nesne oluşturur ve döndürür.
override GetText() Bu düğümün ve tüm alt öğelerinin metnini alır.
IndexOf(Node) Alt düğüm dizisindeki belirtilen alt düğümün dizinini döndürür.
InsertAfter(Node, Node) Belirtilen referans düğümünden hemen sonra belirtilen düğümü ekler.
InsertBefore(Node, Node) Belirtilen düğümü, belirtilen referans düğümünden hemen önce ekler.
LocalToParent(PointF) Yerel koordinat alanından bir değeri ana şeklin koordinat alanına dönüştürür.
NextPreOrder(Node) Ön sipariş ağaç geçiş algoritmasına göre sonraki düğümü alır.
PrependChild(Node) Belirtilen düğümü, bu düğüm için alt düğümler listesinin başına ekler.
PreviousPreOrder(Node) Ön sipariş ağacı geçiş algoritmasına göre önceki düğümü alır.
Remove() Kendini üst öğeden kaldırır.
RemoveAllChildren() Geçerli düğümün tüm alt düğümlerini kaldırır.
RemoveChild(Node) Belirtilen alt düğümü kaldırır.
RemoveShapeAttr(int) Sistem kullanımı için ayrılmıştır. IShapeAttrSource.
RemoveSmartTags() Tümünü kaldırırSmartTag geçerli düğümün alt düğümleri.
SelectNodes(string) XPath ifadesiyle eşleşen düğümlerin listesini seçer.
SelectSingleNode(string) XPath ifadesiyle eşleşen ilk Düğümü seçer.
SetShapeAttr(int, object) Sistem kullanımı için ayrılmıştır. IShapeAttrSource.
ToString(SaveFormat) Düğümün içeriğini belirtilen biçimde bir dizeye aktarır.
ToString(SaveOptions) Belirtilen kaydetme seçeneklerini kullanarak düğümün içeriğini bir dizeye aktarır.
UpdateSmartArtDrawing() Aspose.Words’ün SmartArt soğuk işleme motorunu kullanarak SmartArt önceden oluşturulmuş çizimi günceller.

Notlar

KullanmakShape bir Microsoft Word belgesinde şekiller oluşturabilir veya değiştirebilirsiniz.

Bir şeklin önemli bir özelliği, onunShapeType. Farklı türlerindeki şekiller, bir Word belgesinde farklı yeteneklere sahip olabilir. Örneğin, yalnızca resim ve OLE shape içinde resimler olabilir. Şekillerin çoğunda metin olabilir, ancak hepsinde olmayabilir.

Metin içerebilen, içerebilen şekillerParagraph and Table çocuklar gibi düğümler.

Örnekler

Bir sayfanın ortasına kayan bir görüntünün nasıl ekleneceğini gösterir.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Üst üste binen metnin arkasında görünecek kayan bir resim ekleyin ve onu sayfanın ortasına hizalayın.
Shape shape = builder.InsertImage(ImageDir + "Logo.jpg");
shape.WrapType = WrapType.None;
shape.BehindText = true;
shape.RelativeHorizontalPosition = RelativeHorizontalPosition.Page;
shape.RelativeVerticalPosition = RelativeVerticalPosition.Page;
shape.HorizontalAlignment = HorizontalAlignment.Center;
shape.VerticalAlignment = VerticalAlignment.Center;

doc.Save(ArtifactsDir + "Image.CreateFloatingPageCenter.docx");

Bir belgeden görüntülerin nasıl çıkarılacağını ve bunların yerel dosya sistemine ayrı dosyalar olarak nasıl kaydedileceğini gösterir.

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

// Belgeden şekil koleksiyonunu alın,
// ve bir görüntü ile her şeklin görüntü verilerini yerel dosya sistemine dosya olarak kaydedin.
NodeCollection shapes = doc.GetChildNodes(NodeType.Shape, true);

Assert.AreEqual(9, shapes.Count(s => ((Shape)s).HasImage));

int imageIndex = 0;
foreach (Shape shape in shapes.OfType<Shape>())
{
    if (shape.HasImage)
    {
        // Şekillerin görüntü verileri, birçok olası görüntü formatının görüntülerini içerebilir. 
        // Her resim için formatına göre otomatik olarak bir dosya uzantısı belirleyebiliriz.
        string imageFileName =
            $"File.ExtractImages.{imageIndex}{FileFormatUtil.ImageTypeToExtension(shape.ImageData.ImageType)}";
        shape.ImageData.Save(ArtifactsDir + imageFileName);
        imageIndex++;
    }
}

Bir belgeden tüm şekillerin nasıl silineceğini gösterir.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// İçinde başka bir şekil olan bir grup şekliyle birlikte iki şekil ekleyin.
builder.InsertShape(ShapeType.Rectangle, 400, 200);
builder.InsertShape(ShapeType.Star, 300, 300);

GroupShape group = new GroupShape(doc);
group.Bounds = new RectangleF(100, 50, 200, 100);
group.CoordOrigin = new Point(-1000, -500);

Shape subShape = new Shape(doc, ShapeType.Cube);
subShape.Width = 500;
subShape.Height = 700;
subShape.Left = 0;
subShape.Top = 0;

group.AppendChild(subShape);
builder.InsertNode(group);

Assert.AreEqual(3, doc.GetChildNodes(NodeType.Shape, true).Count);
Assert.AreEqual(1, doc.GetChildNodes(NodeType.GroupShape, true).Count);

// Belgeden tüm Shape düğümlerini kaldırın.
NodeCollection shapes = doc.GetChildNodes(NodeType.Shape, true);
shapes.Clear();

// Tüm şekiller gitti, ancak grup şekli hala belgede.
Assert.AreEqual(1, doc.GetChildNodes(NodeType.GroupShape, true).Count);
Assert.AreEqual(0, doc.GetChildNodes(NodeType.Shape, true).Count);

// Tüm grup şekillerini ayrı ayrı kaldır.
NodeCollection groupShapes = doc.GetChildNodes(NodeType.GroupShape, true);
groupShapes.Clear();

Assert.AreEqual(0, doc.GetChildNodes(NodeType.GroupShape, true).Count);
Assert.AreEqual(0, doc.GetChildNodes(NodeType.Shape, true).Count);

Ayrıca bakınız