레이블이 pdf변환인 게시물을 표시합니다. 모든 게시물 표시
레이블이 pdf변환인 게시물을 표시합니다. 모든 게시물 표시

2017년 9월 15일 금요일

[인벤터 강좌 Tip] - iLogic으로 PDF 변환(2018버전에서)

인벤터는 다른 3D 프로그램 보다 '버전 업데이트'가 빠른것 같다. 해마다 새로운 버전이 나오니 말이다. 내가 다니는 회사에는 설계 인원이 4명 뿐이라 새로운 버전이 나오면 새롭고 향상된 기능에 '훅'해서 그때마다 최신버전으로 쉽게 업데이트를 한다.

인벤터는 폭넓고 다양한 기능ㅇ르 소프트웨어에 담은 대신 약간은 불완전한 프로그램이다. 에러가 생각보다 많다. 거기에 따른 서비스팩(Service Pack)도 자주 나온다. 간혹 신규버전 배포 초기 에러가 해결되지 않다가 다음 버전에서 해결되는 경우도 많다.

그리고 버전이 업데이트 되면서 새로운 기능이 추가되기도 하지만, 원래 있었던 기능이 조금 달라진 경우도 있다.

오늘 설명할 내용이 바로 새로운 버전으로 업데이트 되면서, 예전에 안되던 기능이 사용가능해진 경우를 소개하고자 한다.

바로 'PDF 변환'이 그러한 경우이다.

도면을 PDF 파일로 내보내는 방법은 보통 다음과 같이 3가지 경우가 있다.

  • '파일 → 내보내기 → PDF' 순으로 선택
  • 컴퓨터에 PDF가 설치된 경우, 프린터 출력장치로 PDF 선택
  • iLogic에 PDF 변환코드를 작성하고 실행


내 블로그 글 중에 'iLogic으로 도면ㅇㄹ PDF로 변환하는 방법(다중 시트 포함)'이란 강좌가 있다. 제목에서도 알 수 있듯이 다중시트를 PDF로 변환하기에 딱 알맞은 소스코드를 소개하는 글이다. 그랬던 코드가 지금까지(2017버전까지) 문제없이 사용되다가 새롭게 나온 2018버전으로 업데이트 하고나서 부터 'PDF변환'을 위해 'iLogic코드'를 실행하면 에러가 뜨기 시작했다. 그 말은 더이상 그 코드로는 PDF변환이 안된다는 말이다.

그후로 수십~수백장 도면을 '파일 → 내보내기 → PDF' 순으로 매번 마우스 선택으로 PDF 변환을 하니 손가락도 저려오고, 지겹기도 하고, 시간 손실도 이만 저만이 아니다.

결국 이 문제 해결을 위해 인터넷 검색도 해 보았자민 딱히 좋은 방법이 없다가, 오늘 우연히 해결 방법을 찾았다.

다중시트 PDF 변환하기

ThisDoc.Document.SaveAs(ThisDoc.ChangeExtension(".pdf"),True)

이 한 줄 코드가 그 답이다. 아마 한 번쯤 사용해 보았거나 알고 있을 코드다. 위 'iLogic 코드'는 예전에 단일시트 변환만 가능했다. 즉, 다중시트를 가진 도면에는 적합하지 않아 'iLogic 으로 도면을 PDF로 변환하는 방법(다중시트 포함)'에서 선보인 코드를 찾아 사용했다.

그런데 이제 위 코드를 다시 사용할 길이 생겼다. 바로 '인벤터 2018버전'에서 가능해 졌기 때문이다.

사용은 아주 간단하다. 이제 사용방법을 설명할 것이다.

① iLogic에 새로운 규칙을 만들자. 위 한 줄 코드를 복사해 붙여넣기 하면 된다.


② 규칙 이름을 'PDF'로 정했다. 그러면 그림과 같이 'PDF'이름의 새로운 규칙이 포함된 걸 알 수 있다.
③ 마지막으로 규칙 'PDF'위에 마우스를 올리고 오른족 버튼을 눌러 '실행'을 선택하면 화면에 있는 도면이 'PDF' 파일로 변환되는 걸 확인할 수 있다.



여기까지가 사용방법이다. 너무 간단하다.

2018에서는 어째서 다중시트 변환이 가능할까?


'어째서 예전에 단일시트만 지원 한던 것이 다중시트 변환도 가능해 졌는지? 에 대한 이유는 본인도 알 수 없다. 하지만 새롭게 달라진 게 있다. 무엇이 달라졌는지 알아 보자.


