+
+ if ($self->{pdf_a}->{xmp}) {
+ my $xmp_file_name = $self->{userspath} . "/pdfa.xmp";
+ my $out = IO::File->new($xmp_file_name, ">:encoding(utf-8)") || croak "Error creating ${xmp_file_name}: $!";
+ $out->print(Encode::encode('utf-8', $self->{pdf_a}->{xmp}));
+ $out->close;
+
+ } else {
+ my $meta = $self->{pdf_a}->{meta_data} // {};
+
+ push @new_lines, (
+ "\\RequirePackage{filecontents}\n",
+ "\\begin{filecontents*}{\\jobname.xmpdata}\n",
+ ($meta->{title} ? sprintf("\\Title{%s}\n", $meta->{title}) : ""),
+ ($meta->{author} ? sprintf("\\Author{%s}\n", $meta->{author}) : ""),
+ ($meta->{language} ? sprintf("\\Language{%s}\n", $meta->{language}) : ""),
+ "\\end{filecontents*}\n",
+ );
+ }