ImageData

ImageData class

Bir şekil için bir görüntü tanımlar.

Daha fazla bilgi edinmek için şu adresi ziyaret edin:Görüntülerle Çalışma belgeleme makalesi.

public class ImageData

Özellikleri

İsimTanım
BiLevel { get; set; }Bir görüntünün siyah beyaz olarak gösterilip gösterilmeyeceğini belirler.
Borders { get; }Görüntünün kenarlık koleksiyonunu alır. Kenarlıklar yalnızca satır içi görüntüler için etkilidir.
Brightness { get; set; }Resmin parlaklığını alır veya ayarlar. Bu özelliğin değeri 0,0 (en sönük) ile 1,0 (en parlak) arasında bir sayı olmalıdır.
ChromaKey { get; set; }Şeffaf olarak ele alınacak görüntünün renk değerini tanımlar.
Contrast { get; set; }Belirtilen resim için kontrastı alır veya ayarlar. Bu özellik için value 0,0 (en az kontrast) ile 1,0 (en büyük kontrast) arasında bir sayı olmalıdır.
CropBottom { get; set; }Alt taraftan resim kaldırma oranını tanımlar.
CropLeft { get; set; }Resmin sol taraftan kaldırılma oranını tanımlar.
CropRight { get; set; }Sağ taraftan resim kaldırma oranını tanımlar.
CropTop { get; set; }Resmin üst taraftan kaldırılma oranını tanımlar.
GrayScale { get; set; }Bir resmin gri tonlamalı modda görüntülenip görüntülenmeyeceğini belirler.
HasImage { get; }Geri Döndürürdoğru eğer şeklin görüntü baytları varsa veya bir görüntüye bağlantı veriyorsa.
ImageBytes { get; set; }Şekilde depolanan görüntünün ham baytlarını alır veya ayarlar.
ImageSize { get; }Görüntü boyutu ve çözünürlüğü hakkında bilgi alır.
ImageType { get; }Görüntünün türünü alır.
IsLink { get; }Geri Döndürürdoğru eğer görüntü şekle bağlıysa (ne zamanSourceFullName belirtilmiştir).
IsLinkOnly { get; }Geri Döndürürdoğru eğer görüntü bağlantılıysa ve belgede saklanmıyorsa.
SourceFullName { get; set; }Bağlantılı görüntü için kaynak dosyasının yolunu ve adını alır veya ayarlar.
Title { get; set; }Bir görüntünün başlığını tanımlar.

yöntemler

İsimTanım
FitImageToShape()Görüntü verilerini Şekil çerçevesine uydurur, böylece görüntü verilerinin en boy oranı Şekil çerçevesinin en boy oranıyla eşleşir.
Save(Stream)Görüntüyü belirtilen akışa kaydeder.
Save(string)Görüntüyü bir dosyaya kaydeder.
SetImage(Image)Şeklin görüntülediği görüntüyü ayarlar.
SetImage(Stream)Şeklin görüntülediği görüntüyü ayarlar.
SetImage(string)Şeklin görüntülediği görüntüyü ayarlar.
ToByteArray()Görüntünün depolanmış veya bağlantılı olup olmadığına bakılmaksızın herhangi bir görüntü için görüntü baytlarını döndürür.
ToImage()Şekilde depolanan görüntüyü birImage nesne.
ToStream()Görüntü baytlarını içeren bir akış oluşturur ve döndürür.

Notlar

KullanınImageDataBir şeklin içindeki görüntüye erişmek ve onu değiştirmek için özellik. Örnekleri oluşturmazsınızImageData sınıfa doğrudan.

Bir resim bir şeklin içerisinde saklanabilir, harici bir dosyaya bağlanabilir veya her ikisi de yapılabilir (bağlantı verilebilir ve belgede saklanabilir).

Görüntünün şeklin içinde depolanmış veya bağlantılı olup olmadığına bakılmaksızın, actual görüntüsüne her zaman şu komutu kullanarak erişebilirsiniz:ToByteArray ,ToStream ,ToImage veyaSave methods. Görüntü şeklin içinde saklanıyorsa, doğrudan şu yöntemi kullanarak da erişebilirsiniz:ImageBytes mülk.

Bir şeklin içinde bir görüntüyü depolamak için şunu kullanın:SetImage yöntem. Bir görüntüyü bir şekle bağlamak için,SourceFullName mülk.

Örnekler

Bir belgeden resimlerin 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");

// Şekil koleksiyonunu belgeden al,
// ve her şeklin görüntü verisini, görüntü içeren bir dosya olarak yerel dosya sistemine kaydeder.
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ındaki görüntüleri içerebilir.
        // Her bir resim için, formatına bağlı olarak otomatik olarak bir dosya uzantısı belirleyebiliriz.
        string imageFileName =
            $"File.ExtractImages.{imageIndex}{FileFormatUtil.ImageTypeToExtension(shape.ImageData.ImageType)}";
        shape.ImageData.Save(ArtifactsDir + imageFileName);
        imageIndex++;
    }
}

Bağlantılı bir resmin bir belgeye nasıl ekleneceğini gösterir.

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

string imageFileName = ImageDir + "Windows MetaFile.wmf";

// Aşağıda bir şeklin görüntülenebilmesi için bir resmin üzerine uygulanmasının iki yolu bulunmaktadır.
// 1 - Şekli resmi içerecek şekilde ayarlayın.
Shape shape = new Shape(builder.Document, ShapeType.Image);
shape.WrapType = WrapType.Inline;
shape.ImageData.SetImage(imageFileName);

builder.InsertNode(shape);

doc.Save(ArtifactsDir + "Image.CreateLinkedImage.Embedded.docx");

// Şekilde depoladığımız her resim, belgemizin boyutunu artıracaktır.
Assert.True(70000 < new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Embedded.docx").Length);

doc.FirstSection.Body.FirstParagraph.RemoveAllChildren();

// 2 - Şekli yerel dosya sistemindeki bir resim dosyasına bağlanacak şekilde ayarlayın.
shape = new Shape(builder.Document, ShapeType.Image);
shape.WrapType = WrapType.Inline;
shape.ImageData.SourceFullName = imageFileName;

builder.InsertNode(shape);
doc.Save(ArtifactsDir + "Image.CreateLinkedImage.Linked.docx");

// Resimlere bağlantı vermek yerden tasarruf sağlayacak ve daha küçük bir belgeyle sonuçlanacaktır.
// Ancak belge, yalnızca aşağıdaki durumlarda görüntüyü doğru şekilde görüntüleyebilir:
// resim dosyası şeklin "SourceFullName" özelliğinin işaret ettiği konumda mevcuttur.
Assert.True(10000 > new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Linked.docx").Length);

Ayrıca bakınız