A HTTP client is not the same thing as a web browser.
One way to simplify the 'footprint' requirement is to
assert that any 'reference' that you want to 'print by'
must be from, for example, a HTTP server, be directly
available without redirection, and only be in a media type
that the printer said it already supported.
So, the implementation on the printer end would be basically:
open a connection to the host in the URL
send "GET url HTTP/1.1" and "accept: application/postscript"
read the result:
if not 200, error
scan for content-type; if type isn't recognized, error
read data as print data.
Maybe 100 lines of code? Certainly not megabytes.
Don't turn a little capability (print by reference) into a big one
(printer is a web browser) and then complain that the result is too big.