ImageData
ImageData class
Définit une image pour une forme.
Pour en savoir plus, visitez leTravailler avec des images article documentaire.
public class ImageData
Propriétés
Nom | La description |
---|---|
BiLevel { get; set; } | Détermine si une image sera affichée en noir et blanc. |
Borders { get; } | Obtient la collection de bordures de l’image. Les bordures n’ont d’effet que sur les images en ligne. |
Brightness { get; set; } | Obtient ou définit la luminosité de l’image. La valeur de cette propriété doit être un nombre compris entre 0,0 (le plus sombre) et 1,0 (le plus lumineux). |
ChromaKey { get; set; } | Définit la valeur de couleur de l’image qui sera traitée comme transparente. |
Contrast { get; set; } | Obtient ou définit le contraste de l’image spécifiée. La valeur pour cette propriété doit être un nombre compris entre 0,0 (le moindre contraste) et 1,0 (le plus grand contraste). |
CropBottom { get; set; } | Définit la fraction de suppression de l’image du côté inférieur. |
CropLeft { get; set; } | Définit la fraction de suppression de l’image du côté gauche. |
CropRight { get; set; } | Définit la fraction de suppression de l’image du côté droit. |
CropTop { get; set; } | Définit la fraction de suppression de l’image du côté supérieur. |
GrayScale { get; set; } | Détermine si une image s’affichera en mode niveaux de gris. |
HasImage { get; } | Retoursvrai si la forme contient des octets d’image ou lie une image. |
ImageBytes { get; set; } | Obtient ou définit les octets bruts de l’image stockée dans la forme. |
ImageSize { get; } | Obtient les informations sur la taille et la résolution de l’image. |
ImageType { get; } | Obtient le type de l’image. |
IsLink { get; } | Retoursvrai si l’image est liée à la forme (quandSourceFullName est spécifié). |
IsLinkOnly { get; } | Retoursvrai si l’image est liée et non stockée dans le document. |
SourceFullName { get; set; } | Obtient ou définit le chemin et le nom du fichier source de l’image liée. |
Title { get; set; } | Définit le titre d’une image. |
Méthodes
Nom | La description |
---|---|
Save(Stream) | Enregistre l’image dans le flux spécifié. |
Save(string) | Enregistre l’image dans un fichier. |
SetImage(Image) | Définit l’image affichée par la forme. |
SetImage(Stream) | Définit l’image affichée par la forme. |
SetImage(string) | Définit l’image affichée par la forme. |
ToByteArray() | Renvoie les octets d’image pour n’importe quelle image, que l’image soit stockée ou liée. |
ToImage() | Obtient l’image stockée dans la forme en tant queImage objet. |
ToStream() | Crée et renvoie un flux contenant les octets de l’image. |
Remarques
Utilisez leImageData
propriété pour accéder et modifier l’image à l’intérieur d’une forme. Vous ne créez pas d’instances de laImageData
classe directement.
Une image peut être stockée dans une forme, liée à un fichier externe ou les deux (liée et stockée dans le document).
Que l’image soit stockée à l’intérieur de la forme ou liée, vous pouvez toujours accéder à l’image actual à l’aide duToByteArray
,ToStream
,ToImage
ouSave
méthodes. Si l’image est stockée à l’intérieur de la forme, vous pouvez également y accéder directement à l’aide duImageBytes
propriété.
Pour stocker une image dans une forme, utilisez leSetImage
méthode. Pour lier une image à une forme, définissez leSourceFullName
propriété.
Exemples
Montre comment extraire des images d’un document et les enregistrer sur le système de fichiers local en tant que fichiers individuels.
Document doc = new Document(MyDir + "Images.docx");
// Récupère la collection de formes du document,
// et enregistrez les données d'image de chaque forme avec une image sous forme de fichier dans le système de fichiers local.
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)
{
// Les données d'image des formes peuvent contenir des images de nombreux formats d'image possibles.
// Nous pouvons déterminer automatiquement une extension de fichier pour chaque image, en fonction de son format.
string imageFileName =
$"File.ExtractImages.{imageIndex}{FileFormatUtil.ImageTypeToExtension(shape.ImageData.ImageType)}";
shape.ImageData.Save(ArtifactsDir + imageFileName);
imageIndex++;
}
}
Montre comment insérer une image liée dans un document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
string imageFileName = ImageDir + "Windows MetaFile.wmf";
// Vous trouverez ci-dessous deux manières d'appliquer une image à une forme afin qu'elle puisse l'afficher.
// 1 - Définit la forme pour contenir l'image.
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");
// Chaque image que nous stockons dans shape augmentera la taille de notre document.
Assert.True(70000 < new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Embedded.docx").Length);
doc.FirstSection.Body.FirstParagraph.RemoveAllChildren();
// 2 - Définissez la forme pour qu'elle soit liée à un fichier image dans le système de fichiers local.
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");
// La création de liens vers des images permettra d'économiser de l'espace et d'obtenir un document plus petit.
// Cependant, le document ne peut afficher correctement l'image que lorsque
// le fichier image est présent à l'emplacement vers lequel pointe la propriété "SourceFullName" de la forme.
Assert.True(10000 > new FileInfo(ArtifactsDir + "Image.CreateLinkedImage.Linked.docx").Length);
Voir également
- espace de noms Aspose.Words.Drawing
- Assemblée Aspose.Words