Получение деталей изображения для добавления в DOCX - PullRequest
1 голос
/ 01 сентября 2011

Я добавляю изображения в файлы DOCX, используя найденный здесь метод WordprocessingDocument (Open XML) http://msdn.microsoft.com/en-us/library/bb497430.aspx.

Я могу добавлять изображения, но размер указан неверно.

MainDocumentPart mainPart = doc.MainDocumentPart;
ImagePart imagePart = mainPart.AddImagePart(ImagePartType.Jpeg);
using (System.IO.FileStream stream = new System.IO.FileStream(fileName, System.IO.FileMode.Open, System.IO.FileAccess.Read))
      {
           imagePart.FeedData(stream);
      }


return AddImageToBody(doc, mainPart.GetIdOfPart(imagePart), fileName);

private static Drawing AddImageToBody(WordprocessingDocument wordDoc, string relationshipId, string filename)
    { 
       long imageWidthEMU = 1900000;
       long imageHeightEMU = 350000;

       double imageWidthInInches = imageWidthEMU / 914400.0;
       double imageHeightInInches = imageHeightEMU / 914400.0;

        new DW.Extent();

        //Define the reference of the image.
        var element =
             new Drawing(
                 new DW.Inline(
                     new DW.Extent() { Cx = imageWidthEMU, Cy = imageHeightEMU },

Как видите, вы указываете размеры (длина + ширина) вручную.Я не могу получить их динамически.Как вы можете получить правильный правильный размер изображения для передачи на этот код?

Спасибо.

1 Ответ

1 голос
/ 25 мая 2012

Ваша проблема решена здесь: Вставка изображения в DocX с использованием OpenXML и установка размера

Невозможно решить эту проблему с помощью инструкции в XML-файле.OOXML предлагает только опции <a:fill> и <a:tile>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...