pictureData.Position = 0; var p = XWPFDocument.Paragraphs[paragraphIndex]; var run = p.CreateRun(); run.AddPicture(pictureData, (int)pictureType, "", Units.PixelToEMU(width), Units.PixelToEMU(height));
pictureData:Stream 类型,为了保险设置 Position 为 0,否则如果不是从 0 开始的,则 Word 中显示:无法显示该图片。
pictureType:NPOI.XWPF.UserModel.PictureType 类型。
第 3 个参数文件名,可以为空。
width、height:传入的是像素,但是 AddPicture 不用像素,所以需要转换一下 Units 命名空间是 NPOI.Util。
1EMU(英制公制单位) = 1/36000mm(word.docx 变为 word.zip 解压后 xml 里图片大小单位(OfficeOpenXML格式))
1pt(磅) = 1点 = 0.35146mm
1pc(皮卡) = 12点 = 4.21752mm
1in(英寸) = 25.3mm
1pt(磅) = 1.333px