xcsh 님이 올려주신 pdf 플롯 출력을 테스트하는도중
(vla-put-PlotType lay AcWindow) 에서 에러가나길래
직접타이핑해보니 (vla-put-PlotType lay 0~2) 값인 영역설정은 되는데
3~4가 되지 않습니다.
; 오류: Automation 오류 잘못된 입력입니다.
라고 뜨는데 어디에서 문제가 발생된건지 예측이 불가합니다.ㅠ
(setq Obj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument Obj))
(setq lay (vla-get-ActiveLayout doc))
(setq plt (vla-get-Plot doc))
(vla-put-ConfigName lay “DWG to PDF.pc3”)
(vla-put-StyleSheet lay “DY.ctb”)
(vla-put-StandardScale lay acScaleToFit)
(vla-put-CenterPlot lay T)
(vla-put-PlotType lay AcWindow)
(vla-GetPaperSize lay 297 210)
;(vla-put-CanonicalMediaName lay “ISO A4 (297.00 x 210.00 MM)” )
(vla-put-PlotRotation lay 0)
공유
찾는 것이 아직 익숙하지 않은 모양이시네요
vla-put-PlotType는 paper area를 설정하는 것인데 3은 없습니다.
번호는 0:Display 1:Extents 2:Limits 4:Window 입니다.
앞에 Ac를 붙인 변수명으로 저장되어있으므로
(print AcExtents) (print AcExtents) (print AcLimits) (print AcWindow) 해보십시오.
말씀해주신대로 1, 2, 4가 나옵니다.
그 주신 리습을 순차적으로 입력해보았는데
명령: (vla-put-PlotType lay AcWindow)
; 오류: Automation 오류 잘못된 입력입니다.
명령: (AcWindow)
; 오류: 잘못된 함수: 4
해당 위치에서만 에러가 납니다. 4로 되있음에도 불구하고..ㅠ
제가 설정순서를 순서대로 넣은 것이 아니라서 찾으셔야 합니다.
레이아웃 상태에서는 프린트 설정을 다시하는 것이 되므로 순서나 설정을 다시 조정하셔야 합니다.
먼저 설정되어 잇는 값으로인해 다른값의 설정이 방해되는 경우입니다.
지금 것은 아마도 (vlax-invoke lay ‘setwindowtoplot p1 p2)를 먼저 설정하시면 해결될 것 같습니다.
해결했는데 답변을 늦게 보았습니다. ㅎㅎ;;
답변 감사드립니다.
혹시 pdf 뽑고나서 계속 실행으로 열리는데
이오픈 막을수 없을까요?