우선  '파일 → 내보내기 → PDF' 순으로 선택해 보자.



선택하면 아래와 같이 '다른 이름으로 저장' 화면이 나타난다.
'옵션' 선택



'옵션'을 선택하면 'PDF 도면'이라는 새로운 창이 열리고, '인쇄범위'에 '현재 시트'가 선택되어 있고 나머지는 비활성 되어 있는걸 확인할 수 있다.



이번엔 다중시트를 구현하기 위해 도면 모형 검색기에서 새로운 시트를 추가해 보자. 아래 그림에서 '시트1'과 '시트2'가 있다. 다중시트가 만들어 졌다.


앞에서 한 것과 동일하게 PDF 내보내기를 하고 옵션을 선택하면, 이번에는 '전체 시트'가 선택된 걸 확인할 수 있다.(물론 아닐 수도 있지만, 회사에서 사용하는 컴퓨터는 이렇게 선택된다.)

이제 예전과 달라진 것이다. '인쇄 범위'가 예전에는 내가 그린 도면이 다중시트일 경우 '인쇄범위'를 별도 선택하지 않으면 항상 '현재 시트'가 먼저 선택되어 있었다. 그런데 '2018버전'에서는 '단일 시트'는 현재시트'로, '다중시트'는 '전체 시트'로 자동으로 선택이 된다. 아래 그림과 같이...



이제 느낌이 좀 오는가? 왜 예전에 단일시트만 지원되는 단순 코드가 이제는 다중시트 변환이 되는지. 2018버전에서는 '인쇄범위'가 단일, 다중시트에 따라 자동으로 변환이 된다. 그래서 다중시크도 이제 'PDF변환'이 이루어 진다고 생각할 수 있다. 물론 예전에도 다중시트의 경우 'PDF변환'은 이루어 졌다. 그때는 현재 활성된 시트 한 장만 변환이 되었기 때문에 위 코드는 2%로 부족한 코드였다.

이제 2018에서는 마음 편하게 PDF변환을 할 수 있을 것이다. 오늘은 여기까지 설명하는 것으로 마치겠다.

참고1
오늘 설명한 'PDF' 변환이 가능한 이유가 정확하지 않을 수 있다. (내가 소프트웨어 개발자가 아니므로...) 그래도 예전에는 안되던 iLogic 코드가 이제는 사용이 되는 것으로 만족하길 바란다.

참고2
2018 이전 버전에서는 인쇄 범위가 자동으로 변경되는지 확인하지 못했다. 그때는 다른 iLogic 코드로 다중시트 변환이 가능해 불편함이 없었기 때문이다. 2018버전부터 가능하다고 설명한 부분이 잘못된 정보일 수 있으니 참고 바란다.



2017년 6월 22일 목요일

인벤터 강좌 Tip - 나사 규격 추가하기

인벤터(Inventor)는 많은 종류의 나사(탭) 규격을 기본적으로 제공하고 있다. 하지만 가끔 설계를 하다 보면 내가 필요로 하는 규격이 없어 불편을 겪었던 경험이 한번쯤 있을 것이다. 그렇다고 도면을 작성할 때 일일이 없는 규격을 스케치로 나사모양을 그릴 수도 없는 노릇이다.

이쯤되면 어떻게 인벤터에서 기본으로 제공하지 않는 나사규격을 추가할 수 있을지 하는 생각을 하게 될것이다.
오늘은 이 문제에 대해 해결 방법을 알아 보도록 하자.

먼저 이런 가정을 하나 해보자. 본인이 회사에서 설계를 열심히 하고 있는데 부품 하나가  M20x1.25인 탭(나사)규격을 필요로 하고 있다. 하지만 아래 그림에서 보듯이 구멍 대화상자에서는 이러한 규격이 없다는 걸 확인하고 바로 M20X1.25 규격을 새로 추가하기로 결심한다.  

▲ 그림1. 구멍 대화상자


먼저 본인의 컴퓨터에서 Thread.xls 파일이 어디에 있는지 찾아 본다.

본인의 컴퓨터에는 다음과 같은 위치에 파일이 존재한다.
C:\Users\Public\Documents\Autodesk\Inventor 2014\Design Data\XLS\ko-KR

이제 이 파일ㅇ르 찾았다면 파일을 열어 보자.

▲ 그림2. Thread.xls 파일 Open


