P?D?F?二?次?开?发?_?i?S?t?y?l?e?P?D?F?表?单?域?的?填?充

wo讲到PDF表单,我们首先需要认识Adobe定义的PDF表单有哪些。以下是我从网上搜索到的简单介绍:

PDF 表单简介

PDF 是可移植文档格式(Portable Document Format)的缩写,这是由 Adobe Systems Inc 开发的文件格

式。PDF 将从各种桌面发布应用程序捕捉格式信息,使其能够发送设定了格式的文档并根据需要在接收者的监视

器或打印机中显示这些文档。要查看 PDF 文件,需要使用 Adobe Reader;要创建或修改 PDF 文件,需要使

用 Adobe Acrobat Professional 或 Adobe Acrobat Designer。

PDF 表单可以分为两种类型:静态 PDF 表单和交互式 PDF 表单。静态 PDF 表单是没有交互元素的传统 PDF 文

档。这种表单是由文本、点、线和图形等静态元素组成的,文件存储为二进制格式。

另一种 PDF 表单是交互式 PDF 表单。在 PDF 规范中,有两种交互式表单:

AcroForm:PDF Specification 1.2 中引入的这种表单是从用户那里通过交互方式收集信息的字段集。交互式表单

的内容和属性都是由一个交互式表单字典定义的,这个字典引用自 PDF 文件的文档类别的 AcroForm 条目。

XML Forms Architecture(XFA):XFA 将提供基于模板的语法和处理规则集,它们将允许用户构建交互式表

单。基于模板的语法将定义用户在其中提供数据的字段。XFA 的开放特性将提供描述交互式表单的通用 XML 语

法,这是在表单处理应用程序之间执行与表单相关的交互操作的通用基础。这种开放特性意味着将在各种业务中应

用 XFA。XFA 表单将提供大量功能:

工作流程:这类表单包括数据表示、数据捕捉和数据编辑。XFA 被用作将数据提交到后台服务器中的前端应用程

序;它还可用于打印目的。

动态交互:动态功能从具有动态计算、验证及其他特性的交互式、可编辑的表单,到服务器生成的、机器填充的表

单等各不相同。

动态布局:表单可以自动重新调整自身以适应用户或外部数据源(例如数据库服务器)提供的数据。例如,如果从

服务器中检索到的数据有 100 行,则表单显示 100 行。

复杂度:此功能包括单页静态表单,动态文档将基于数据内容进行装配,而大型生产运行包含数十万个事务。

与 AcroForm 相比,XFA(一种交互式表单)在以下方面更加高级:

XFA 可以在基于 XML 的工作流中使用。

XFA 将从 XFA 模板中分离数据,这将允许在支持的数据结构中拥有更大的灵活性并允许独立于表单封装数据。

XFA 可以指定动态增长的表单。

XFA 可以指定 Web 交互操作,例如 HTTP 和 Web 服务描述语言

(Web Services Description Language,WSDL)。此类交互操作可用于将数据提交给服务器,或请求服务器执

行计算并返回结果。

XFA 将与其他 XML 语法结合使用。

目前我们只支持AcroForm形式交互性。通过接口可以控制每个域的文本填充,设置域的只读性、可见性等属性。

我采用C#快速开发了一个示例,如下图所示:

1、首先是把我们的PDF控件拖到Form上布局。

2、响应填充按钮的消息,实现代码如下:

看到没,就是这么简单。。。。。

时间: 2024-08-06 02:40:31

P?D?F?二?次?开?发?_?i?S?t?y?l?e?P?D?F?表?单?域?的?填?充的相关文章

详解使用w?s?g?e?n?和?w?s?i?m?p?o?r?t?开?发?W?e?b?S?e?r?v?i?c?e

