ImageData

ImageData class

Bir şekle ilişkin görüntüyü tanımlar.

Daha fazlasını öğrenmek için şu adresi ziyaret edin:Görsellerle Çalışmak dokümantasyon makalesi.

public class ImageData

Özellikleri

İsimTanım
BiLevel { get; set; }Bir görüntünün siyah beyaz görüntülenip görüntülenmeyeceğini belirler.
Borders { get; }Görüntünün kenarlıklarının koleksiyonunu alır. Kenarlıklar yalnızca satır içi resimlerde etkilidir.
Brightness { get; set; }Resmin parlaklığını alır veya ayarlar. Bu özelliğin değeri 0,0 (en soluk) ila 1,0 (en parlak) arasında bir sayı olmalıdır.
ChromaKey { get; set; }Şeffaf olarak değerlendirilecek görüntünün renk değerini tanımlar.
Contrast { get; set; }Belirtilen resmin kontrastını alır veya ayarlar. Bu özellik için value , 0,0 (en az kontrast) ila 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; }Resmin sağ taraftan kaldırılma 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; }İadelerdoğru şeklin görüntü baytları varsa veya bir görüntüye bağlantı veriyorsa.
ImageBytes { get; set; }Şekilde saklanan 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; }İadelerdoğru görüntü şekle bağlıysa (ne zamanSourceFullName belirtildi).
IsLinkOnly { get; }İadelerdoğru resim bağlantılıysa ve belgede saklanmıyorsa.
SourceFullName { get; set; }Bağlı görüntünün 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
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üleyeceği görüntüyü ayarlar.
SetImage(Stream)Şeklin görüntüleyeceği görüntüyü ayarlar.
SetImage(string)Şeklin görüntüleyeceği görüntüyü ayarlar.
ToByteArray()Görüntünün depolanmış veya bağlı olmasına bakılmaksızın herhangi bir görüntü için görüntü baytlarını döndürür.
ToImage()Şekilde saklanan görüntüyü bir dosya olarak alır.Image nesne.
ToStream()Görüntü baytlarını içeren bir akış oluşturur ve döndürür.

Notlar

KullanImageData bir şeklin içindeki görüntüye erişmek ve onu değiştirmek için kullanılan özellik. ImageData doğrudan sınıf.

Bir görüntü bir şeklin içinde saklanabilir, harici bir dosyaya bağlanabilir veya her ikisi de yapılabilir (bağlanabilir ve belgede saklanabilir).

Görüntünün şeklin içinde mi yoksa bağlantılı mı saklandığına bakılmaksızın, active görüntüsüne her zaman şunu kullanarak erişebilirsiniz:ToByteArray ,ToStream ,ToImage veyaSave method. Görüntü şeklin içinde saklanıyorsa, ona doğrudanImageBytes mülk.

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

Örnekler

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");

// Belgedeki şekillerin koleksiyonunu alın,
// ve resim içeren her şeklin resim verilerini dosya olarak yerel dosya sistemine 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ındaki görüntüleri içerebilir.
        // Her görsel 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++;
    }
}

Bağlantılı bir görüntünün 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 şekli görüntüleyebilmesi için bir şekle uygulamanın iki yolu verilmiştir.
// 1 - Resmi içerecek şekli 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 sakladığımız her görsel belgemizin boyutunu artıracaktır.
Assert.True(70000 < new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Embedded.docx").Length);

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

// 2 - Yerel dosya sistemindeki bir görüntü dosyasına bağlanacak şekli 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ı verilmesi yerden tasarruf sağlar ve belgenin daha küçük olmasını sağlar.
// Ancak belge görüntüyü yalnızca doğru şekilde görüntüleyebilir
// görüntü dosyası, şeklin "SourceFullName" özelliğinin işaret ettiği konumda mevcut.
Assert.True(10000 > new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Linked.docx").Length);

Ayrıca bakınız