[Raku PDF Project]
/ [FDF Module]
FDF-raku
A Raku module for the creation and manipulation of FDF (Form Data Format)
files, including PDF export and import.
Classes/Roles in this Distribution
Synopsis
Export fields from a PDF to an FDF
use PDF::Class;
use FDF;
my PDF::Class $from .= open: "MyDoc.pdf";
my FDF $fdf .= new;
# fill the email field, overriding PDF value
my %fill = :email<david.warring@gmail.com>;
# Combined import and filling
$fdf.import: :$from, :%fill;
# -OR- import then fill
$fdf.import: :$from;
$fdf.import: :%fill;
note "saving fields :-"
for $fdf.field-hash.sort {
note " - {.key}: {.value.perl}";
}
$fdf.save-as: "MyDoc.fdf";
List field values in an FDF file
use FDF;
use FDF::Field;
my FDF $fdf .= open: "MyDoc.fdf";
my FDF::Fields @fields = $fdf.fields;
for @fields {
say .key ~ ': ' ~ .value.raku;
}
Export field data from an FDF to a PDF
use PDF::Class;
use FDF;
my PDF::Class $to .= open: "MyDoc.pdf";
my FDF $fdf .= open: "MyDoc.fdf";
# populate form data from the PDF
$fdf.export: :$to;
# save updated fields
$to.update;
Description
FDF (Form Data Format) is a format for storing form data and formatting or
annotations seperately from PDF files.
Bugs and Limitations
Not yet handled:
- Form signing and signature manipulation
- Import/export of annotations and pages
- Custom encodings (
/Encoding
entry in the FDF dictionary)