Este exemplo mostra como extrair campos estruturados de um PDF usando um template personalizado através de GroupDocs.Parser.
Java
// Abra o PDF usando a classe Parser
try (Parser parser = new Parser("input.pdf"))
{
// Aplique o template de análise para extrair os dados definidos
DocumentData data = parser.parseByTemplate(GetTemplate());
// Verifique se a extração baseada em template está disponível
if (data == null) {
return;
}
// Trabalhe com os campos de dados extraídos
for (int i = 0; i < data.getCount(); i++) {
System.out.print(data.get(i).getName() + ": ");
PageTextArea area = data.get(i).getPageArea() instanceof PageTextArea
? (PageTextArea) data.get(i).getPageArea() : null;
System.out.println(area == null ? "Not a template field" : area.getText());
}
}
private static Template GetTemplate()
{
// Defina as configurações do detector para extrair a seção 'Detalhes'
TemplateTableParameters detailsTableParameters =
new TemplateTableParameters(new Rectangle(new Point(35, 320), new Size(530, 55)), null);
TemplateItem[] templateItems = new TemplateItem[]
{
new TemplateTable(detailsTableParameters, "details", null)
};
Template template = new Template(java.util.Arrays.asList(templateItems));
return template;
}