위 그림과 같이 Thread.xls를 열어보면 여러 다양한 나사 규격들이 나열더ㅚ어 있고 또 해당 규격에 대한 상세한 나사관련 DATA가 정리 되어 있다.

우리는 M20 x 1.25를 추가해야 되기 때문에 먼저 다양한 규격 중에서 ISO Metric profile을 선택하자. 위 그림은 ISO Metric profile을 보여주고 있다.

내용을 들여다 보면 역시나 M20 X 1.25는 보이지 않는다.

새로운 규격을 추가하기 위해서는 먼저 Excel DATA중에 피치(Pitch)가 같은 항목을 복사해서 필요로 하는 나사에 해당하는 값을 수정하면 된다.

DATA중에 M10에 피치(Pitch)가 1.25가 있다는 걸 확인할 수 있다.

M10 x 1.25를 복사해서 다음과 같이 수정하자.

▲ 그림3. M10 x 1.25를 복사한 후 M20에 맞게 수정

복사할 때는 원본에 암나사, 수나사 모두 DATA값이 있는 것을 고르자.

수정이 완료되었다면 Excel 파일을 저장하자.

그리고 이제 인벤터를 다시 시작하고 규격이 추가 되었는지 확인해 보자.
아래 그림에서 확인해 보니 M20 x 1.25가 새롭게 추가된 걸 확인할 수 있다.

▲ 그림4. M20x1.25가 추가된걸 확인


이제 끝났다.
오늘도 또 하나의 글을 마무리 했다.
그람 오늘 하루도 파이팅^^

※ 참 고

  • Thread.xls값이 변경되면 반드시 인벤터를 다시 실행해야 적용된다.
  • 포스팅에서 예를 들면서 M20 x 1.25를 사용했다. 하지만 암나사의 경우 나사의 경이 작은 것들은 대부분 탭(TAP)이라는 가공툴(Tool)을 사용한다. 그래서 설계할 때에는 본인이 적용하고자 하는 탭(TAP)규격이 시중에 판매되는 규격인지 반드시 확인해야 한다. 없는 규격을 사용하면 제품을 생산하는 담당자 입장에서는 무척 당황스럽다. 하자만 탭(TAP) 가공을 하지 않아도 될 정도의 나사 크기라면(특히 선반에서 가공으로 제작이 가능하다면) 피치(Pitch)값은 설계자가 알아서 정하면 된다. 물로 이때도 자주 사용하는 피치를 사용하는게 원칙이다.
  • 인벤터(Inventor)가 새로운 버전 업데이트로 인해 그동안 수정한 Thread.xls 파일이 날라가는 걸 방지하기 위해 반드시 잘 보관해서 사용하자.
  • 그리고 본인 스스로 Thread.xls를 잘 만들었다면 파일 좀 공유하자.

2017년 6월 20일 화요일

인벤터 강좌 Tip - 복사해서 사용하는 부품은 모형 대체 참조를 사용해 도면을 그리자

오늘 설명할 내용은 제목을 보고는 도저히 무슨 말인지 이해할 수 없다.
좋은 글은 제목 정하기가 핵심인데.... 아직은 그기까지는 무리인것 같다.

오늘도 예제를 따라 하면서 이 번 포스팅을 설명해 보도록 하자.

모형 대체 참조 기능은 형강류 도면을 작성할 때 아주 유용하게 사용된다.
그래서 형강류를 가지고 설명하도록 하겠다.

아래 그림은 50x50x3.2t의 일반 구조용 각형강관을 모델링한 것이다. 그림에서 보면 형상은 동일하고 길이만 다르다는것 알 수 있다.

▲ 그림1. 서로 길이가 다른 각형강관

위 그림과 같이 단순히 길이만 변경되는 부품은 도면을 작성할 때 모형 대체 참조를 사용하는게 좀 더 빠르게 작업할 수 있다.

여기서 중요한 건 모형 대체 참조를 좀 더 효과적으로 사용하기 위해서는 반드시 첫번째 모델링을 복사하여 사용해야 한다.

그림에서 L:100을 먼저 만들고 나머지는 모두 파일을 복사해서 이름만 변경해서 만들었다.

▲ 그림2. 파일을 복사해서 이름만 변경하였다.
이제 부품 하나를 먼저 도면화 하자. 여기서는 12356-01_각형강관(100) 부품을 도면화 했다.

▲ 그림3. 원본 도면을 하나 그린다.

