{"id":97,"date":"2004-01-01T13:49:37","date_gmt":"2004-01-01T17:49:37","guid":{"rendered":"http:\/\/scruss.com\/blog\/?p=97"},"modified":"2008-10-12T20:45:15","modified_gmt":"2008-10-13T00:45:15","slug":"appalling-office-samizdat-generator","status":"publish","type":"post","link":"https:\/\/scruss.com\/blog\/2004\/01\/01\/appalling-office-samizdat-generator\/","title":{"rendered":"appalling office samizdat generator"},"content":{"rendered":"<p>Remember when office walls were festooned with grubby, wonkily photocopied slogans, bad attempts at Snoopy cartoons, and all manner of xerox-worn paperwork? Something like this:<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/scruss.com\/blog\/archives\/donthavetobemad.jpg\" border=\"0\" alt=\"donthavetobemad.jpg\" width=\"424\" height=\"160\" \/><\/p>\n<p>With everything being digital, and e-mailed the world over without degradation, I became nostalgic for the old analogue days. So I decided to emulate the squint, black-edged, mottled, heavily-thresholded imagery with the <a href=\"http:\/\/netpbm.sourceforge.net\/\">NetPBM<\/a> toolkit and a shell script. You can download it here: <a href=\"http:\/\/scruss.com\/blog\/archives\/pnmcopier\">pnmcopier &#8211; emulate a badly-photocopied document to stdout<\/a>. It should work on most Unix machines. It does require that your shells sets $RANDOM, which might make it a bit bash-specific.<\/p>\n<p>It works best with a fairly high resolution image. Be advised it&#8217;s a processor hog; it has to rotate, smooth and merge very large images. To compound the effect, pipe the output into pnmcopier, perhaps several times. I don&#8217;t quite have the parameters right, but it gives the desired level of grubbiness. Sorry I couldn&#8217;t reproduce coffee stains, staple marks, old tape ghosts or random doodles.<\/p>\n<p>Do what you will with it, but harm none.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Remember when office walls were festooned with grubby, wonkily photocopied slogans, bad attempts at Snoopy cartoons, and all manner of xerox-worn paperwork? Something like this: With everything being digital, and e-mailed the world over without degradation, I became nostalgic for the old analogue days. So I decided to emulate the squint, black-edged, mottled, heavily-thresholded imagery [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7],"tags":[809,1681],"class_list":["post-97","post","type-post","status-publish","format-standard","hentry","category-computers-suck","tag-netpbm","tag-photocopier"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pQNZZ-1z","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/97","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/comments?post=97"}],"version-history":[{"count":2,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/97\/revisions"}],"predecessor-version":[{"id":3964,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/posts\/97\/revisions\/3964"}],"wp:attachment":[{"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/media?parent=97"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/categories?post=97"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scruss.com\/blog\/wp-json\/wp\/v2\/tags?post=97"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}