marinehero / AFPParser

Parses IBM AFP files line by line

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Parses IBM AFP files line by line

This project is my attempt to better understand the structure of AFP files.

There are well over 1,500 pages of documentation on how to decode sections and bytes of AFP located on their official site here, and I have included some of the most important ones in the project directory under ./Reference Manuals/.

Current Progress

  • Understand the basic structure and hex patterns
  • Read each structured field into a raw list of bytes
  • Separate introducer data into their own properties, and read each field into a more strongly typed class
  • Support parsing semantics of any structured field, using predefined offsets
  • Understanding and parsing triplets, using their own set of offsets
  • Create a more solid class inheritance architecture
  • Support parsing of more fields' data
  • Build a rendering engine.
  • Support editing/adding/deleting fields and saving the file according to definied AFP standards. <-- Current step
  • Fully support decoding of all field, triplet, and control sequences data.

The remaining steps are not necessarily listed in order of execution. I will most likely never implement typed properties for every single field, triplet, etc.

7/17/2017 - The project, as it stands, is nearing the end of its life on Github. I shall continue coding/supporting it, but have started transitioning it to my company's source control in TFS. As a result, proprietary namespacing and refactoring may take place, and that certainly cannot be committed to Github. If I have time, I will sync core functionality as I see fit.


Parses IBM AFP files line by line


Language:C# 100.0%