【发布时间】:2016-09-27 11:36:27
【问题描述】:
我有一个使用 tabcontrols 和 tabpages 的动态 xml 记录,我需要创建 xsl-fo。但是,我在网上找不到任何解决方案的参考。 xml摘录如下:
<Textbox ID="Textbox_Comments_Multiline_5" Field="Case Comments:" Value="" Size="600" Length="" Extender="TextBoxWatermark~ " Align="left" LabSize="" HelpMessage="" RPosition="0" isSpecific="true" Position="505" DefaultValue="" />
<Tabcontrol ID="Tabcontrol1" Position="700">
<Tabpage ID="Tabpage_Notification" Field="NOTIFICATION" Size="" Extender="" Align="" HelpMessage="" Position="1000">
<Linebreak ID="Linebreak_Notification_1" RPosition="0" Position="1001" />
<Combobox ID="Combobox_HPTOffice" Field="Health Protection Office:" Value="Please select" ValuesLookup="HPTOffice" Size="" Length="" Extender="" Align="" LabSize="180" HelpMessage="" RPosition="0" Position="1010" />
<Linebreak ID="Linebreak_Notification_5" RPosition="0" Position="1011" />
<Datebox ID="Datebox_NotificationDate" Field="Notification Date:" Value="1900-01-01" Size="100" Length="" Extender="" Align="right" LabSize="180" HelpMessage="" RPosition="0" Position="1020" />
<Linebreak ID="Linebreak_Notification_10" RPosition="0" Position="1021" />
<Textbox ID="Textbox_NotifiedBy" Field="Notified by:" Value="" Size="400" Length="" Extender="TextBoxWatermark~ " Align="left" LabSize="180" HelpMessage="" RPosition="0" Position="1030" />
<Linebreak ID="Linebreak_Notification_15" RPosition="0" Position="1031" />
<Textbox ID="Textbox_NotifierDesignation_Multiline_3" Field="Notifier Designation:" Value="" Size="600" Length="" Extender="TextBoxWatermark~ " Align="left" LabSize="" HelpMessage="Notifier details" RPosition="0" Position="1040" />
<Linebreak ID="Linebreak_Notification_20" RPosition="0" Position="1041" />
<Linebreak ID="Linebreak_Notification_25" RPosition="0" Position="1042" />
<Textbox ID="Textbox_ResponsibleClinicianDetails_Multiline_5" Field="Responsible Clinician Details:" Value="" Size="600" Length="" Extender="TextBoxWatermark~ " Align="left" LabSize="" HelpMessage="" RPosition="0" Position="1050" />
<Linebreak ID="Linebreak_Notification_30" RPosition="0" Position="1051" />
<Linebreak ID="Linebreak_Notification_35" RPosition="0" Position="1052" />
<Combobox ID="Combobox_SourceOfSpecimen" Field="Source Of Specimen:" Value="Please select" ValuesLookup="SourceOfSpecimen" Size="" Length="" Extender="" Align="" LabSize="180" HelpMessage="" RPosition="0" Position="1060" />
<Linebreak ID="Linebreak_Notification_40" RPosition="0" Position="1061" />
<Textbox ID="Textbox_SourceOfSpecimenOtherSpecify" Field="If other specify:" Value="" Size="300" Length="" Extender="TextBoxWatermark~ " Align="left" LabSize="180" HelpMessage="" RPosition="0" Position="1070" />
<Linebreak ID="Linebreak_Notification_45" RPosition="0" Position="1071" />
<Combobox ID="Combobox_Laboratory_InitialNotification" Field="Source Laboratory:" Value="Please select" ValuesLookup="Laboratory" Size="" Length="" Extender="" Align="" LabSize="180" HelpMessage="" RPosition="0" Position="1080" />
<Linebreak ID="Linebreak_Notification_50" RPosition="0" Position="1081" />
<Linebreak ID="Linebreak_Notification_60" RPosition="0" Position="1091" />
</Tabpage>
【问题讨论】:
-
请提出具体问题。
-
您是想要页面上的数据还是想要 PDF 中的可填写表单元素作为结果?
-
我需要页面上的数据以及可填写的表单元素(其中的元素值尚未完成),格式与呈现的 xml 类似。基本上,我希望用户能够打印出一份调查问卷并包含已记录的所有回复。
-
关于“可填写表格”部分,恐怕FOP做不到(见Adding a PDF fillable form (acrofield) using Apache FOP)。
-
您可以使用支持可填写表单的 RenderX XEP 来实现这一点,但对我来说,您提供的数据缺少内容。例如... Combobox ID="Combobox_HPTOffice" ... 处理此数据的解决方案以什么方式知道组合框的可用值是什么?