Wie man Kästen in einem PDF mit fdfgen in Python überprüft

Ich arbeite an einem Python 3.4 Projekt, das fdfgen und pdftk benutzt, um ein pdf auszufüllen. Ich kann Textfelder ganz einfach ausfüllen. Die Sache, die ich nicht herausfinden kann, ist, wie man eine Kiste überprüft.

Hier ist der Teil meiner Python-Skript:

fields = generate_vs300_field_list(answers_dict) # Returns list of tuples of fields and text to be added to pdf fdf = forge_fdf("", fields, [], [], []) logging.debug('Called forge_fdf function. About to open fdf_file.') fdf_file = open(os.path.join(destination_dir, 'vs300.fdf'), 'wb') logging.debug('Opened fdf_file. About to write to it.') fdf_file.write(fdf) fdf_file.close() logging.debug('Wrote to fdf_file and closed it.') cmd = 'pdftk "{0}" fill_form "{1}" output "{2}" dont_ask'.format( './styles/vs300.pdf', os.path.join(destination_dir, 'vs300.fdf'), os.path.join(destination_dir, 'vs300.pdf') ) logging.debug('About to send this command to pdftk: ' + cmd) os.system(cmd) logging.debug('Command sent. Removing temporary fdf file.') os.remove(os.path.join(destination_dir, 'vs300.fdf')) 

Ich kann erfolgreich eine Liste von Tupeln erstellen, die an forge_fdf gefüttert werden sollen, wobei das erste Element im Tupel der Feldname ist und der zweite der Text für das Feld, das ich hinzufügen möchte.

Was kann ich nicht herausfinden, wie zu tun ist, um eine Box zu überprüfen. Wenn ich pdftk dump_data_fields auf meinem pdf laufe, hier ist der Eintrag für die Checkbox Ich versuche zu überprüfen:

 FieldType: Button FieldName: Absolute Divorce FieldNameAlt: Absolute Divorce FieldFlags: 0 FieldJustification: Left FieldStateOption: Off FieldStateOption: On 

Ich bin mir nicht sicher, wie man a) die fdf-Datei so umwandelt, dass es das Kontrollkästchen auftaucht, als überprüft worden ist, und b), wie man diese Änderung mit fdfgen tatsächlich durchführt.

One Solution collect form web for “Wie man Kästen in einem PDF mit fdfgen in Python überprüft”

Kontrollkästchenfelder durch fdfgen gehen durch die Variable fdf_data_names und nicht fdf_data_strings. Sie sollten auch das PDF selbst überprüfen, um zu sehen, was das Kontrollkästchen für seinen "on" Trigger verwendet.

Sie rufen zu forge_fdf würde dann aussehen:

 forge_fdf("", fields, data_names) 
  • Python TypeError: range () integer end argument erwartet, float
  • Decode base64 string in python 3 (mit lxml oder nicht)
  • ARIMA Modellierung auf Zeitreihe Dataframe Python
  • Wie verwende ich cache_clear () auf python @ functools.lru_cache
  • Pass dict mit Nicht-String-Schlüsselwörter, um in kwargs zu funktionieren
  • Liste, die von der Kartenfunktion zurückgegeben wird, verschwindet nach einer Verwendung
  • Wie bekomme ich googles "Fast Answer Box" Text?
  • Erstellen eines Assistenten in Tkinter
  • Konvertieren Sie das Python-Byte in "unsigned 8 bit integer"
  • Wie mache ich ein unveränderliches Objekt in Python?
  • Wie wähle man die Zeilen aus, die einen bestimmten Wert in mindestens einem der Elemente in einer Zeile enthalten?
  • Python ist die beste Programmiersprache der Welt.