还在为写分析报告时图片不够清晰而发愁?实用小技巧-ANSYS如何输出高清图片?
ANSYS分析设计人—专注压力容器分析设计的交流平台!学贵得师,更贵得友!共同学习,共同进步!
本文内容供感兴趣的朋友参考使用,借此机会笔者再次郑重的邀请和欢迎更多乐于分享的小伙伴加入我们,分享您的心得、想法、技巧和案例,与更多的分析设计人一起探讨交流,《ANSYS分析设计人》公众号是一个大众交流平台,属于每一个乐于分享的您!
在进行仿真分析时,输出图片格式用于生成报告是必须的步骤。下面介绍ANSYS经典模块与Workbench界面下输出高清图片的方法。
在经典ANSYS中,很容易得到高清图片,通过PlotCtrls>Capture Image就可以截取高清图片(下图1所示)。
图1 抓取图片
为了得到的字体大一点,通常运行以下命令流就可以(下图2所示),可以将命令流做成宏文件,加载在ANSYS的工具栏上,点击一下按钮(jietu)就方便很多(下图3所示)。
图2 取消Logo,放大字体
图3 jietu工具栏
旧版本以ANSYS Workbench 18.0为例,新版本以ANSYS Workbench 2021R1为例介绍。
A:Workbench 18.0输出高清图片的方法
步骤1-打开Model,在工具栏Tools下点击Options…,进行图片分辨率设置即可(下图4、图5所示)。点击Report。更改分辨率,默认600,400,600,500。改为大一点的尺寸形成适中的图片,700,400,700,500。越大分辨率越高。
图4 Tools-Options
图5 更改分辨率
步骤2-做一个脚本文件,扩展名为.js,复制以下内容粘贴至文本文件中,另存为Imagetofile.js脚本文件(下图6所示)。做好后复制到某一硬盘下,比如D:\ Imagetofile.js盘根目录下。
/**** This file saves the current display in high resolution to a file ****/
Main();
function Main()
{
//get the active item in the tree
var curResult = DS.Tree.FirstActiveObject;
var nodeID = curResult.ID;
if( !curResult )
return;
var ch_png = "File PNG (*.png)|*.png|";
var ch_jpg = "File JPEG (*.jpg)|*.jpg|";
var ch_tif = "File TIFF (*.tif)|*.tif|";
var ch_bmp = "File BMP (*.bmp)|*.bmp|";
var ch_eps = "File EPS (*.eps)|*.eps|";
var filter = ch_png + ch_jpg + ch_tif + ch_bmp + ch_eps;
var str_imageCapture = "imageCapture";
var filePath = WB.GetLastFileName(str_imageCapture, "DSApplet");
if(filePath.length == 0)
{
var startPg = WB.AppletList.Applet("StartPage").App;
if( startPg )
filePath = startPg.WBDB.Location + "file";
}
var fName = scriptcode.wbGetFileSelection(filePath, "", filter, true);
if(fName == "")
return;
// wait for dialog to go away and refresh graphics screen
var obj = scriptcode.CreateActiveXObject( scriptcode.GenWBProgId("WBControls.WBTestHelper") );
obj.Wait(500);
var png = /.png$/i; // $=end of string, i=case insensitive
var jpg = /.jpg$/i;
var tif = /.tif$/i;
var bmp = /.bmp$/i;
var eps = /.eps$/i;
var imode = 0;
if (fName.search(png) > -1) imode = 0;
if (fName.search(jpg) > -1) imode = 1;
if (fName.search(tif) > -1) imode = 2;
if (fName.search(bmp) > -1) imode = 3;
if (fName.search(eps) > -1) imode = 4;
var width = WB.PreferenceMgr.Preference("PID_Report_Graphics_Figure_Width");
var height = WB.PreferenceMgr.Preference("PID_Report_Graphics_Figure_Height");
var imgEnhance = WB.PreferenceMgr.Preference("PID_Report_Figure_Resolution");
DS.Graphics.MemStreamWidth = width * imgEnhance;
DS.Graphics.MemStreamHeight = height * imgEnhance; // Pixel Height
DS.Graphics.StreamMode = 1; // 0=normal, 1=mem
var WCC_BEGIN = 1;
var WCC_END = 2;
WB.DoWaitCursor( WCC_BEGIN );
//font height of 16 looks too big when printed. use 12
DS.Graphics.SetFontStyle( 0, "", 0, 0, 14*imgEnhance, 0, 0 );
var imageCtrl = DS.Graphics.ImageCaptureControl;
DS.Graphics.Draw2 (nodeID);
imageCtrl.Write( imode, fName );
DS.Graphics.SetFontStyle( 0, "", 0, 0, 16, 0, 0 );
DS.Graphics.StreamMode = 0; // 0=normal, 1=mem
DS.Graphics.Draw2 (nodeID);
WB.PutLastFileName(str_imageCapture,fName,"DSApplet");
WB.DoWaitCursor( WCC_END );
}
图6 脚本文件内容
步骤3-准备截图。通过Tools>Run Macro,打开上一步保存的D:\ Imagetofile.js(下图7、图8所示)。
图7 Tools>Run Macro
图8 打开D:\ Imagetofile.js
步骤4-紧接着,另存为.TIF文件即可(下图9所示)。
图9 另存为.TIF文件
步骤5-复制file.TIF到Word分析报告中,查看效果如下图10所示。而采用右键单击image to Clipboard的效果图如12所示。显然,图10比图12清晰的多,图12的文字明显看不清。
图10 高清效果图片
图11 右键抓图方式
图12 右键抓图效果
B:Workbench 2021R1输出高清图片的方法
步骤1-打开Model分析系统,在右上角方框内输入chart后回车。选择最下边的两个中的任意一个,打开(图13)。或按照图14 File>Options打开,在图15里设置。
图13 搜索Chart
图14 File>Options
图15 Report设置
步骤2-自动打开Report分辨率设置选项,进行如上述18.0的分辨率设置即可(下图16、17所示)。
图16 打开Report
图17 设置图片分辨率
步骤3-点击工具栏中的Automation下的Run Macro运行宏文件(下图18、图19所示) 。
图18 Run Macro运行宏文件
图19 打开脚本文件.js
步骤4-另存为高清图片,如图20所示,最终输出的图片如图21所示,而右键抓图的效果如图22所示,孰清晰孰模糊一看便知。
图20 另存为高清图片
图21 高清图片
图22:右键抓取的图片
全文完……
请不吝点个在看!分享成就你我他!
在这里,我们愿与您一起,亦师亦友,共同学习,共同进步; 期待有志者的加入!
查看更多评论 >