www.mxdraw.com
|
把控件当前图形变成一个jpg文件,并当着一个文件表单提交给服务器。
static BOOL Mx_WriteJpgToURL(IN LPCTSTR pszServerUrl, IN LPCTSTR pszServerProgramUrl, IN LPCTSTR pszComponentName, IN LPCTSTR pszPort, OUT CString& sResponse, IN LPCTSTR pszFileTag = NULL, IN int iWidth = -1, IN int iHeight = -1, IN COLORREF* pBkColor = NULL, IN long isInRange = 0, IN double dLbx = 0.0, IN double dLby = 0.0, IN double dRtx = 0.0, IN double dRty = 0.0);
参数 |
说明 |
IN LPCTSTR pszServerUrl |
服务器网址地址,如:www.mxdraw.com,如果传空,程序自动取当前网页的服务器. |
IN LPCTSTR pszServerProgramUrl |
服务器的文件上传处理程序,如:upload.asp |
IN LPCTSTR pszComponentName |
HTML组件名称,相当于一个HTML页面的Form中的中的file1 |
IN LPCTSTR pszPort |
服务处理端口. 如:_T("80") |
OUT CString& sResponse |
服务器返回的信息 |
IN LPCTSTR pszFileTag = NULL |
文件标志名称值,表单提交事件中filename值。是"Content-Disposition: form-data; name="file1"; filename="ymgcw.dwg"中的filename值。
|
IN int iWidth = -1 |
位图宽度方向的像素,-1取系统默认值:1000 |
IN int iHeight = -1 |
位图高度方向的像素,-1取系统默认值:1000 |
IN COLORREF* pBkColor = NULL |
位图的背影色,如果为NULL,取黑色为背景色 |
IN long isInRange = 0 |
是否指定输入出范围 |
IN double dLbx = 0.0 |
输入范围的左下角坐标X,文档坐标系统 |
IN double dLby = 0.0 |
输入范围的左下角坐标Y,文档坐标系统 |
IN double dRtx = 0.0 |
输入范围的右上角坐标X,文档坐标系统 |
IN double dRty = 0.0 |
输入范围的右上角坐标Y,文档坐标系统 |
成功返回TRUE
关于提交表单的过程和原理可以参考SaveDwgToURL函数说明。 例如: JS代码.
function savejpgurl() { MxDrawXCtrl_Obj = document.all.item("MxDrawXCtrl"); MxDrawXCtrl_Obj.focus(); var veiwCoord = MxDrawXCtrl_Obj.Cal("Mx_GetViewCoord"); var param = MxDrawXCtrl_Obj.Call("Mx_NewResbuf", ""); param.AddString("http://localhost"); // 0,服务器网址地址,如:www.mxdraw.com param.AddString("/Save.aspx"); // 1,服务器的文件上传处理程序,如:upload.asp param.AddString("testsave.jpg"); // 2,HTML组件名称 param.AddString("6046"); // 3,服务处理端口. 如:_T("80") param.AddString("testsave.jpg"); // 4,文件标志名称值,表单提交事件中filename值 param.AddLong(100); // 5,jpg文件宽度 param.AddLong(100); // 6,jpg文件高度 param.AddLong(16777215); // 7,jpg背景色,16777215 = 0xffffff,为白色 if (veiwCoord.AtString(0) == "Ok") { param.AddLong(1); // 8, 是否指定输入出范围 param.AddDouble(veiwCoord.AtDouble(1)); // 9,输入范围的左下角坐标X,文档坐标系统 param.AddDouble(veiwCoord.AtDouble(2)); // 10,输入范围的左下角坐标Y,文档坐标系统 param.AddDouble(veiwCoord.AtDouble(3)); // 11,输入范围的右上角坐标X,文档坐标系统 param.AddDouble(veiwCoord.AtDouble(4)); // 12,输入范围的右上角坐标Y,文档坐标系统 } var ret = MxDrawXCtrl_Obj.CallEx("Mx_WriteJpgToURL", param); if (ret.AtString(0) == "Ok") { alert(ret.AtString(1)); alert("成功"); } else { alert(ret.AtString(1)); } }