Pretty much all of the PDF readers I have tried will work for form filling, however I have some similar issues with all of them.
I mainly use Okular or Atril.
Issue 1 is when filling out multiple fields in a PDF, it becomes extremely slow, to the point of typing some text, and having to wait for 5-10 second for it to show up and I can continue.
Issue 2 is that both Okular and Atril will insert the text with a much larger font size and/or different font than the document. Even in cases where the fields have some pre-populated text, if I touch the field, the font changes. Sometimes the change is significant enough that the text is not readable, or makes surrounding elements not readable.
The best way I have found that works is to use FireFox. The form filling in that works fast and doesn't mess up the fonts, but the way FireFox handles saving PDFs is tedious. I can't just click ctrl+s to save, as it prompts me to choose a location to save at and makes me overwrite the original file every time, rather than just editing it in place.
Is there any PDF reader that people are aware of that does not have these issues? Or is this something that is weird with my setup?
I'm running Debian 12 with the KDE Plasma desktop environment
I do a lot of PDF work which requires edits, encryption, etc. Unfortunately the only solution I found that worked for me was a paid one. I use Code Industry's Master PDF Editor.
I've been a user of Master PDF for years now. It's my go-to for PDF markup in Linux. Their yearly renewal can be kinda wonky, but their customer service has been excellent.
This isn’t a gui solution and probably is way off from your intentions, but you could use pdftk to dump the fillable field name and pdftk again to populate them with an xfdf file.
edit, I got interested:
#!/bin/bash
# Check for required arguments
if [ $# -ne 2 ]; then
echo "Usage: $0 "
exit 1
fi
SOURCE_PDF=$1
DEST_PDF=$2
XFDF_FILE=tmp.xfdf
# Extract form field names
FIELD_NAMES=$(pdftk "$SOURCE_PDF" dump_data_fields | grep "FieldName:" | cut -d ' ' -f2-)
# Start XFDF file
echo '' > $XFDF_FILE
echo '' >> $XFDF_FILE
echo '' >> $XFDF_FILE
# Prompt for user input for each field
for FIELD in $FIELD_NAMES; do
read -p "$FIELD: " INPUT
echo "$INPUT" >> $XFDF_FILE
done
# Close XFDF file
echo '' >> $XFDF_FILE
echo '' >> $XFDF_FILE
# Populate the PDF form
pdftk "$SOURCE_PDF" fill_form $XFDF_FILE output "$DEST_PDF"
# Clean up
rm $XFDF_FILE
echo "PDF form filled and saved as $DEST_PDF"
Draw is great, and I've been able to use it for most of what I used Acrobat for before, but it has issues with converting certain documents, especially when they have special fonts. Also there's the issue of not being able to just fill out some fields and then share it back as a PDF
I've been looking for a decent PDF editor on Linux for years. Like you said, there are plenty that will basically work, but I always have issues with font mishandling.
So far I've just settled on using a windows VM with adobe for editing PDFs (along with one other windows only program that I need.) There is a way to get Adobe PDF software working in linux, but I haven't tried it.
If you need to sign PDFs, xournal++ is an excellent app for applying a saved signature as a stamp.
Foxit still provides a free version that's linux compatible. Its been a lifesaver at work to do document signing without messing everything up. It may take a little tweaking to run, but it's worth a try for forms.