« PDF作成の自動化・省力化 [5] (CADのPDF化 : C言語部分) | トップページ | AutoCAD LT カスタマイズ [1](AutoCAD LTへのコマンド送信) »

2009年6月30日 (火)

PDF作成の自動化・省力化 [6] (CADのPDF化 : LISPスクリプト部分)

[5]で作成したSdsTest.dllの関数をLISPから利用する例

---------------------------------------------------------------------------

(defun c:pdfprint(
  / ctrlsaveas pdfpath hprocess pdfwriter ret)
 
  (setq ctrlsaveas "D:\\..........\\CtrlSaveas.exe")  ; 「PDF作成の自動化・省力化 [3]」で作成
  (setq pdfpath "D:\\........\\PDFファイル名.pdf")  ; 出力ファイルパス
 
  (setq pdfwriter "いきなりPDF Professional")
  ;(setq pdfwriter "クセロPDF2")
 
  (xload "SdsTest")    ; SdsTest.dllをロードする
 
  ; CtrlSaveas.exe起動
  (setq hprocess (sdstest_createprocess ctrlsaveas pdfpath 30 pdfwriter))
  ; 印刷実行
  (command "-print" "yes" "" pdfwriter "" "M" "L" "No" "" "" "" "" "" "No" "Yes" "No" "No" "Yes")
  ; 印刷終了を待つ
  (setq ret (sdstest_waitforprocess hprocess 5))
  (if (= ret 0)
    (progn
      (if (/= (findfile pdfpath) nil)
        (print (strcat "PDFが作成されました : " pdfpath))
      )
    )
  )
  (if (= ret 1)
    (print "PDF作成がタイムアウトしました")
  )
  (print "終わり")
 
  (xunload "SdsTest")
)

---------------------------------------------------------------------------
このスクリプトによって現在開いているCAD図面をPDF化することができる。

[実行結果の例]
: pdfprint
sdstest_createprocess: D:\*****\CtrlSaveas.exe "D:\*****\XXXXX.pdf" 30 "いきなりPDF Professional"
プロセスハンドル=648
648
: -print
詳細な印刷環境設定 <Yes>/No: yes
レイアウト名を入力 or [?] <Model>:
出力デバイス名を入力 or [?] <いきなりPDF Professional>: いきなりPDF Professional
用紙サイズを入力 or [?] <A3>:

(途中省略)

印刷結果をファイルに出力 Yes/<No>: No
印刷を開始します <Yes>/No: Yes
プロセスハンドル=648
プロセスが正常に終了しました。
"PDFが作成されました : D:\\*****\\XXXXX.pdf"
"終わり"
"SdsTest"

===========================================================================
今まで制作してきたコードをシェイプアップした上で実運用に乗せてみますが、果たして現場でうまくいくだろうか??

« PDF作成の自動化・省力化 [5] (CADのPDF化 : C言語部分) | トップページ | AutoCAD LT カスタマイズ [1](AutoCAD LTへのコマンド送信) »

ソフトウエア」カテゴリの記事

コメント

新作得価!
最新アイテムを海外通販!
(SALE)サイトサイト!
【即日発送】5☆大好評!全国送料無料!
大バーゲン贈り物!
【楽天市場】新作緊急大幅値下げ!
超安値登場!品質保証、最安値に挑戦!
正規品通販店【人気急上昇】
贈り物 ブレゼント通販!
全国一律送料無料!!5☆大好評!
2019最安値で販売!
【新入荷】本物保証!
2019新入荷、爆安通販!
送料無料,最新アイテムを海外通販!
限定SALE大特価!
激安ブランドのオーデマピゲ腕時計 https://www.watcher007.com/bag/menu-pid-141.html

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: PDF作成の自動化・省力化 [6] (CADのPDF化 : LISPスクリプト部分):

« PDF作成の自動化・省力化 [5] (CADのPDF化 : C言語部分) | トップページ | AutoCAD LT カスタマイズ [1](AutoCAD LTへのコマンド送信) »