2021-04-16

.net AutoCAD二次开发,PDF打印,UCS转换DCS坐标系问题

用C#进行AutoCAD开发PDF打印机,会遇到打印位置偏差的情况,通过查询资料,这些因为坐标系不同的原因,画图使用的是UCS坐标,打印使用的是DCS坐标。

根据查对资料,有三种解决方法:

第一种:参 ptTarget = Application.GetSystemVariable("TARGET");然后将打印范围的X和Y分别减去ptTarget的X和Y值即可。

第二种:参考https://www.jixie5.com/jiaocheng/476.html,在图纸中将TARGET恢复成默认值:0,0,0。

第三种:参考https://www.cnblogs.com/suncoolcat/p/3395455.html,利用ObjectARX 中有acedTrans()函数,进行坐标转换。该参考文章中,使用的CAD版本为CAD2014前的,对应CAD2014后的,调用方法改为:

[DllImport("accore.dll", CallingConvention = CallingConvention.Cdecl, EntryPoint = "acedTrans")]private static extern int acedTrans(double[] point, IntPtr fromResbuf, IntPtr toResbuf, int displacement, double[] result);

其它方法不变。









原文转载:http://www.shaoqun.com/a/691742.html

跨境电商:https://www.ikjzd.com/

达方物流:https://www.ikjzd.com/w/2562

isbn:https://www.ikjzd.com/w/174


用C#进行AutoCAD开发PDF打印机,会遇到打印位置偏差的情况,通过查询资料,这些因为坐标系不同的原因,画图使用的是UCS坐标,打印使用的是DCS坐标。根据查对资料,有三种解决方法:第一种:参ptTarget=Application.GetSystemVariable("TARGET");然后将打印范围的X和Y分别减去ptTarget的X和Y值即可。第二种:参考https:
easel:https://www.ikjzd.com/w/1721
跨境通网站:https://www.ikjzd.com/w/1329
深诺互动:https://www.ikjzd.com/w/2746
男友说再不结婚他就去找女人:http://www.30bags.com/a/252122.html
亚马逊高阶运营技巧,专治各类不出单:https://www.ikjzd.com/home/20570
困扰:变心后惨遭老公性折磨:http://lady.shaoqun.com/a/273414.html

No comments:

Post a Comment