机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 3090|回复: 5

分享两个宏,有详细注解,可尽情修改使用,代码也一起放了。

[复制链接]
发表于 2021-1-13 14:11:47 | 显示全部楼层 |阅读模式
8 N9 c. Y4 j. y6 \
工程图转格式:
$ O/ x2 t  @- ?5 s% F) Z" Q+ P! P! ]! C1 z
' A8 B( |. l" w7 f. Y1 \, R- B4 n0 r
Dim swApp As Object
6 A% z7 v% a/ L2 ]5 C6 H+ }Dim Part As Object
: F4 y6 ^' ]3 B5 a/ F1 rDim Filename As String. N. c0 B0 D* [! b! o
Dim No As Integer
# f, L' }; e8 n/ bDim Title As String          '以上设定变量
1 E, V. Y, t. q7 p7 PSub main()' @) k/ q. @4 n: v$ b. T2 x
Set swApp = Application.SldWorks( \, F5 m% T1 d! a, K* E% I' ?
Set Part = swApp.ActiveDoc                                                  '以上交换数据+ i1 {* g! c5 B# D" L: [6 s5 _: M; E
Filename = Part.GetPathName()                                               'Filename为文件名* d: e& W6 Z' J0 d) H
No = Len(Filename)                                                          'no为工程图文件名字符串总数' v4 E/ F. l  F! d' A8 `  r1 c  W
If No > 0 Then                                                              '当NO大于0时(转换格式名称是工程图名称,故要先保存工程图才可转换,工程图未保存无名称,无字符串,不可进行一下步)
! {8 U. A1 F, j; k  L+ `4 l# XFilename = Left(Filename, No - 7) + "." + Right(Filename, 1)                '字串符操作,no-7为去掉工程图后缀名,"."+ right(filename,1)为增加后缀名最后一个字母作为识别,用于区别客户来图,可不要: q- C4 F/ P5 ~8 I% `7 h/ j
Part.SaveAs2 Filename & ".dwg", 0, True, False                              '输出需要转换的格式文件,已有文件则自动替换,不提示,(有些格式文件在打开状态中不可替换,替换不成功也不提示)
6 C5 o5 B. I1 c+ M- xPart.SaveAs2 Filename & ".pdf", 0, True, False
0 ?# K$ Q! r# j7 ]End If3 a$ e" t0 a2 ?  [( d
End Sub
+ l  K$ n1 x) p$ N8 K
  |$ D3 p4 w: \3 G- E- E. E8 h! V* J  `. M+ g, {9 y# e
& I6 o2 |  y! s' p
属性改写宏:1 I$ i/ b$ Z( `" i

