插入图片代码
- 格式:pdf
- 大小:225.70 KB
- 文档页数:27
java实现在pdf模板的指定位置插⼊图⽚本⽂实例为⼤家分享了java在pdf模板的指定位置插⼊图⽚的具体代码,供⼤家参考,具体内容如下java操作pdf有个⾮常好⽤的库itextpdf,maven:<dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.6</version></dependency><!-- itextpdf的亚洲字体⽀持 --><dependency><groupId>com.itextpdf</groupId><artifactId>itext-asian</artifactId><version>5.2.0</version></dependency>思路:Adobe的Acrobat可以对pdf进⾏编辑,在⽂档中插⼊域,这个插⼊的域就是图⽚的位置。
这⼉有关于域的介绍,但是这不重要,我们只是把域作为⼀个占位符⽤;利⽤itextpdf得到⽬标域所在的页⾯、位置、⼤⼩;利⽤域的坐标,把图⽚以绝对位置的⽅式插⼊到pdf中。
代码public static void main(String[] args) throws Exception {// 模板⽂件路径String templatePath = "template.pdf";// ⽣成的⽂件路径String targetPath = "target.pdf";// 书签名String fieldName = "field";// 图⽚路径String imagePath = "image.jpg";// 读取模板⽂件InputStream input = new FileInputStream(new File(templatePath));PdfReader reader = new PdfReader(input);PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(targetPath));// 提取pdf中的表单AcroFields form = stamper.getAcroFields();form.addSubstitutionFont(BaseFont.createFont("STSong-Light","UniGB-UCS2-H", BaseFont.NOT_EMBEDDED));// 通过域名获取所在页和坐标,左下⾓为起点int pageNo = form.getFieldPositions(fieldName).get(0).page;Rectangle signRect = form.getFieldPositions(fieldName).get(0).position;float x = signRect.getLeft();float y = signRect.getBottom();// 读图⽚Image image = Image.getInstance(imagePath);// 获取操作的页⾯PdfContentByte under = stamper.getOverContent(pageNo);// 根据域的⼤⼩缩放图⽚image.scaleToFit(signRect.getWidth(), signRect.getHeight());// 添加图⽚image.setAbsolutePosition(x, y);under.addImage(image);stamper.close();reader.close();}参考以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
插入图片后如何按标准修改图片的尺寸?我用以下代码在EXCEL的指定单元格内自动播放了图片,但图片有大有小,我想限定图片的尺寸为宽75像素,高100像素,应该如何设置呢?望大侠指点。
Sheets("Sheet1").Range("J3:J4").SelectActiveSheet.Pictures.Insert("D:\photo\" & [sfzh] & ".jpg").Select參考一下....Sheets("Sheet1").Range("J3:J4").SelectWith ActiveSheet.Pictures.Insert("D:\photo\" & [sfzh] & ".jpg").Width = 75.Height = 100End WithExcel如何用VBA代码删除工作表内插入的所有图片?悬赏分:20 - 解决时间:2008-10-26 17:20问题补充:"qgrmdtj"的方法确实能让工作表一下子变得很干净,遗憾的是控制的按钮也没了。
如果能改进一下就好了。
Sub qgrmdtj()For Each im In ActiveSheet.Shapesim.DeleteNextend sub----------------我还真的不知道怎么改进了,看看有没有高人可以。
Sub Clear_pics()Dim Shp As ShapeFor Each Shp In ActiveSheet.ShapesIf Not Shp.Type = msoFormControl Then Shp.DeleteNextEnd Sub这段程序加入了对控制按钮的判断,可以避免控制按钮被删除边学边卖Sub Clear_pics()Dim Shp As ShapeFor Each Shp In ActiveSheet.ShapesIf Shp.Type = msoPicture Then Shp.DeleteNextEnd Sub如何利用VBA插入图片?1.Sub InsertPicture()2. Worksheets(1).Shapes.AddPicture ThisWorkbook.Path & "\ET.jpg", True, True, 30, 10, 300,2253.End Sub4.Sub 插入图片()5. Worksheets(1).Shapes.AddPicture _6. "D:\2010元旦祝福.JPG", True, True, 30, 10, 300, 3507.End SubExcel-VBA代码:窗代中插入单元格内图片此代码用来生成图片Sub SheetOutJpg()Dim Newshape As ShapeApplication.ScreenUpdating = False[A1].CopyPicture Appearance:=xlScreen, Format:=xlPictureActiveSheet.PasteSet Newshape = ActiveSheet.Shapes(ActiveSheet.Shapes.Count)With ActiveSheet.ChartObjects.Add(1, 1, 1, 1).Width = Newshape.Width.Height = Newshape.HeightNewshape.Copy.Chart.Paste.Chart.Export "C:\Myjpg.jpg".DeleteEnd WithNewshape.DeleteEnd Sub以下代码用来将图片导入到窗体:Private Sub UserForm_Initialize()Call SheetOutJpgImage1.Picture = LoadPicture("C:\Myjpg.jpg")End Sub。
Latex中IEEEtran是⼀⾯左右两个版⾯,但我想插⼊表格和图⽚占整个版⾯,要怎么办?在latex中,对于双栏格式的排版,插⼊⼀栏图⽚时,使⽤的是\begin{figure}……\end{figure} ,插⼊双栏图⽚时需在figure的上标中加⼊符号“*”,如\begin{figure*}……\end{figure*}。
1.在latex插⼊⼀张图⽚(占⼀栏)⽐较简单,插⼊⼀张图⽚的代码如下:\begin{figure}{h}\centering %使插⼊的图⽚居中显⽰\includegraphics[height=5cm ,width=8cm,angle=0,scale=]{fig.eps}\caption{Example twig query and documents } %插⼊图⽚的标题,⼀般放在图⽚的下⽅,放在表格的上⽅\end{figure}关键性的语句是:\includegraphics[选项]{图⽚.eps}选项:height %指定图⽚的⾼度width %指定图⽚的宽度angle %指定图⽚旋转的⾓度还有⼀个指标叫scale,之缩放图形。
2.在latex插⼊多张图⽚(占双栏)就不是那么简单了,笔者知道有两种⽅法:法⼀:使⽤\begin{minipage}[pos]{width} text \end{minipage}\begin{figure*}\centering\begin{minipage}[!htbp]{0.3\linewidth}\includegraphics[width=1.5in,angle=-90]{52.eps}%\caption{fig1}\label{fig:side:a}\end{minipage}%\begin{minipage}[!htbp]{0.3\linewidth}\includegraphics[width=1.5in,angle=-90]{51.eps}%\caption{fig2}\label{fig:side:b}\end{minipage}\begin{minipage}[!htbp]{0.3\linewidth}\includegraphics[width=1.5in,angle=-90]{53.eps}%\caption{fig3}\label{fig:side:c}\end{minipage}\caption{3 figure}\end{figure*}注:笔者不太喜欢这种⽅法,原因是这种插⼊⽅式如果在每个图中使⽤\caption{fig3name}给图⽚做注释的时候不是把三个图⽚当做⼀个figure,⽽是每个图⽚即每个minipage各使⽤⼀个fig标记,三个mingpage 相当于三个图⽚了,当然也可以不单独对每个图⽚写个\caption,⽽是在\caption{3figure}中对每个figure进⾏解释说明,所以笔者推崇第⼆种⽅法。
C#操作Word插⼊图⽚,并可以根据输⼊图⽚的宽和⾼做相应的调整本⽂实例讲述了C#采⽤OpenXml给word⾥⾯插⼊图⽚的⽅法,分享给⼤家供⼤家参考。
具体分析如下:⾸先需要指出的是在MSDN官⽹有完整的OpenXML教程,虽然是全英⽂的不过还是很有帮助的。
注,原来摘抄代码⾥⾯没有模板,在copy过来发现插⼊word中的图⽚⼤⼩不⼀样,我们如何查找设置图⽚⼤⼩带代码的那⼀块,建议⾃⼰⽤在word⾥⾯插⼊⼀张图⽚,通过OpenXml Tools 反编译出C#代码,然后改变图⽚的⼤⼩,再次反编译。
使⽤byeond compare 【下载地址】⽐较C#代码,就会发现是因为new DW.Extent() { Cx = 990000L, Cy = 792000L} 是因为这段设置造成的。
以后其实很多地⽅都可以借助OpenXml Tools反编译来进⾏对⽐。
查看设置样式的属性位置。
MSDN openxml学习链接: 。
感兴趣的朋友可以查看⼀下。
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using DocumentFormat.OpenXml;using DocumentFormat.OpenXml.Packaging;using DocumentFormat.OpenXml.Wordprocessing;using System.IO;using DW = DocumentFormat.OpenXml.Drawing.Wordprocessing;using PIC = DocumentFormat.OpenXml.Drawing.Pictures;using A = DocumentFormat.OpenXml.Drawing;namespace AddPictureIntoWord{public class Program{public static void Main(string[] args){string picPath = "u=639047729,3872612606&fm=11&gp=0.bmp";string filePath = "Test.docx";AddPictureIntoWord(filePath, picPath);}public static void AddPictureIntoWord(string filePath, string picturePath){using (WordprocessingDocument doc = WordprocessingDocument.Open(filePath, true)){string picType = picturePath.Split('.').Last();ImagePartType imagePartType;ImagePart imagePart = null;// 通过后缀名判断图⽚类型, true 表⽰忽视⼤⼩写if (Enum.TryParse<ImagePartType>(picType, true, out imagePartType)){imagePart = doc.MainDocumentPart.AddImagePart(imagePartType);}imagePart.FeedData(File.Open(picturePath, FileMode.Open)); // 读取图⽚⼆进制流AddImageToBody(doc, doc.MainDocumentPart.GetIdOfPart(imagePart));}}// 摘抄⾃/EN-US/library/office/bb497430(v=office.15).aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-5private static void AddImageToBody(WordprocessingDocument wordDoc, string relationshipId){// Define the reference of the image.var element =new Drawing(new DW.Inline(new DW.Extent() { Cx = 990000L, Cy = 792000L }, // 调节图⽚⼤⼩new DW.EffectExtent(){LeftEdge = 0L,TopEdge = 0L,RightEdge = 0L,BottomEdge = 0L},new DW.DocProperties(){Id = (UInt32Value)1U,Name = "Picture 1"},new DW.NonVisualGraphicFrameDrawingProperties(new A.GraphicFrameLocks() { NoChangeAspect = true }),new A.Graphic(new A.GraphicData(new PIC.Picture(new PIC.NonVisualPictureProperties(new PIC.NonVisualDrawingProperties(){Id = (UInt32Value)0U,Name = "New Bitmap Image.jpg"},new PIC.NonVisualPictureDrawingProperties()),new PIC.BlipFill(new A.Blip(new A.BlipExtensionList(new A.BlipExtension(){Uri ="{28A0092B-C50C-407E-A947-70E740481C1C}"})){Embed = relationshipId,CompressionState =A.BlipCompressionValues.Print},new A.Stretch(new A.FillRectangle())),new PIC.ShapeProperties(new A.Transform2D(new A.Offset() { X = 0L, Y = 0L },new A.Extents() { Cx = 990000L, Cy = 792000L }), //与上⾯的对准new A.PresetGeometry(new A.AdjustValueList()) { Preset = A.ShapeTypeValues.Rectangle }))) { Uri = "/drawingml/2006/picture" })){DistanceFromTop = (UInt32Value)0U,DistanceFromBottom = (UInt32Value)0U,DistanceFromLeft = (UInt32Value)0U,DistanceFromRight = (UInt32Value)0U,EditId = "50D07946"});// Append the reference to body, the element should be in a Run.wordDoc.MainDocumentPart.Document.Body.AppendChild(new Paragraph(new Run(element))); }}}。
python实现pptx批量向PPT中插⼊图⽚⽬录项⽬背景基础加亿点点细节最终代码项⽬结果图总结项⽬背景实验结果拍摄了⼀组图⽚,数量较⼤,想要按顺序组合排版,⽐较简单的⽅式是在PPT中插⼊图⽚进⾏排版。
但是PPT批量插⼊图⽚后,顺序打乱且不显⽰图⽚名称,每个图⽚单独调整位置和⼤⼩费时费⼒,于是想到使⽤⼯具批量操作。
过去了解过python⾃动化办公模块,相对来说python也是简单易⽤的语⾔,项⽬预计不会耗费太⼤精⼒,故尝试学习实践⼀番。
(⾮专业学习笔记分享,望各位⼤佬不吝指导!)数据为16组实验,每组实验重复两次,共32个图⽚,所有图⽚为正⽅形,命名⽅式为:1.png,1-5.png,2.png,2-5.png … … … … 16.png,16-5.png需严格按照顺序排列基础安装pip install python-pptx依赖Python 2.6, 2.7, 3.3, 3.4, or 3.6lxmlPillowXlsxWriter (to use charting features)基础操作代码概览:import collections.abcfrom pptx import Presentation, utilprs = Presentation() # 实例化⼀个ppt演⽰⽂稿对象blank_slide_layout = prs.slide_layouts[6] # 实例化空⽩模板slide = prs.slides.add_slide(blank_slide_layout) # 向⽂件中添加空⽩页⾯img_path = './1.png' # 图⽚路径# 设置图⽚的位置和⼤⼩left = util.Cm(0)top = util.Cm(0)width = util.Cm(4)height = util.Cm(4)# 在页⾯中插⼊图⽚pic = slide.shapes.add_picture(img_path, left, top, width, height)prs.save('⾃动⽣成的ppt.pptx') # 保存为⽂件第⼀步:建⽴⼀个PPT⽂件from pptx import Presentationprs = Presentation() # 实例化⼀个ppt演⽰⽂稿对象# 中间补充具体操作添加内容prs.save('⾃动⽣成的ppt.pptx') # 保存为⽂件此时踩了第⼀个坑,执⾏结果报错:AttributeError: module 'collections' has no attribute 'Container'原因是python 3.10版本⽀持问题,此时在开头多导⼊⼀个依赖包collections.abc即可解决。
excel中宏activesheet.pictures.insert语法全文共四篇示例,供读者参考第一篇示例:Excel中的宏是一种强大的工具,可以帮助用户自动化和简化复杂的任务。
在处理图像方面,activesheet.pictures.insert语法是一种常用的方法,可以让用户将图片插入到活动工作表中。
在本文中,我们将介绍如何使用activesheet.pictures.insert语法来插入图片,并探讨一些常见的应用场景。
activesheet.pictures.insert语法的基本用法很简单。
需要确保要插入图片的工作表是活动工作表。
然后,在宏中使用如下代码:ActiveSheet.Pictures.Insert("图片路径")执行此代码后,Excel会将指定的图片插入到活动工作表中。
用户可以通过调整图片的大小和位置来满足其需求。
除了基本的插入图片外,activesheet.pictures.insert语法还支持一些其他的参数,可以进一步定制插入的图片。
用户可以指定图片的左上角的位置、宽度、高度等。
以下是一个示例代码,演示了如何使用这些参数:ActiveSheet.Pictures.Insert("C:\Users\Username\Documents\log o.png").SelectSelection.ShapeRange.LockAspectRatio = msoFalseSelection.ShapeRange.Width = 100Selection.ShapeRange.Height = 100Selection.ShapeRange.Left = 100Selection.ShapeRange.Top = 100在这个示例中,我们首先使用.activesheet.pictures.insert语法插入了一张名为"logo.png"的图片,并且将其选中。
淘宝旺铺装修代码大全在网上的装修代码很多,在百度上也可以找到,不过都是分开的,一个个代码的找,非常的麻烦,今天网店装修的工作人员把代码全部弄到了一起,这样方便大家使用!一、插入图片:<img border="0" src="图片地址" />二、插入公告图片:<img src="公告图片地址"/>三、插入公告挂饰:<img src="图片地址" style="left:20px; position: relative; top:0px" />☆把挂饰图片上传到网络相册里哦!!!!,然后点击图片放大,在大图中鼠标右键选择属性,在属性中有网络地址,把它拷贝下来,放到下边一串代码里替代汉字部分!!!<img src="图片地址" style="left:20px; position: relative; top:0px" />再打开我的店铺管理把这段代码放在店铺公告最后就可以啦,你就可以在你的店铺里看见挂饰了。
☆四、店铺分类代码:<IMG src="图片地址">五、背景音乐代码:<bgsound loop="-1" src="音乐地址"></bgsound>提供一些常用的钢琴曲或音乐(自己重新选择添加音乐的时候,可以在WWW。
中搜索MP3等,在出现播放器在播放你需要的音乐时,用鼠标左键选中该播放器,全部选中后,点右键选择“属性”,里面的地址才是歌曲的链接地址)秋日的私/info/xxyz/images/piano/06.MP3致爱丽/NT/DISCOL/lj33/music/music6.mp3一路上有/sing/web/music/200532822653_6052.mp3鸟鸣/download_010/604632/YM-%B4%D4%C1%D6%C4%F1%C3%F9.mp3 /audio/upload/674000/zhuo_qiang_moblog_1111740438_1829.mp3水边的阿狄丽/images/abcd.mp3古筝梅花三/ART/MUSIC/MUSIC/chuizou/meihua.mp3/sunshine/webw/2.8/files/赵咏华-最浪漫的事.mp3古筝:鸭戏/xiaoxuejiaoyan/xuekedaohang/music/file-5/text2/nusic/gu5.mp3 /soft/枉凝眉.mp3古筝十送红/lkm/yyxs/gzheng/shshj.MP3古筝弯完的月/Mymusic/one(2006-3-19 15-33-47)/10.wma六、在图片里附加音乐的办法:<img border=0 src="图片地址" dynsrc=音乐地址>七、浮动的图片的代码:</td></tr></table>;<img alt="1" height="150" src="图片地址"--八、添加QQ在线::<a class='qqa' target=blankhref=/msgrd?V=1&Uin=320001031&Site=在线咨询&Menu=no' title='在线即时交谈'><img src=/qqimages/QQonline.gif border=0 align=middle>320001031</a>注意:qq所属腾讯公司的现在是taobao和淘宝在同一市场竞争,所以已经不能在taobao 正常使用显示qq在线的功能。
XWPFDocument 类中的 addPicture 方法在 Java 中,使用 Apache POI 库可以轻松地创建和编辑 Word 文档。
XWPFDocument 类是 Apache POI 库中的一个重要类,它代表了一个 Word 文档。
addPicture 方法是 XWPFDocument 类的一个方法,用于在 Word 文档中插入图片。
addPicture 方法的参数是一个 Picture 对象,它包含了要插入的图片的元数据,例如图片的文件名、格式和位置等。
使用这个方法,我们可以将图片插入到 Word 文档中的任何位置。
下面是一个使用 addPicture 方法插入图片的示例代码:```// 创建一个 XWPFDocument 对象XWPFDocument document = new XWPFDocument();// 创建一个 Picture 对象Picture picture = new Picture();// 设置图片的文件名和格式File file = new File("example.jpg");picture.setFileName(file.getName());picture.setFormat("image/jpeg");// 设置图片的位置picture.setWidth(100);picture.setHeight(100);// 将图片插入到文档中document.addPicture(picture);// 保存文档document.write(outputStream);```在上面的示例代码中,我们首先创建了一个 XWPFDocument 对象,然后创建了一个 Picture 对象,设置了图片的文件名、格式和位置。
最后,我们使用 addPicture 方法将图片插入到文档中,并将文档保存到输出流中。
addPicture 方法还有一个重载方法,它允许我们在插入图片时指定图片的位置。
一、插入图片代码:<img src="图片链接地址" />注:先把图片上传到网络相册网络地址,把它拷贝下来,放到下边一串代码里替代汉字部分;可以应用于公告栏、分类栏及宝贝描述内。
二、插入公告栏挂饰代码:<img src="图片链接地址" style="left:20px; position: relative; top:0px" /> 注:先把挂饰图片上传到网络相册;可以应用于公告栏、分类栏及宝贝描述内。
三、背景音乐代码:<bgsound loop="-1" src="音乐地址"></bgsound>注:先把挂饰图片上传到网络相册;可以应用于公告栏、宝贝描述内。
三、在图片里附加音乐的办法:<img border=0 src="图片地址" dynsrc=音乐地址>注:先把挂饰图片上传到网络相册;可以应用于公告栏、宝贝描述内。
四、浮动的图片的代码:<img alt="1" height="150" src="这里放图片地址"/>五、悬浮挂饰代码:<img src="这里放图片地址" style="left:20px; position: relative; top:0px" />六、文字链接代码:<a href="网页地址">链接的文字</a>七、移动文字代码:<marquee>从右到左移动的文字</marquee>八、计数器代码<a href="" target="_blank"><img src="计数器地址"border=0alt=""></a>九、店铺公告里的漂亮悬浮挂件的代码:<marquee style="position:relative;" onMouseOver="()" onMouseOut="()" scrollamount="1" scrolldelay="85" direction="up" behavior="scroll" height="60"><img src="加入你自己的图片地址" />十、店铺公告添加个性的鼠标指针代码:<table style="CURSOR: url('上传后的鼠标指针的网址')"><tr><td><table border="0" style="TABLE-LAYOUT: fixed">十一、宝贝描述加上个性的鼠标指针代码先选“编辑源文件” ,然后复制以下代码:<table width="100%" style="CURSOR: url('这里是已上传的鼠标指针网址')"><tr><td width="100%">另外,还要在源文件底部输入代码:</td></tr></table>十二、添加QQ在线交谈代码:<a target=blank href=&Uin=&Site=&Menu=yes><img border="0" SRC= alt="点击这里给我发消息"></a>注: 这是QQ在线状态的代码,里面的数值要改变,号码和网址改为你自己的,这个链接的作用是别人可以直接点击联系你而无需加你为好友,使用方法是直接链接。
NPOI(2.1.3)向excel中插⼊图⽚,xls⽂档图⽚插⼊成功,xlsx⽂档图⽚插⼊失败众所周知,NPOI对xls和xlsx两个版本的excel⽂档的操作并没有⼀个统⼀的⽀持,程序若想兼容这两个版本的操作,必须根据excel版本分别去调⽤HSSF和XSSF这两套操作库,之前⼀直不明⽩NPOI为什么不能提供⼀个统⼀的操作接⼝,现在我还是不明⽩,也正是因为存在这个区别才导致了现在的问题!插⼊图⽚,代码⾮常简单,1 IDrawing patriarch = sheet.CreateDrawingPatriarch();23//将图⽚⽂件读⼊⼀个字符串4byte[] bytes = System.IO.File.ReadAllBytes(setVal);56int pictureIdx = sheet.Workbook.AddPicture(bytes, PictureType.JPEG);78 IClientAnchor anchor = null;9 IPicture pict = null;1011int dx1 = 0, dy1 = 0, dx2 = 1023, dy2 = 255;12int col1 = colIndex, row1 = rowIndex, col2 = colIndex, row2 = rowIndex;13//图⽚可能会合并多个单元格,需要计算合并的跨度14if (sheet.GetRow(row1).GetCell(col1)!=null&&sheet.GetRow(row1).GetCell(col1).IsMergedCell)15 {16int rowSpan = 0;17int colSpan = 0;18int regionsCount = sheet.NumMergedRegions;19for (int i = 0; i < regionsCount; i++)20 {21 CellRangeAddress range = sheet.GetMergedRegion(i);22 sheet.IsMergedRegion(range);23if (range.FirstRow == row1 && range.FirstColumn == col1)24 {25 rowSpan = stRow - range.FirstRow + 1;26 colSpan = stColumn - range.FirstColumn + 1;27break;28 }29 }3031 col2 = col1 + colSpan - 1;32 row2 = row1 + rowSpan - 1;33 }3435//anchor = patriarch.CreateAnchor(dx1, dy1, dx2, dy2, col1, row1, col2, row2);36////把图⽚插到相应的位置37//pict = patriarch.CreatePicture(anchor, pictureIdx);38if (fileExt == ".xls")39 {40// 插图⽚的位置 HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)41 anchor = new HSSFClientAnchor(dx1, dy1, dx2, dy2, col1, row1, col2, row2);42//把图⽚插到相应的位置43 pict = (HSSFPicture)patriarch.CreatePicture(anchor, pictureIdx);44 }45else if (fileExt == ".xlsx")46 {47 anchor = new XSSFClientAnchor(dx1, dy1, dx2, dy2, col1, row1, col2, row2);48//把图⽚插到相应的位置49 pict = (XSSFPicture)patriarch.CreatePicture(anchor, pictureIdx);50 }最开始的测试模板⽂件是⼀个.xls⽂档,图⽚插⼊的⽬的完美实现,直到⼏天之后,来了另外⼀个.xlsx⽂档,我代码⾥⾯如此明显的⽀持了它的做法,想当然的以为妥妥的了吧⼀测试,瞬间傻眼了懵逼了,导出的⽂档中怎么都找不到图⽚!!!各种修改代码写法(主要是关注类型的转换),调试,没有任何错误和异常,⽹上搜索了⼤半天问题,更新最新的NPOI库,甚⾄到处发帖求教最后,在⽹上找了⼀个简单的XSSF的⽰例,看上去代码逻辑和我的没什么区别,翻来覆去不就是那么⼏⾏代码吗唯⼀的不同,⽰例中的⾏列参数(col1, row1, col2, row2)是⼏个明明⽩⽩的整数值单⼿机械的点了运⾏,打开⽂档,嘿~图⽚居然出现了!只不过由于给的⼏个参数值很随便,所以图⽚的位置也很随便这是个从⽆到有实现0突破的伟⼤时刻啊!瞬间来劲⼉了,关注点转向了⾏列参数值,经过⼏轮不同参数值的调试之后,终于在参数和导出的图⽚位置之间看出了端倪,代码的修改如下:1// 插图⽚的位置 HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)2//后⾯四个参数定位⾏列的时候,参数(,,,,0,14,11,14)在xls⽂档中可以正确定位插⼊图⽚,3//但是在xlsx⽂档中图⽚找不到了,参数改成(,,,,0,14,12,15)才能正确定位画图4//MMP,定位标准都不统⼀,严重怀疑NPOI的1.x和2.x版本是两拨⼈完成,并且没有很好的⼯作交接......5 anchor = new XSSFClientAnchor(dx1, dy1, dx2, dy2, col1, row1, col2+1, row2+1);⼀⾏代码我给了四⾏注释,多余的话也不想再说了,⼼累。