이렇게 만들어진 도면 파일을 모형 파일과 같이 복사하여 이름을 변경해 준다.

▲ 그림4. 도면 파일 복사

이렇게 파일을 복사했다고 도면이 완성된게 아니다. 아직 우리는 모형 대체 참조를 사용하지도 않았다.

이제 도면을 완성하기 위해 복사한 도면중에 하나를 열어 보자.
아래 그림에서는 L:150인 도면을 열었다.

▲ 그림4. 도면의 검색화면

그리고 검색기를 확인해 보니 파일 이름은 L:150에 맞게 되어 있는데 아래쪽에 링크된 부품은 L:100으로 연결되어 있다.

이제 이 부분(L:100)을 L:150으로 변경해 주면 된다.

이때, 필요한게 모형 대체 참조 이다.
모형 대체 참조는 관리 탭에 있다. 모형대체 참조를 선택하자.

▲ 그림5. 모형 대체 참조는 관리탭에 있다.


모형 대체 참조를 선택하면 모형 참조 대화창이 나타나고 폴더 검색 아이콘은 아직 비활성이 되어있다.

모형 참조에서 변경할 파일을 선택하면 폴더 검색 아이콘이 활성된다.
폴더 검색 아이콘을 선택하자.

▲ 그림6. 모형 참조 대체 대화창

열기 대화창이 나타나면 변경하고자 하는 모형파일을 선택한다. 여기서는 도면 이름과 같은 123456-02_각형강관(150) 선택하고 열기 버튼을 누른다.


▲ 그림7. 열기 대화상자에서 링크할 부품을 선택

이제 도면을 확인해 보면 길이 치수값이 변경된 걸 확인할 수 있다. 그리고 검색창에서도 모형이 정상적으로 변경된것 또한 확인할 수 있다.

이런 방법으로 도면을 그리면 도면 작성하는 시간을 많이 단축할 수 있다.

▲ 그림8. 모형이 변경되고 자동으로 치수값도 변경

이렇게 하면 오늘 얘기 하고자 했던 내용이 끝났다.

그리고 한가지 더 Tip으로

가끔 모형과 도면을 완성한 후 부품의 이름을 변경할 경우가 생긴다.
부품의 이름이 변경되면 도면과의 링크는 자연적으로 끊어지고 도면을 열면 에러가 발생된 걸 볼 수 있다.

아래 그림은 123456-02_각형강관(150).ipt를 다른 이름으로 변경했더니 도면에 오류가 발생한걸 보여주고 있다.

▲ 그림9. 파일이름 변경으로 도면에 에러가 발생

링크가 끊겼기 때문에 발생한 에러는 다시 링크를 연결해 주면된다.
앞에서 설명한 모형 대체 참조를 사용해서 다시 연결하면 에러는 당연히 해결 된다.

그럼 오늘은 여기까지 설명하는걸로 하고 포스팅을 마치도록 하겠다.


2017년 5월 26일 금요일

인벤터 강좌 6강 - 도면 템플릿 만들기(1)_양식만들기

인벤터를 만난지도 벌써 10여년의 세울이 훌쩍 지나가 버렸다.
다니던 회사에서 인벤터를 처음 도입할 당시에는 지금과 같은 템플릿이 정립되지 않아 혼자 설계한 도면인데도 매 프로젝트마다 도면의 표현 방법이 제각각이었다.

그래도 프로젝트가 끝날때 마다 템플릿도 조금씩 업데이트가 되었고 지금은 어느정도 제대로 된 템플릿 모습을 갖추게 되었다. 또한 이제는 크게 무리없이 사용 하고 있다.

이렇게 오랜 시간을 거쳐 업데이트 된 이유 중 하나는 템플릿에 대한 정보가 많이 없었다. 혼자 독학하다 보니 더디게 발전되었던 것이다.

그리하여 이 글을 읽는 여러분들은 나처럼 시간을 허비하지 말고 짧은 시간에 자기만의 좋은 템플릿을 가질 수 있기를 바라는 마음으로 이 번 강좌를 이어가도록 하겠다.

우리는 앞으로 아주 긴 시간 그리고 몇 번의 강좌를 통해 도면 템플릿 만들기를 배울 것이다.

그 첫 번째 시간으로
도면 양식 만들기를 시작으로 도면 템플릿 만들기 첫 걸음을 시작해 보자.

