我使用iTextSharp(5.5.6)来填充一些Acroform,我发现了一些奇怪的行为:
在某些情况下,如果我填写AcroForm iTextSharp将文本放置在TextBox字段中,然后我展平该表单,则该字段的文本将被呈现为'与相同的AcroForm填充槽Acrobat Reader相比,与TextBox基线的距离不同;
如果我填入一个带有匹配值的复选框(到'检查'它)然后我展平表单,生成的PDF将使用不同的'检查'符号
这是我用来填充和压扁AcroForm的代码:
SELECT
RCDEA.data_element_ID,
RCDEA.answer_ID,
RCDEA.answer_text,
AA.name answer_name,
CASE
WHEN MM.export_value = 'MAYBACH' THEN CONCAT('S', "|", RCDEA.create_DTM)
WHEN MM.export_value = 'PICPE' THEN CONCAT('PACPE', "|", RCDEA.create_DTM)
WHEN MM.export_value = 'POCPE' THEN CONCAT('PACPE', "|", RCDEA.create_DTM)
ELSE CONCAT(MM.export_value, "|", RCDEA.create_DTM)
END AS poi_multi,
MM.export_value_2 AS mapping_export_value_2,
RCDEA.create_DTM,
CAST(DATE_FORMAT(RCDEA.create_DTM,"%m%d%Y") AS CHAR) AS source_date,
CAST(DATE_FORMAT(RCDEA.create_DTM,"%H%i%s") AS CHAR) AS source_time,
CASE
WHEN RCDEA.data_element_ID = 11177 THEN CAST(DATE_FORMAT(DATE_ADD(F.create_DTM, INTERVAL 180 DAY), "%m%d%Y") AS CHAR) ELSE '' END AS cert_expn_date_source,
F.event_token_ID
FROM efn.R_Consumer_Data_Element_Answer RCDEA
JOIN efn.Footprints F ON RCDEA.footprint_ID = F.footprint_ID
AND F.consumer_ID = RCDEA.consumer_ID
LEFT JOIN efn.Answers AA ON RCDEA.answer_ID = AA.answer_ID
LEFT JOIN kettle_data_transfer.Mappings MM ON RCDEA.data_element_ID = MM.data_element_ID AND RCDEA.answer_ID = MM.answer_ID
AND MM.data_transfer_ID = 12
我哪里错了?