QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
2天前
查看: 8672|回复: 9
收起左侧

[已答复] VBA:如何合并两份PDF格式的图纸?

[复制链接]
发表于 2011-8-24 16:57:12 | 显示全部楼层 |阅读模式 来自: 中国浙江杭州

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
如何合并两份PDF格式的图纸?或者如何将一张CAD图纸里面的所有图框打印成一份PDF文件' s3 ~$ X* P, X' }. B  l% N

! {2 M* G8 i, W" `cad图纸输出成PDF格式可以直接调用ADOBE PDF打印机,但是如果一张图纸有多个图框,将打印成多份PDF文件$ v, u7 D# o, a1 a# k% K+ ^, v+ S6 s
有没有办法合并呢?或者直接输出成一份PDF文件?3 p! v! b, }( X3 u" R
8 |; M9 a! b0 s5 q4 ]+ m. v$ f- p
请大虾们帮忙
 楼主| 发表于 2011-8-24 16:57:59 | 显示全部楼层 来自: 中国浙江杭州
PDF里面是有手工插入文档的功能的,但是如何自动实现呢
发表于 2011-8-24 17:04:07 | 显示全部楼层 来自: 中国江苏苏州
Adobe Acrobat 可以
 楼主| 发表于 2011-8-25 10:53:51 | 显示全部楼层 来自: 中国浙江杭州
我知道Adobe Acrobat 可以,但是如何通过程序来自动实现呢
发表于 2011-8-26 08:30:52 | 显示全部楼层 来自: 中国辽宁
使用下面代码前应保证安装了Acrobat并引用其类库
  1. Dim PDDoc1 As New AcroPDDoc, PDDoc2 As New AcroPDDoc* Y. V& s( t! B0 B- F
  2. PDDoc1.Open 第一个PDF文档的完整路径(字符串)
    ' g8 s# }8 |8 j$ ]' u) V
  3. PDDoc2.Open 第二个PDF文档的完整路径(字符串)
    2 b1 B: S9 S! u& y; o' o) F' J. t0 z- |
  4. PDDoc1.InsertPages 第二个文档在第一个文档中的插入位置(页号从0开始,在该页后插入), PDDoc2, 要插入的第二个文档内容的起始页号(从0开始), 插入的页数, 0/ `( X& p$ i& u! D+ k: A- Z' n
  5. PDDoc1.Save 1, 新文档的完整路径
复制代码
 楼主| 发表于 2011-8-26 09:42:01 | 显示全部楼层 来自: 中国浙江杭州
多谢斑竹,我去试试
 楼主| 发表于 2011-8-26 10:27:13 | 显示全部楼层 来自: 中国浙江杭州
本帖最后由 157787698 于 2011-8-26 10:30 编辑 & N7 @. Z* ], F$ ~
使用下面代码前应保证安装了Acrobat并引用其类库Dim PDDoc1 As New AcroPDDoc, PDDoc2 As New AcroPDDoc/ Y2 E+ }, t' S/ o/ s. B, C
PDDoc1.Open 第一个PDF文档的完整路径(字符串)% c7 V9 [; F+ m8 R" B! G/ o) }
PDDoc2.Open 第二个PDF文档的完整路径(字符串)
6 \5 E; H7 ?- v$ H& t6 g& v% mPDDoc1.Inse ...
: P7 n; x- S. L7 x: }woaishuijia 发表于 2011-8-26 08:30 http://www.3dportal.cn/discuz/images/common/back.gif
% M1 D5 [" |+ _6 g# _" s" y/ G4 T) N/ ?

3 A  k$ n! ~2 F2 W# b& w为什么不能合并呢?下面程序只是把第一个文件另存为并重命名一下,并没有实现合并

  1. 6 g. v% |/ i0 s$ Q$ r/ v" {4 b
  2.     Dim PDDoc1 As New AcroPDDoc, PDDoc2 As New AcroPDDoc" X7 _! D2 Y# _0 Z
  3.     Dim path1 As String, path2 As String, path3 As String
    - m. [# B3 I+ W6 Q* d2 s9 Z9 H4 g
  4.     path1 = "d:\1.pdf"
    " S  j. Q$ T- ?+ W, W
  5.     path2 = "d:\2.pdf"
    2 Y# \2 b& v+ ~9 A/ r0 ^
  6.     path3 = "d:\3.pdf"
    ) U+ U: Q- A$ c6 V. c" V+ a8 ]( o
  7.    
    2 G- s; E! W! [8 `* ~& j. ?
  8.     PDDoc1.Open path17 Y! `8 c2 h8 V( Z4 c1 }$ j- {
  9.     PDDoc2.Open path2/ a8 O) z* j- Z5 `" W
  10.     PDDoc1.InsertPages 1, PDDoc2, 1, 1, 04 C5 D# `! L; W& c7 X/ x' {* v3 q
  11.     PDDoc1.Save 1, path3
    : g- Y0 E0 I" b# K2 j. ^  h3 _+ @

  12. / e% w, \- U+ v/ q* p/ ]$ T1 {
复制代码

' K; k# U7 c' P4 q+ r+ e4 _7 a6 r' H2 B  ?

: @' n; b, G7 }  `$ Q引用了Acrobat类库,下图- W4 R! J4 p  q/ r. H7 K
引用.JPG

1.pdf

51.79 KB, 下载次数: 3

2.pdf

51.27 KB, 下载次数: 1

发表于 2011-8-26 10:42:15 | 显示全部楼层 来自: 中国辽宁
页号错了.我在5楼已经说了页号从0开始,呵呵
  1.     Dim PDDoc1 As New AcroPDDoc, PDDoc2 As New AcroPDDoc) t8 K8 K/ W, n$ w, B- y
  2.     Dim path1 As String, path2 As String, path3 As String; n% N5 e; g" f1 b
  3.     path1 = "d:\1.pdf"
    & p9 f+ L3 F. e- o* g, O# L' v( x
  4.     path2 = "d:\2.pdf"5 e5 G7 T: J& D* |( G+ e9 x
  5.     path3 = "d:\3.pdf"
    1 U  U" P, }5 `. h) x, E
  6.     " z9 k: k* ^4 r. k+ k
  7.     PDDoc1.Open path1% e+ r' z% ^; ?/ I% `
  8.     PDDoc2.Open path2. K3 ]- Z1 _+ E+ u# o
  9.     PDDoc1.InsertPages 0, PDDoc2, 0, 1, 0
    ( B2 w/ U5 h- N8 Q' x; \0 I
  10.     PDDoc1.Save 1, path3
复制代码
 楼主| 发表于 2011-8-26 13:20:59 | 显示全部楼层 来自: 中国浙江杭州
多谢% q3 O3 P) I- [0 p, E+ |
% v  w! i" a& ^7 |9 ~( c
我理解成了页号可以从0开始,呵呵
发表于 2011-10-10 21:12:11 | 显示全部楼层 来自: 中国江苏南通
批量打印 batchplot6 O* I1 \8 {5 C7 }5 K
+pdf factory 可以实现
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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