Добавить изображение в ячейку таблицы

VSTO

Ниже приведен код для добавления изображения в ячейку таблицы:


    //Открываем класс презентации, который содержит таблицу

   string FileName = "Добавление изображения в ячейку таблицы.pptx";

   string ImageFile = "AsposeLogo.jpg";

   Presentation pres = Application.Presentations.Open(FileName);

   //Получаем первый слайд

   Slide sld = pres.Slides[1];

   foreach (Shape shp in sld.Shapes)

   {

      if (shp.HasTable == Microsoft.Office.Core.MsoTriState.msoTrue)

      {

          Cell cell= shp.Table.Rows[1].Cells[1];

          cell.Shape.Fill.UserPicture(ImageFile);

      }

   }


Aspose.Slides

Aspose.Slides для .NET предоставляет самый простой API для создания таблиц наиболее удобным образом. Чтобы добавить изображение в ячейку таблицы при создании новой таблицы, пожалуйста, выполните следующие шаги:

  • Создайте экземпляр класса Presentation
  • Получите ссылку на слайд, используя его индекс
  • Определите массив столбцов с шириной
  • Определите массив строк с высотой
  • Добавьте таблицу на слайд с помощью метода AddTable, предоставленного объектом IShapes
  • Создайте объект Bitmap для хранения файла изображения
  • Добавьте изображение Bitmap в объект IPPImage
  • Установите формат заполнения ячейки таблицы как изображение
  • Добавьте изображение в первую ячейку таблицы
  • Сохраните измененную презентацию в файл PPTX

   string FileName = "Добавление изображения в ячейку таблицы.pptx";

  string ImageFile = "AsposeLogo.jpg";

  Presentation MyPresentation = new Presentation(FileName);

  //Получаем первый слайд

  ISlide sld = MyPresentation.Slides[0];

  //Создаем объект Bitmap Image для хранения файла изображения

  System.Drawing.Bitmap image = new Bitmap(ImageFile);

  //Создаем объект IPPImage, используя объект bitmap

  IPPImage imgx1 = MyPresentation.Images.AddImage(image);

  foreach (IShape shp in sld.Shapes)

  if (shp is ITable)

  {

     ITable tbl = (ITable)shp;

     //Добавляем изображение в первую ячейку таблицы

     tbl[0, 0].FillFormat.FillType = FillType.Picture;

     tbl[0, 0].FillFormat.PictureFillFormat.PictureFillMode = PictureFillMode.Stretch;

     tbl[0, 0].FillFormat.PictureFillFormat.Picture.Image = imgx1;

   }

  //Сохраняем PPTX на диск

  MyPresentation.Save(FileName, Export.SaveFormat.Pptx);


Скачать рабочий код

Скачать пример кода