앞으로 설명할 내용들은 방산에서 사용하는 표준 도면양식을 가지고 이야기를 진행할 것이다.

양식은 보통 A3, A2, A1 이렇게 3종류를 가장 많이 쓰이지만(A4, A0는 방산에서는 잘 사용하지 않는 양식이다.) 그 중에서 A3 양식 기준으로 만들기를 설명할 것이다. 나머지는 양식만 다를 뿐 템플릿 만드는 방법은 동일하기 때문에 생략하도록 하겠다.

아래에 보여지는 그림 1.1은 앞으로 우리가 만들어 볼 A3 도면 양식을 미리 보여 주고 있다.

그림에서 보면 양식은 크게 경계영역과 제복블록영역 이렇게 2가지 영역으로 구분될 수 있다. 이러한 구분으로 인벤터 템플릿을 만들 수 있다.

그럼 이제 다같이 이 두가지 영역을 만들어 보자

▲ 그림 1.1. A3 템플릿 완성본

도면 양식 만들기

도면 양식을 만들때는 인벤터에서 직접 그리는 건 정말 힘들기 때문에 오토캐드(AutoCad)를 사용하여 양식을 만들자. 자기만의 양식을 만들 수 있게지만 남들이 사용하는 양식을 이용하거나 아니면 자기가 다니는 회사에서 정해진 양식을 이용하면 된다.

도면 양식을 CAD File로 만들때 문자는 인벤터에서 직접 넣어도 되지만 역시나 인벤터는 불편한 관계로 CAD 양식에서 미리 문자를 기입하겠다. 특히 고정된 문자는 CAD File에서 만들고 도명, 도번등 변화는 문자는 인벤터에서 다루도록 하겠다.

경계 만들기

▲그림 1.2. 경계 만들기

경계 양식을 만들때는 실제 A3 도면용지 크기인 420 x 297에 해당되는 바깥 테두리도 함께 그려준다. 이렇게 하는 이유는 캐드 파일을 인벤터로 복사해 갈 때 인벤터 도면에 삽입 위치를 쉽게 하기 위해서이다.

나중에 삽입할 때 다시 한번 이 내용을 설명하도록 하겠다.

제목블록 만들기 


▲그림 1.3. 제목블록 만들기

제목블록이 삽입될 위치는 그림 1.2 경계 우하단 모서리로 부터 15mm 간격을 두고 삽입될 것이다.

따라서 제목블록도 삽입 기분점을 그림 1.3과 같이 15mm 떨어진 곳에 선을 그려 표시한다. 이때 주의할 것은 15mm 바깥으로는 다른 선이 있어서는 안된다.

인벤터에 적용하기

이제부터는 CAD에서 완성한 양식을 가지고 본격적으로 인벤터 템플릿을 만들어 보자

아래의 순서대로 작업을 하면 된다.

▲그림 1.4. 샘플 템플릿 불러오기
1. 새파일 작성
2. 좌측 검색기에 위치한 템플릿 폴더에서 Metric 폴더 선택
    => 우리만 만드는 템플릿의 단위가 mm이므로 Metric에 있는 샘플 양식을 사용한다.
3. ISO.dwg 선택

▲그림1.5. 빈 시트 만들기

4. ISO.dwg 파일이 나타나면 왼쪽 검색기 아래쪽에 있는 시트(Sheet)를 확장하고 그 속에 있는 Default(경계)와 IOS(제목블록)을 삭제 하여 빈 시트로 만든다.

5. 경계 불러오기

▲그림1.6. 새 경계 정의

검색기에서 경계 위에서 마우스 우클릭을 한 후 새 경계 정의를 선택한다. 그러면 새 경계 정의 창으로 화면이 바뀌고 앞서 오토캐드에서 만든 양식을 Ctrl+C, Ctrl+V을 사용하여 붙여 넣는다.

이 때 오토캐드에서 불러 온 양식의 크기는 아래 그림과 같이 일점쇄선으로 표시되고 마우스가 A3 좌측하단 모서리를 가리키고 있을 것이다. 마우스를 인벤터 도면의 좌측하단으로 이동시켜 모서리를 일치시킨 후 클릭하면  도면이 제 자리를 잡게 된다.

이렇게 위치시킨후 화면을 빠져 나오면서 경계의 이름을 정한다. 예제는 A3로 이름을 정했다.

▲그림1.7. 양식 위치 지정 및 이름 정하기


6. 제목블록 불러오기

▲그림1.8. 새 제목블록 정의

