Skip to content

Instantly share code, notes, and snippets.

@Rishabh-792
Created October 7, 2022 09:23
Show Gist options
  • Save Rishabh-792/301eee94264f978c7e78502726839246 to your computer and use it in GitHub Desktop.
Save Rishabh-792/301eee94264f978c7e78502726839246 to your computer and use it in GitHub Desktop.
GSoC'22 Work Product - Converting Braille embosser support into a printer application

GSoC'22 Work Product : Converting Braille embosser support into a printer application

Chandresh | Github | Email | LinkedIn | View Project

Relevant Project Links

  • PAPPL : scanning-eSCL (Relevant codebase from this branch will be merged into the PAPPL scanning branch in the future.)

Commit Details

  • Commit-1 #bc8ef28 : Initial commit for the changes made in scanner-xml.h and client-escl.c files.

Project Summary

Cups-filters presently supports Braille embossers through a set of PPD files and shell scripts that transform documents into a textual layout, the text into Braille dots, and the Braille dots to braille embosser-specific formats. This must be transferred to the newer CUPS infrastructure, Printer Applications, for long-term maintenance and wide availability. To complete the work, we must first convert the shell script into a C function that can be readily accessed by the printer application. Then we create a new printer application for braille embosser.

Project Report

Expectations from the project’s implementation:

  • Implement the right mix of PAPPL's IPP parser code and AirSane's eSCL parser code to end up with an eSCL parser for PAPPL.
  • Read Mopria's eSCL specification to develop the parser.

Results:

The eSCL parser has been made by defining client eSCL processing functions in client-escl.c file and using libxml as a wrapper class for defining the data strcuture and XML structures in scanner-xml.h.

The functions can easily be called to perform the scan jobs for a Scanner Application.

Pending Issues:

  • Encapsulation of sane-backends into the first, retro-fitting Scanner Application with scanning support in pappl-retrofit.
  • If the parser fails due to some error, this error should be reported and fixed by debugging.

Pending Test:

  • Take a color image as sample, convert it to the right size and color space and send it to the client of the correct size on scan requests using the Scanner Application.

Words of Thanks

I would like to thank my mentors @tillkamppeter and Samuel Thibault for his continuous guidance before and throughout the summer. I would also like to thank Aveek Basu for helping me to get started with cups and cups-filters.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment