README

[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<[email protected]>;

# 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)

FDF v0.0.3

Classes for FDF (Forms Data Definition)

Authors

  • David Warring

License

Artistic-2.0

Dependencies

PDF::Class:ver<0.5.4+>PDF

Test Dependencies

Provides

  • FDF
  • FDF::Annot
  • FDF::Catalog
  • FDF::Dict
  • FDF::Field
  • FDF::Field::AdditionalActions
  • FDF::IconFit
  • FDF::JavaScript
  • FDF::NamedPageRef
  • FDF::Page
  • FDF::Template

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.