Sto costruendo un file Excel con EEPlus sotto l'applicazione MVC-5 C#. Tutto procede come pianificato fino a quando non ho impostato un'altezza su una riga (quindi un'immagine può adattarsi).Comportamento strano quando si imposta l'altezza di una riga su EPPlus
ho caricare le immagini de e impostare l'altezza sulla colonna di 20, in questo modo:
Image cfPhoto = null;
Bitmap cfBm = null;
ExcelPicture pictureCf = null;
var photoInitialColumn = 0;
i++;
completedFormPhotos.ForEach(delegate(CompletedFormPhoto cfP)
{
cfPhoto = Image.FromFile(HostingEnvironment.MapPath("~/Content/Images/FormPhotos/" + cfP.Id + ".jpg"));
cfBm = new Bitmap(cfPhoto, new Size(215, 170));
pictureCf = worksheet.Drawings.AddPicture(cfP.Id.ToString(), cfBm);
pictureCf.SetPosition(i+1, 0, photoInitialColumn, 10);
worksheet.Cells[_alpha[photoInitialColumn] + (i + 3) + ':' + _alpha[photoInitialColumn + 1] + (i + 3)].Merge = true;
worksheet.Cells[_alpha[photoInitialColumn] + (i + 3) + ':' + _alpha[photoInitialColumn + 1] + (i + 3)].Value = cfP.comment;
worksheet.Cells[_alpha[photoInitialColumn] + (i + 3) + ':' + _alpha[photoInitialColumn + 1] + (i + 3)].Style.WrapText = true;
photoInitialColumn += 2;
//HERE I SET THE HEIGHT. At this point, i == 18
worksheet.Row(i+2).Height = 180;
});
Ma, ho un logo aziendale nella parte superiore del file di Excel (cella A1) che viene ridimensionata come pure (in altezza). Che si definisce in questo modo:
Image _keyLogo = Image.FromFile(HostingEnvironment.MapPath("~/Content/Images/key_logo.png"));
var pictureLogo = worksheet.Drawings.AddPicture("Logo Key Quimica", _keyLogo);
pictureLogo.SetPosition(0, 0, 0, 0);
risultante su questo:
Qualsiasi aiuto sarebbe molto apprezzato.
Here è il file excel in questione.
Questo ha fatto il trucco anche quando si chiama .SetSize (w, h) - se EditAs è stato lasciato con il valore predefinito, l'immagine sarebbe stata allungata su un quadrato della dimensione del minore dei parametri su SetSize. –