大家好!
我现需向PDF中写入文本,完全不知道方法,
还请高手指点,谢谢!具体一点就是,向PDF的右下角,签上自己的名字

解决方案 »

  1.   

    PDF的格式有个软件可以用,在上网搜一下吧,用软件打开就可以编辑文本了
      

  2.   

    解释一下
    比如说,VB中有个TEXTBOX
    我现在需要把TEXTBOX的值,写入到PDF文件中
    是用VB执行PDF写入文本
      

  3.   

    参考http://topic.csdn.net/u/20081124/23/ed010b49-5ecf-4689-9c99-44837e5424bf.html
      

  4.   

    5楼的给的网站我研究过了
    导出的PDF都是乱码
      

  5.   


    从目前 Adobe 提供给用户的方法来看,.pdf 文件是无法直接写入的(页面插入除外)。你必须将 .pdf 的原文提取到其他文本编辑器(例如 WinWord),插入你的文字,然后再重新生成新的 .pdf 文件。而提取和重新生成,都涉及到 .pdf 的工具,而且提取的文本内容在顺序上也可能与文件所显示的不同。这个问题不是 VB 的问题。也许应该去问 Adobe(Adobe pdf 文件工具,除阅读器外,是收费的)。
      

  6.   

    我做过,要用到第三方控件啊。上网搜PDFlib。然后下载该控件,他们网站上会附带实例
      

  7.   

    不好意思,tianxianceshi能否说得详细一点
    我不知道该下载PDFLIB哪个版本。
    还有就是,我不是创建一个PDF
    而是打开一个已有的PDF,然后插入一个文本
      

  8.   


    当然还有一个办法,就是将你要插入的文本当作水印来添加。已经生成的 .pdf 文件是支持插入水印的。问题是,你需要找到原文本空白处。另外,如何用第三方空间去做,要看相关说明。总之,都是不 VB 自身可以解决的。
      

  9.   

    我之前用的是7.0.3版本的,在现有文件里插入一个文本也是可以实现。但我没有具体的代码,你可以上网搜PDFLIB的实例看下
      

  10.   

    感谢tianxianceshi
    我使用PDFLIB 8.03搞定了
    如下代码,即可实现,打开一个现有的PDF,
    然后在指定位置签个名,但有一个缺陷,
    好大一个水印在上面。。
    Sub PDF_Signature(ApprovedName As String, JobName1 As String)
        ' This is where the data files are. Adjust as necessary.
        'Const searchpath As String = "..\data"    Dim p As PDFlib_com.PDF
        Dim font As Long
        Dim NewPdf As String
        Dim pdffile As String
        
        pdffile = "O:\InPlan\BOM\" & JobName1 & "-BOMT.pdf"
        NewPdf = "D:\InPlan\log\" & JobName1 & "-BOM.pdf"
        
        On Error GoTo ErrExit    Set p = New PDFlib_com.PDF    p.set_parameter "SearchPath", searchpath    ' This means we must check return values of load_font() etc.
        p.set_parameter "errorpolicy", "return"    If p.begin_document(NewPdf, "") = -1 Then
            MsgBox "Error: " & p.get_errmsg()
            End
        End If    p.set_info "Creator", "PDFlib starter sample"
        p.set_info "Title", "starter_pdfmerge"
            Dim indoc, endpage, pageno, page As Integer
            pageno = 1
            ' Open the input PDF
            indoc = p.open_pdi_document(pdffile, "")
            If indoc = -1 Then
                MsgBox "Error: " & p.get_errmsg()
            Else            ' Loop over all pages of the input document
                    page = p.open_pdi_page(indoc, pageno, "")                If page = -1 Then
                        MsgBox "Error: " & p.get_errmsg()
                    Else
                        ' Dummy page size; will be adjusted later
                        p.begin_page_ext 10, 10, ""
                        font = p.load_font("华文细黑", "unicode", "")
                        If (font = -1) Then
                           MsgBox "Error: " & p.get_errmsg
                           End
                        End If
                        p.setfont font, 13
                        p.set_text_pos 60, 38
                        p.Show ApprovedName
                        p.fit_pdi_page page, 0, 0, "adjustpage"
                        p.close_pdi_page page
                        p.end_page_ext ""
                    End If
                p.close_pdi_document indoc
            End If    p.end_document ""
        'End
        Set p = Nothing
        
        If FileDateTime(pdffile) = FileModTime Then
           FileCopy NewPdf, "\\founderpcb.com\it\ERPBOMDOC\" & JobName1 & "-BOM.pdf"
           MsgBox "上传BOM工单完毕!"
        Else
           MsgBox "检测到BOM工单有更新!请注意!"
        End If
        
        GoTo finish
    ErrExit:
        MsgBox "PDFlib exception " & Err.Description
    finish:
    End Sub