QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
6天前
查看: 8431|回复: 9
收起左侧

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

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

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

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

x
如何合并两份PDF格式的图纸?或者如何将一张CAD图纸里面的所有图框打印成一份PDF文件
7 r1 o4 ]! n" b7 F+ {/ h* B
& \: D; u0 y/ ~2 ncad图纸输出成PDF格式可以直接调用ADOBE PDF打印机,但是如果一张图纸有多个图框,将打印成多份PDF文件
# l7 v/ n* f4 Z8 Q# [4 D有没有办法合并呢?或者直接输出成一份PDF文件?
7 p7 X& M4 Q  v% Z3 n3 h' |0 v9 u$ L/ o. P. {, d# V& K4 d1 k
请大虾们帮忙
 楼主| 发表于 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+ R" |3 e) F3 c  {" \
  2. PDDoc1.Open 第一个PDF文档的完整路径(字符串)* k: `3 T$ G) I& a% O4 E; `
  3. PDDoc2.Open 第二个PDF文档的完整路径(字符串)
    0 g2 X7 \$ D8 E, [4 Z1 T! \3 A) I  e
  4. PDDoc1.InsertPages 第二个文档在第一个文档中的插入位置(页号从0开始,在该页后插入), PDDoc2, 要插入的第二个文档内容的起始页号(从0开始), 插入的页数, 00 G2 @' F: G; G2 r% h
  5. PDDoc1.Save 1, 新文档的完整路径
复制代码
 楼主| 发表于 2011-8-26 09:42:01 | 显示全部楼层 来自: 中国浙江杭州
多谢斑竹,我去试试
 楼主| 发表于 2011-8-26 10:27:13 | 显示全部楼层 来自: 中国浙江杭州
本帖最后由 157787698 于 2011-8-26 10:30 编辑
/ m1 Y' F3 t/ G+ R
使用下面代码前应保证安装了Acrobat并引用其类库Dim PDDoc1 As New AcroPDDoc, PDDoc2 As New AcroPDDoc
5 [, g, M, s1 r# YPDDoc1.Open 第一个PDF文档的完整路径(字符串)/ N- J1 S8 u$ G
PDDoc2.Open 第二个PDF文档的完整路径(字符串)& X2 x. l1 X) D: K  K! O
PDDoc1.Inse .... y3 Z/ j( y2 _. G- p7 e
woaishuijia 发表于 2011-8-26 08:30 http://www.3dportal.cn/discuz/images/common/back.gif
$ n8 H& @0 N0 A( Z7 W

  }* s  b, t$ ?; T- c; B为什么不能合并呢?下面程序只是把第一个文件另存为并重命名一下,并没有实现合并
  1. ( I+ A7 s5 ^# }; @5 j5 z
  2.     Dim PDDoc1 As New AcroPDDoc, PDDoc2 As New AcroPDDoc% K' e! b5 C( l! m
  3.     Dim path1 As String, path2 As String, path3 As String( D+ V7 R" S6 j: N1 A% n0 S
  4.     path1 = "d:\1.pdf"- O  S6 m; P" v7 b* D
  5.     path2 = "d:\2.pdf"
    , j% K- i# x9 A6 @6 w) V& R
  6.     path3 = "d:\3.pdf"
    - J6 c6 w  Q# V8 b
  7.    
    . L# f, |# y! ^' \3 F/ H, m
  8.     PDDoc1.Open path1
    2 l4 ~: ~$ P6 w/ r% y4 O/ _& S
  9.     PDDoc2.Open path2- M5 Z8 h9 x& k9 r2 O6 n4 o
  10.     PDDoc1.InsertPages 1, PDDoc2, 1, 1, 0
      S% ]# Q& q0 q0 `) N# p+ n
  11.     PDDoc1.Save 1, path3
    0 i* J" A6 p2 K
  12. 6 C3 t5 c  A0 ^. _; X* R1 I( q* |
复制代码
9 }. Q) N" \  n/ E3 C8 U
6 x; C1 N/ C0 H

4 c! E' `/ B+ R7 o引用了Acrobat类库,下图( y( A4 j2 C+ m- w  g
引用.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
    6 {% m* ]! L6 q7 X+ S; B0 C
  2.     Dim path1 As String, path2 As String, path3 As String
    8 S7 F+ j) f" }& {
  3.     path1 = "d:\1.pdf"
    4 s! ~8 B" I) G" _
  4.     path2 = "d:\2.pdf"2 Z$ e* R( @( T$ I, A; W7 h
  5.     path3 = "d:\3.pdf"
    4 Y4 x8 \" k! D. O9 D/ w
  6.    
    : h* y: K$ v4 ^7 J7 ]" g* C
  7.     PDDoc1.Open path15 U8 e. h4 k% v# Z. E$ ?
  8.     PDDoc2.Open path25 e, z4 x1 e! I8 I
  9.     PDDoc1.InsertPages 0, PDDoc2, 0, 1, 0" m7 f& z8 }: ?$ p: y& m
  10.     PDDoc1.Save 1, path3
复制代码
 楼主| 发表于 2011-8-26 13:20:59 | 显示全部楼层 来自: 中国浙江杭州
多谢
" u- O1 Y+ u- p* {( e" x/ d# s) K) f
我理解成了页号可以从0开始,呵呵
发表于 2011-10-10 21:12:11 | 显示全部楼层 来自: 中国江苏南通
批量打印 batchplot! [- g8 s) y% @/ ^2 V
+pdf factory 可以实现
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

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