Je crée une application C# censée extraire des images du fichier doc et afficher toutes les images extraites dans les Picturebox. Je codes suivants:Extraction d'images à partir du fichier doc dans C# en utilisant Microsoft.Office.Interop.Word;
SOLUTION MAL
using Microsoft.Office.Interop.Word;
public IDataObject ImageData { get; private set; }
public List<Image> GetImages(Document doc)
{
List<Image> image = new List<Image>();
foreach (InlineShape shape in doc.InlineShapes)
{
shape.Range.Select();
if (shape.Type == WdInlineShapeType.wdInlineShapePicture)
{
doc.ActiveWindow.Selection.Range.CopyAsPicture();
ImageData = Clipboard.GetDataObject();
Image img = (Image)ImageData.GetData(DataFormats.Bitmap);
image.Add(img);
/*
bmp.Save("C:\\Users\\Akshay\\Pictures\\bitmaps\\test" + i.ToString() + ".bmp");
*/
}
}
return image;
}
Le problème est que si j'insérer des images à la page 2 dans mon fichier doc puis img devient nulle. Tandis que si j'insère toutes les images dans la page 1 alors cela fonctionne parfaitement bien. Je suis curieux de savoir quelle est l'erreur dans les codes ci-dessus. Toute aide sera grandement appréciée.