Ben Manes created PDFBOX-4774:
---------------------------------

             Summary: Add AWS Lambda support to FontFileFinder
                 Key: PDFBOX-4774
                 URL: https://issues.apache.org/jira/browse/PDFBOX-4774
             Project: PDFBox
          Issue Type: Improvement
            Reporter: Ben Manes
         Attachments: original.pdf, rendered_page.jpg

The font directory finder is hard coded based on the operating system and is 
not directly extensible. Instead, if I understand correctly, the fonts have to 
be explicitly declared in a {{PDFBox_External_Fonts.properties}} file.

AWS Lambda includes only minimal fonts in its linux distribution. For some 
documents this is too limiting, so on our EC2 instances we install 
{{msttcorefonts}}, {{ttf-aenigma}}, and {{fonts-tuffy}}. These go into 
{{/usr/share/fonts}} which the {{UnixFontDirFinder}} inspects.

AWS Lambda will unzip the distribution into {{/var/task}}, will unzip layers 
into {{/opt}} only allows tasks to otherwise write to {{/tmp}}. The common 
recommendation for fonts is to include them in the lambda, reference them at 
{{/var/task/fonts}}, and set {{FONTCONFIG_PATH}} to that path for headless 
tasks like Chrome's print-to-pdf.

Since PdfBox does not use font-config this solution does not work. Ideally it 
would be nice if one could specify a custom {{FontDirFinder}} or add custom 
directories (such as by a system property if not API). Alternatively, PdfBox 
could include reasonable default locations if the environmental variable 
{{LAMBDA_TASK_ROOT}} is set.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to