( f' m5 I0 r$ d0 ~! N* Q8 Y
3 f; ], p) V, w) h+ _  m! O5 t
& L. F! H- u6 P( _: E8 dSub main()0 D* U! M4 _) n# X

) F5 W! e3 i( I! `3 |! }8 uDim swApp As SldWorks.SldWorks: P2 @4 \7 n% A5 ]
Dim swModel2 As SldWorks.ModelDoc2
$ C. [6 Q* l; {* H) t/ y: NDim SelMgr As SldWorks.SelectionMgr
' A% T% e& j3 g8 BDim vCustInfoNameArr2 As Variant' Q  J& _9 v/ m; ^! \: U
Dim vCustInfoName2 As Variant9 I( G3 O# ]9 K- U
Dim CurCFGname As Variant- f1 @. ^3 I7 i: i; @! ^  }
Dim CurCFGnameCount As Integer& {2 n& r4 G  M1 g1 s
Dim Vnamearr As Variant3 {/ N- n* C, V
Dim CusPropMgr As CustomPropertyManager5 D* A3 [% ]5 J+ A: @# j
Dim bRet As Boolean
' f& E0 b! k: S9 s) h: [: y1 E3 X1 aDim Vnamearr2 As Variant' @4 i! {8 k& }3 I3 \
1 u$ i8 |3 `7 x
Dim strmat As String. s2 c6 y; i: K9 C8 _* }& j' Z
Dim tempvalue As String
# F: ^9 {7 ~- ]: N0 R7 X$ Z
) u) ]$ {4 V- a: |Set swApp = Application.SldWorks* S7 @  S. u; L  f7 i2 X! A
Set swModel2 = swApp.ActiveDoc
: X* n! y) b0 T2 ?9 BSet SelMgr = swModel2.SelectionManager '
7 A; k5 ]7 G5 ~
: P- r- R* O& [+ p' _0 @3 u% J% K; tDim tg1 As String
7 v& t' P3 Y- x* nDim tg2 As String
8 ^$ d5 U0 G# G' z, iDim tg3 As String
- |/ m3 D+ O( q" E) x* cDim tg4 As String
; i/ E  {6 X" A8 ?Dim tg5 As String
( ~) m( _2 \% B6 ODim tg6 As String
6 `1 T. @" U( y+ ~8 N. }Dim tg7 As String
$ `' c' Y+ N; o2 q/ W, S7 n. r  QDim tg8 As String& L  l' c6 L; u
Dim tg9 As String
: ^& ?+ w9 b) o- O; B8 MDim tg10 As String
1 Y% k( m1 |( G4 T' }: cDim tg11 As String. C& G$ l$ _* D5 l$ W- k/ ^7 D
Dim wm As String3 `9 B. K" ?. b5 A- @
Dim wm1 As Integer2 A9 N1 E! ^* s! Z3 s. o6 y3 G+ {
Dim wm2 As String6 G  I, V) y, P% t* l
Dim wm3 As String
) N+ C) S5 W2 S0 J0 lDim wm4 As String
8 i2 ?+ t8 }1 Q4 Q9 W0 G8 e. RDim wm5 As String
7 y5 P+ v  i2 ~% R8 o, U" wDim wm6 As String9 o' m- B% z" z9 c+ _! B) \' w
Dim wm7 As Integer9 Q7 X8 R% P( r0 d- j6 N
Dim wm8 As String
$ I/ |5 n# @7 T, ^+ oDim wm9 As Integer% {6 Z0 T% P6 p; S6 T
Dim lz As String. `" n7 u7 G. J  @2 I
Dim lz1 As Integer/ U6 T2 X- A" K0 ]
Dim lz2 As String' W* _2 u. f8 B5 ~' U% f
Dim lz3 As String
9 _, c: @5 y3 `4 UDim lz4 As Integer+ |1 P& {5 A! ]8 Q9 H- T
Dim lz5 As Integer$ `/ G! y. C/ \" X# s
Dim lz6 As String
. W& Z2 Z: j) c) ^+ j# l3 F5 sDim lz7 As Integer                                                                     '以上为设定变量
+ G7 I$ ?; l0 l7 `* o3 g% q7 ~
/ C8 t3 R" G( {: K: i- [' x
  M- R% y* b8 f/ G4 C* o4 [swApp.ActiveDoc.ActiveView.FrameState = 14 _- F* H1 Q6 r8 }: |4 i
vCustInfoNameArr2 = swModel2.GetCustomInfoNames
5 S" {/ D& x' p' ~7 s" o  If Not IsEmpty(vCustInfoNameArr2) Then  H6 \# @! t9 X$ V& t' S. y% P
     For Each vCustInfoName2 In vCustInfoNameArr24 \; X  ?3 e9 c4 b; I7 m, I' z0 N, u8 C
         bRet = swModel2.DeleteCustomInfo(vCustInfoName2)" }7 o/ J+ |) V, V5 ~
      Next4 E" _# B1 O  {/ X2 a# l
  End If                                                                               '此段是删除自定属性中的所有项和其项值: N% t2 e* t# v2 I+ ^

) I2 w4 ~8 i2 o  E* n& z# ^; s( X$ _. c. ~9 R1 F
CurCFGname = swModel2.GetConfigurationNames
  x/ `, @! _; l8 FCurCFGnameCount = swModel2.GetConfigurationCount
7 K/ u' G5 B! m$ c! E( J" Z. aFor i = 0 To CurCFGnameCount - 11 }) s3 x0 E; {& W% r- Q2 @/ p
    Set CusPropMgr = swModel2.Extension.CustomPropertyManager(CurCFGname(i))6 F) s: E6 K/ k4 A" t
    Vnamearr = CusPropMgr.GetNames( E( n; w$ f+ O, K+ D  R
    If Not IsEmpty(Vnamearr) Then
0 I! U$ v& y; K& [        For Each Vnamearr2 In Vnamearr$ a/ A& l6 ~( G* ]# G- l! h, o' G
            bRet = swModel2.DeleteCustomInfo2(CurCFGname(i), Vnamearr2)
* ?! S) I7 f/ F/ ^        Next$ R1 B& O# d1 q! _* c7 r# @$ K$ Q. g
    End If% N( z3 r: n& z* C: l2 p
    Next                                                                               '此断是删除其他配置中的属性所有项和其项值
6 P( C9 m( u( G, z
* @' r5 _3 R' Y0 c
$ i% k1 c* e+ |/ Q( a' [0 R- B' awm = swApp.ActiveDoc.GetTitle()                                                         '定义是文件名
/ A7 ]6 r+ P1 l* r( L# Z* glz = swApp.ActiveDoc.GetPathName()                                                      '定义为文件路径4 j2 s; d9 [; f7 E8 b
tg6 = Chr(34) + Trim("SW-Material" + "@") + wm + Chr(34)                                '定义材料属性
. x7 A6 q  V5 T( g5 Utg7 = Chr(34) + Trim("厚度" + "@") + wm + Chr(34)                                       '定义钣金厚度属性
9 g' f. B5 q6 y8 L+ T# l( H. htg8 = Chr(34) + Trim("SW-Mass" + "@") + wm + Chr(34) + "kg"                             '定义质量属性
+ A5 v3 A, D0 [# e- Z3 Y2 M0 qtg9 = Chr(34) + Trim("SW-SurfaceArea" + "@") + wm + Chr(34) + "㎡"                      '定义表面积属性0 @9 X: Z, o# ]6 {
bRet = swModel2.DeleteCustomInfo2("", "图号")
( |% D3 p: `0 t+ I% J. k# ZbRet = swModel2.DeleteCustomInfo2("", "Description")
7 W# O/ t$ n, e1 H
# P% ^# A  G" X3 d9 j
! e5 G% [2 [* m9 w0 d0 w5 d& L0 lwm1 = InStrRev(wm, " ") - 1                                                              '引号内为空格,为图名分离符号        '从右向左搜索到第一个" "符号为第几个字串符" z- W5 j8 L0 E
If wm1 > 0 Then                                                                          '当mw1大于0量时" B6 d6 j+ {( K* C3 A
    wm2 = Left(wm, wm1)                                                                  'wm2等于从wm的左侧开始提取mw1个字符
* [) X' ]$ k0 B) {& j    wm3 = Left(LTrim(wm), 3)                                                             'wm等于wm去除左侧无效字符的左前三个字符0 T- a. \0 K! N4 L  B" _) S
    If wm3 = "GBT" Then                                                                  '当wm3等于"GBT"时2 Q: L1 A" A) u0 p' e
        wm4 = "GB/T" + Mid(wm2, 4)                                                       'wm4等于"GB/T"和wm2的第4个和后面的所有字符              '当零件是国标时添加国标号,文件名中/是非法字符+ k/ }  \& h- `# h, R
    Else
4 z) @# _8 h+ D4 t. P2 q- k; R        wm4 = wm2                                                                         '否则wm4等wm2           '空格前面是图号
1 U" h) y% n( S/ c) P1 V; |    End If$ ]3 x( }3 _2 q8 _

2 ^6 h( g! C, t) r    wm5 = Mid(wm, wm1 + 2)                                                                'wm5等于wm中的第wm1+2个后面的所有字符
$ {& {7 t# `$ K" X) x. U: f$ o    wm6 = Right(wm, 7)                                                                    'wm6等于wm最后面的7个字符
) ]. T+ C( T* L7 b/ V    If wm6 = ".SLDPRT" Or wm6 = ".SLDASM" Or wm6 = ".sldprt" Or wm6 = ".sldasm" Then      '当wm6等于这4个值时) t5 c8 [7 l% m  ?" t& s7 Q
        wm7 = Len(wm5) - 7                                                                'wm7等于wm5的所有字符数-7: K% P8 c5 b$ o; B
    Else
4 [8 `) v7 a4 T4 u8 F/ D  K$ u        wm7 = Len(wm5)                                                                    '否则wm7等于wm5的所有字符数4 ]0 q6 L$ R( f
    End If$ o( B8 N+ K  W3 N4 R
    tg5 = Left(wm5, wm7)                                                                  'tg5等于wm5左侧的wm7个字符          ,空格后面是名称,有后缀名并去掉后缀名,无后缀后(文件未保存时)直接上档
9 i4 }; o  V0 ?8 g8 s1 [' O) f. k7 t5 Z2 O  S$ x( P4 p
End If                                                                                                                       '此段为图名分离定义4 \8 ^- u0 _! B: F9 ~3 i4 @  x; x$ q% m
0 {+ \6 ]6 r/ J/ q" Q

- t3 v4 J# L+ b% _1 rIf wm1 > 0 Then                                                                           '当wm1大于0时
4 H; {) _% A7 Rtg4 = wm4                                                                                 'tg4等于wm4              '文件名有空格时,图号为分离出来图号
" S4 E) E+ E5 ?- A1 WElse, s1 z6 s9 c5 }( D' ?' _
    wm8 = Right(wm, 7)                                                                    'wm8等于wm最后面的7个字符
* p& r  i/ q8 v1 j8 W  N    If wm8 = ".SLDPRT" Or wm8 = ".SLDASM" Or wm8 = ".sldprt" Or wm8 = ".sldasm" Then      '当wm8等于这4个值时
9 Z3 Z/ T, C) V- ^, K        wm9 = Len(wm) - 7                                                                 'wm9等于wm的所有字符数-7* S& E- {1 f, J* r4 E
    Else3 H0 Q7 |' s2 B% {1 \- b1 A, _8 `4 ~
        wm9 = Len(wm)
' j  H' g# g) x7 k" V* }7 {1 C    End If                                                                                '否则wm9等于wm所有字符数-7
& [5 |" N& L. @, Z4 ztg4 = Left(wm, wm9)                                                                       'tg4等于wm左侧的wm9个字符    '文件无空格时,文件名即是图号,并去掉后缀名,无后缀名(文件未保存时)直接上档# C8 l3 o' w7 G: K: N. d# A
End If                                                                                                                        '此段为非图号名称命名文件,将文件名加到图号属性4 q* x# e1 {' [( Z& c' P4 s' V2 j
'例,fgq01-001 前门板:分离后图号(fgq-001),名称(前门板)
6 g: v' Z; a: L) K& ~) @$ {'例,fgq01-001 前 门板:分离后图号(fgq-001 前),名称(门板)) r+ D  z, X. |3 j
'例,fgq01-001-前门板:分离后图号(fgq-001-前门板),名称为空
6 r+ c* R. T& u- |, \! K9 i'以最后一个空格为准分离
7 ~8 g: q' N5 G/ P' s4 E" j# @9 d; d) f8 F
6 a. B& q* G" d' M# _$ X' F4 ]
lz1 = InStrRev(lz, "--")                                                                 'lz1为lz由后向前搜索到第一个"--"字符在第几个
$ f- i5 S: o) e, `. OIf lz1 > 0 Then                                                                          '当lz1大于0时, _' z2 z  f6 j
lz2 = Mid(lz, lz1 - 8, 8)                                                                'lz2等于lz的第lz1-8个和其后面8个字符0 z9 {: G% \  _$ d' |
lz3 = Mid(lz, lz1 + 2)                                                                   'lz3等于lz的第lz2+2个后其后面所有字符1 H' Y$ j( A6 W) v
lz4 = InStrRev(lz2, "\")                                                                 'lz4为lz2由后向前搜索到第一个"\"字符在第几个/ [# E& a8 B0 S6 Z  W+ Z7 n
lz5 = InStr(lz3, "\")                                                                    'lz5为lz2由前向后搜索到第一个"\"字符在第几个& Y; G; U4 S/ ]% ~+ u6 P
tg1 = Mid(lz2, lz4 + 1)                                                                  'tg1等于lz2的第lz4+1个后面的所有字符
0 o4 r) o9 T* n# K'tg1 = Right(lz2, 8 - lz4)                                                               'tg1等于lz2右侧的8-lz4个字符(lz2总字符为8个)
' ~" G9 h7 D+ ]) p" w2 Dtg2 = Left(lz3, lz5 - 1)                                                                 'tg2等于lz3左侧的lz5-1个字符. v. s/ P9 n; F6 X

$ Q; V8 \' V4 z. N% glz6 = Mid(lz3, lz5 + 1)                                                                  'lz6等于lz3第lz5+1个后面的所有字符6 z8 n' R0 _3 q' V
lz7 = InStr(lz6, "\")                                                                    'lz7为lz6由左向右搜索出第一个"\"字符在第几个* y) u+ T; F" O1 M3 C" W& a
If lz7 > 0 Then                                                                          '当lz7大于0时
4 L0 f8 G9 X9 S9 D- v5 _tg3 = Left(lz6, lz7 - 1)                                                                 'tg3等于lz6左侧的lz7-1个字符0 n- |4 W9 B$ m5 Z
End If& O0 ^, `5 ?0 ~0 Y3 [
End If                                                                                    '此段为文件路径提取项目号
% H) W6 v" _+ i0 _  }" o/ n'例,零件文件完整路径为:E:\工作文档\B-非标产品\非标--F类\FGQ--定制角架\2020版\前门板.SLDPRT5 X0 b0 C( m$ F0 p, ^
'由后向前搜索“--”,第一个“--”向前到“\”间为产品编号(FGQ),向后到“\”间为产品名称(定制角架),向后的第一个“\”和第二个间“\”,为版本号(2020版)。
. C# L3 H3 v5 @4 j2 b! y# ]# X' J8 y
; x- O2 F: V2 ~( p! Y
1 r' r7 r8 H/ j
bRet = swModel2.AddCustomInfo3("", "产品编号", swCustomInfoText, tg1)* ]1 w% j. Y  D9 H3 @: }9 L# ^0 y
bRet = swModel2.AddCustomInfo3("", "产品名称", swCustomInfoText, tg2)0 M: {) p/ i& a
bRet = swModel2.AddCustomInfo3("", "版本号", swCustomInfoText, tg3)
( J4 A6 }. x. Y; vbRet = swModel2.AddCustomInfo3("", "图号", swCustomInfoText, tg4). F9 K3 W' a* C7 Q% t4 e
bRet = swModel2.AddCustomInfo3("", "Description", swCustomInfoText, tg5)# A6 |" z& j1 A
bRet = swModel2.AddCustomInfo3("", "数量", swCustomInfoText, "1")% ]6 c6 ^! o$ j% B
bRet = swModel2.AddCustomInfo3("", "备注1", swCustomInfoText, " ")0 |" I& T) q! @4 D) b9 c
bRet = swModel2.AddCustomInfo3("", "备注2", swCustomInfoText, " ")- F5 _& X( v; E% h
bRet = swModel2.AddCustomInfo3("", "备注3", swCustomInfoText, " "): i; S0 a- @5 A* B0 `* e
bRet = swModel2.AddCustomInfo3("", "Material", swCustomInfoText, tg6)
, _" K% ]1 o* S- ?# ^bRet = swModel2.AddCustomInfo3("", "SH", swCustomInfoText, tg7)8 ]+ K0 m6 J7 k2 y( o1 ]4 m- ?
bRet = swModel2.AddCustomInfo3("", "重量", swCustomInfoText, tg8)/ u) j5 O; m( t' h- n
bRet = swModel2.AddCustomInfo3("", "表面积", swCustomInfoText, tg9)                         '此段为填写自定义属性项与其值
9 c( C- r4 l6 W! W6 T# A4 b2 c( _, @) L5 c$ p
Dim thisFeat As SldWorks.Feature                                                         '另外增加一段宏,取读取切割清单数据,并添加到属性项。
8 L2 g6 f! S' d  L+ A5 tDim thisSubFeat As SldWorks.Feature1 m7 G% L7 m! ~7 C6 V
Dim cutFolder As Object
5 l1 I5 e8 A, u. A' b, b; ], HDim BodyCount As Integer; m$ k1 F( J7 T/ O, F
Dim custPropMgr As SldWorks.CustomPropertyManager+ |3 D8 Q* k$ K2 E9 t" W0 G
Dim propNames As Variant. e6 I+ v+ }- P( ^' n; V# H
Dim vName As Variant' c0 M3 i8 [$ A8 z% ~
Dim propName As String
; [, w8 u+ a/ XDim Value As String
* A# S5 m; h0 y# M" D) ^Dim resolvedValue As String4 ^% h* E% q, k2 e
Dim bjkcd As Double& d! D2 K& W' o* R
Dim bjkkd As Double" g: o& J: h5 f7 y7 d
'Sub main()
, @3 Q5 ]/ c1 |" \! O1 v. Q'Set swApp = Application.SldWorks
8 s1 q+ G" k( I  Z( A' SSet Part = swApp.ActiveDoc
* `5 t& g4 [2 i3 ]7 nSet thisFeat = Part.FirstFeature
4 I8 B2 N- h) v9 A/ jDo While Not thisFeat Is Nothing '遍历设计树
/ j5 S- N# M) R+ H! s; _* g/ dIf thisFeat.GetTypeName = "SolidBodyFolder" Then) R( w/ Y' }  x6 r* h4 [
thisFeat.GetSpecificFeature2.UpdateCutList: Q+ r0 Y) c. w- z/ N. M
End If5 M. c0 z. H1 v' K% q
Set thisSubFeat = thisFeat.GetFirstSubFeature5 c6 V) D: C) o5 x. v" c$ R
Do While Not thisSubFeat Is Nothing- b( S) v0 a0 D
If thisSubFeat.GetTypeName = "CutListFolder" Then '查找切割清单
+ w# U! j% f8 H3 MSet cutFolder = thisSubFeat.GetSpecificFeature2
! P$ ]/ Z+ n  B' f3 @8 Z0 ]9 c; KEnd If
6 o( Z2 W" F' C3 c# oIf Not cutFolder Is Nothing Then
; @/ w7 D" [. l( V  _# kBodyCount = cutFolder.GetBodyCount
9 F0 T9 \% d" N9 }If BodyCount > 0 Then
- k" ?- S) X8 N3 H+ ESet custPropMgr = thisSubFeat.CustomPropertyManager+ r- ^0 K1 ?* g; g* F: s
If Not custPropMgr Is Nothing Then
$ b$ v( }. S: ]$ M9 R* PpropNames = custPropMgr.GetNames '获取切割清单属性的数据全部名称并放入数组, Q7 _" [! r. H' N: m3 _
If Not IsEmpty(propNames) Then, N/ x* j, o8 x, M9 Z
For Each vName In propNames
% C# w( Q( u3 E3 B6 f" ]1 W7 f9 MpropName = vName
. L+ f( x: e5 g$ t. Z( QcustPropMgr.Get2 propName, Value, resolvedValue '获取全部属性名称 ,数值和评估的值
' K/ c- c! Q# @# KIf propName = "边界框长度" Then bjkcd = resolvedValue '判断是否是自己所需要的数据,如果是就获取. ?- k9 D' \* ~$ s1 W
If propName = "边界框宽度" Then bjkkd = resolvedValue1 p* s% K/ k& [/ g+ i9 l+ G" n) n
Next vName" F/ B! d) w- M# s! B/ R* B+ z
End If
) ]1 ]  N6 N6 ?, f; _' m3 D; Q# L/ p" m" CEnd If% q  m. u- e  q3 d; G
End If) m9 R9 O* S5 n& n' x; }5 j& J
End If! B& r1 \& X; E5 h& j, R2 t6 N
Set thisSubFeat = thisSubFeat.GetNextSubFeature
. i0 @  `! o$ i0 U3 RLoop/ U6 ]' s! @9 G9 G+ W/ p0 X
Set thisFeat = thisFeat.GetNextFeature
/ x6 S) b- R1 jLoop
' g7 ]/ q7 |' y+ }  r8 P, P& Q  n4 l'blnretval = Part.DeleteCustomInfo2("", "边界框长度") '删除属性栏上摘要信息的数据
7 B7 {/ Z9 a! Q& X/ t* K7 G+ E'blnretval = Part.DeleteCustomInfo2("", "边界框宽度")3 O4 W* j, v- ^0 j! G
blnretval = Part.AddCustomInfo3("", "开料长度", swCustomInfoText, bjkcd) '添加数据到摘要信息
  }: P) ?+ W6 qblnretval = Part.AddCustomInfo3("", "开料宽度", swCustomInfoText, bjkkd)
& T( w" \3 j. e+ j# W1 u" a2 A6 z' h3 C
End Sub
7 U* J" `, j/ n
! d6 X/ i0 ?7 k; J% s' {

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
回复

使用道具 举报

发表于 2021-1-13 16:28:08 | 显示全部楼层
挺复杂啊,比较难用吧??
回复 支持 反对

使用道具 举报

发表于 2021-1-13 17:17:50 | 显示全部楼层
这个是不是CAD转pdf的?佩服做软件二次开发的人。
回复 支持 反对

使用道具 举报

发表于 2021-1-13 17:29:04 | 显示全部楼层
学习一下。
回复

使用道具 举报

 楼主| 发表于 2021-1-13 17:40:43 | 显示全部楼层
晓昀 发表于 2021-1-13 17:17
' y, y7 u7 S2 ]) E0 Q3 n这个是不是CAD转pdf的?佩服做软件二次开发的人。
0 I4 e) F( p3 B, \7 m  a2 d' F" m
cad转PDF,用cad的PDF打印机就行了,这个是sw转dwg,dxf,和pdf等格式的。
  S, l& v, |$ z& k8 U6 K

点评

大牛!  发表于 2021-1-13 18:01
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2024-4-26 12:14 , Processed in 0.066201 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表