검색기에서 제목 블록 위에서 마우스 우클릭을 한 후 새 제목 블록 정의를 선택한다. 그러면 새 제목 블록 정의 창으로 하면이 바뀌고 앞서 오토캐드에서 만든 양식을 Ctrl+C, Ctrl+V을 사용하여 붙여 넣는다.

이번에는 불러온 양싱은 앞에서 설명한 경계와는 다르게 시트 아무 곳에 위치해도 상관없다. 이뉴는 예전에 응용프로그램 설정에서 도면탭에 제목블록이 위치하는 방법을 미리 세팅했기 때문에 시트 어디에 놓아도 자동으로 우측하단으로 이동된다.

▲그림1.9. 양식 위치 지정 및 이름 정하기

7. 완성

이제 모든 과정이 끝났다.

시트에 적용해 보자

검색기에서 방금 만든 경계와 제목블록을 각각 더블클릭 하면 자동으로 현재 시트(Sheet)에 적용되는 걸 확인할 수 있다.

그리고 이렇게 만든 인벤터 양식은 다름이름으로 저장 → 템플릿 저장을 통해서 완전한 템플릿을 만들면 모든 과정이 완료 된다.



드디어 도면 템플릿 첫번째 강좌를 완성하였다. 다음에는 이번에 만든 템플릿을 사용해서 좀더 발전된 템플릿으로 진화해 보도록 하자.



2016년 6월 7일 화요일

인벤터 강좌 - iLogic으로 도면을 PDF로 변환하는 방법(다중 시트포함)

인벤터(Inventor) iLogic을 이용하여 인벤터 도면을 PDF로 변환하는 방법에 대해 알아보자.

다음과 같이 두 가지 방법을 예로 들겠다.

첫번째 :

ThisDoc.Document.SaveAs(ThisDoc.ChangeExtension(".pdf"), True)

이 방법은 흔히들 사용하는 방법이다. 하지만 시트가 하나의 경우에만 변환되고 다중시트일 경우에는 적합하지 않다.

파일저장은 해당 도면이 저장된 폴더에 저장된다.

위에 코드는 다른 형식으로 변환할 때도 사용된다.

dwg로 변환 : ThisDoc.Document.SaveAs(ThisDoc.ChangeExtension(".dwg"), True)
JPG로 변환 : ThisDoc.Document.SaveAs(ThisDoc.ChangeExtension(".jpg"), True)

두번째 :

아래의 방법은 인터넷 검색하다 찾았는데 출처가 어딘지 기억이 나질 않아 출처를 표시할수가 없다.

첫번째의 방법은 다중시트가 안되고 폴더 변경이 안되었다.
하지만 아래 코드는 그 문제를 해결했다고 본다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
oPath = ThisDoc.Path
oFileName = ThisDoc.FileName(False) 'without extension
oRevNum = iProperties.Value("Project", "Revision Number")
oPDFAddIn = ThisApplication.ApplicationAddIns.ItemById _
("{0AC6FD96-2F4D-42CE-8BE0-8AEA580399E4}")
oDocument = ThisApplication.ActiveDocument
oContext = ThisApplication.TransientObjects.CreateTranslationContext
oContext.Type = IOMechanismEnum.kFileBrowseIOMechanism
oOptions = ThisApplication.TransientObjects.CreateNameValueMap
oDataMedium = ThisApplication.TransientObjects.CreateDataMedium
If oPDFAddIn.HasSaveCopyAsOptions(oDataMedium, oContext, oOptions) Then
oOptions.Value("All_Color_AS_Black") = 1
oOptions.Value("Remove_Line_Weights") = 1
oOptions.Value("Vector_Resolution") = 400
oOptions.Value("Sheet_Range") = Inventor.PrintRangeEnum.kPrintAllSheets
'oOptions.Value("Custom_Begin_Sheet") = 2
'oOptions.Value("Custom_End_Sheet") = 4
End If
'get PDF target folder path
oFolder = Left(oPath, InStrRev(oPath, "\")) & "PDF"
'Check for the PDF folder and create it if it does not exist
If Not System.IO.Directory.Exists(oFolder) Then
    System.IO.Directory.CreateDirectory(oFolder)
End If
 'Set the PDF target file name
oDataMedium.FileName = oFolder & "\" & oFileName & ".pdf"
'Publish document
oPDFAddIn.SaveCopyAs(oDocument, oContext, oOptions, oDataMedium)
cs