本文旨在描述如何使用jdk自带的wsgen.exe 和wsimport.exe开发WebService. 1.新建一个java工程,项目名:WebServiceDemo.由于本文想通过完全手动建立的方式来演示整个过程,故我们的工程目录就是WebServiceDemo啦! 2.在此目录下新建Business.java 和 BusinessImpl.java两个类,分别如下: public interface Business { public String echo(String message)

Openstack Nova 二次开发之Nova-extend服务实现并启动验证

 Openstack Nova 二次开发之Nova-extend service 扩展 主要是讲如何启动openstack nova-extend services,该服务用于Openstack 二次扩展及部分需求开发,例如 ,节点巡检,动态迁移(基于FUSE 文件系统实现,分布式系统,如MooseFS),文件注入,Nova 服务的自身修复,instances IO 控制,instances CPU 隔离技术实现等其他需求开发 第一章:如何create openstack nova-extend

ecshop二次开发文档

ecshop二次开发手册,这里以ecshop2.5.1为例Ecshop文件结构/*ECShop 2.5.1 的结构图及各文件相应功能介绍ECShop2.5.1_Beta upload 的目录┣ activity.php 活动列表┣ affiche.php 广告处理文件┣ affiliate.php 生成商品列表┣ article.php 文章内容┣ article_cat.php文章分类┣ auction.php 拍卖前台文件┣ brand.php 品牌列表┣ captcha.php 生成验证码

最新Android SDK_API_开发包_离线包_下载

[转载][资源]最新Android SDK_API_开发包_离线包_下载 开发Android应用少不了Android SDK,由于谷歌服务器的原因,在国内下载Android SDK速度非常慢,如果要把所有的Android SDK下载回来势必是一件非常痛苦的事情.因此,在这里把本人下载的所有的Android SDK打包分享,希望对广大Android 开发者能有所帮助. 所安装的Android SDK,  包括谷歌到目前为止发布的所有的Android API,和部分工具. SDK_API_开发包_离

PDMS二次开发之PML开发一些常见查询语句

1.查找session 以及session number var !DBname DBname !db = object db(!DBname) !session = !db.lastsession() 下面是查询结果截图 q var !db q var !sessioon.number 2.从某个时间段到当前,模型的差异文件判断模型是否发生修改,并写入文件. alpha log /$!file  overwrite DIFFERENCE $!ojbName SINCE 15:36 14 May

JDBC二部曲之一_介绍

JDBC 1 什么是JDBC? JDBC(Java DataBase Connectivity),即Java数据库连接!也就是说,Java程序员可以使用JDBC API来操作数据库. 最早JDBC是Java EE中的规范,但是现在已经添加到Java SE中了.也就是说,JDBC API在JDK中就已经存在了.与JDBC相关的包有:java.sql和javax.sql两个包! 2 JDBC原理 早期SUN公司的天才们想编写一套可以连接天下所有数据库的API,但是当他们刚刚开始时就发现这是不可完成的

金笛JAVA二次开发包开发Wavecom短信应用时需要注意如下事项

1. 金笛JAVA开发包目前在WindowsXP.2000.2003.Vista.Linux(Redhat.Centos)各个版本测试并有实际应用,solaris,aix.hp-ux目前暂时没有测试,不能保证在这些平台上可以使用.金笛JAVA 开发包针对windows版本和linux版本分别有不同的打包文件,底层串口的驱动是不同的(linux下是RxTX驱动,windows下是mscomm.dll),购买开发包时,请一定说明实际应用环境. 2. 如果没有特殊情况,请尽量选用串口的Wavecom或

m?y?e?c?l?i?p?s?e? ?环?境?下?整?合?开?发? ?s?t?r?u?t?s?2?+?s?p?r?i?n?g?+?h?i?b?e?r?n?a?t?e? ?常?见?问?题?及?解?答

myeclipse 环境下整合开发 struts2+spring+hibernate 常见问题及解答 1. org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save(): 异常原因: <id> 元素配置不正确, <id> 元素缺少其子元素 <generator></generator> 的配

面向对象的基本原则(二)------开闭原则

一.定义 开闭原则(OCP),英文全称是Open for extention, Closed for modification Principle,即对扩展开放,对修改关闭原则.该原则的思想是,可以通过扩展来满足变化,而不需要修改代码,或者说在设计一个模块的时候,应当使这 个模块可以在不被修改的前提下被扩展. 二.实现 实现开闭原则的关键是抽象,抽象是面向对象设计的一个核心特征. 对一个事物抽象化,实质上是在概括归纳总结它的本质.抽象让我们抓住最最重要的东西,从更高一层去思考,这降低了思考的复杂