PHP PDF Libraries

Categories Programming

PDFs are easy! Like riding a...oh.

PDFs are easy! Like riding a…oh.

I wanted to do something I figured would be relatively simple. After all, we’re doing it in .Net with a third-party library: Create a PDF with text from a database with vector graphics incorporated in the page. Turns out, it’s pretty easy if you want a paid solution; numerous libraries exist for PHP that are non-free. If you insist on going free-only though, be warned: here be dragons (maybe).

Continue reading this entry ▶

HP Color LaserJet 3600 Windows 7/8/8.1

Categories Miscellany

I honestly don’t know why HP hates its customers. They assume I want to use USB to connect a business printer, or want ~140MB for a driver, or want some other print management software instead of just a driver.

So here you go. The HP Color LaserJet 3600 64-bit driver for Windows 7, 8, and 8.1.

HP3600_64_Bit.zip (14.2 MB)

SimpLESS: An Easier Way of Getting LESS Done

LESS

When I first took a look at LESS as a CSS replacement, I wasn’t too interested in having even a command-line compiler. The idea of having my stylesheet loaded and parsed by Javascript didn’t sound that great either, but tolerable if it saved me enough time and effort writing CSS.

SimpLESSWhile testing LESS on my local server, I used less.js to process my .less stylesheet on the client side. It worked well, and on modern browsers the processing time is minimal, but I decided to look around for LESS compilers anyway. I discovered SimpLESS nearly immediately, and it looked perfect.

Compiling a .less file is as easy as drag-and-drop, and it monitors the file for changes. When your file is saved, it is nearly immediately compiled into a CSS file. If you’ve made an error in your file, the file highlights red and specifies the line number at which the problem occurred. Output is pure, minified CSS goodness.

SimpLESS, by default, inserts a comment at the top referring to its website. This can easily be disabled if you like.

When I first started using SimpLESS, I was copying and pasting the output into a WordPress template style.css file, which requires a properly-formatted comment at the top to describe the theme. Since SimpLESS performs minification, comments are stripped out. I thought this was the only way to keep my WordPress theme comment intact while still using the features of LESS. This copy-paste tedium was something I specifically wanted to avoid in the first place.

Note: The remainder of this post was written before SimpLESS users complained enough about this very issue, so theme comment preservation is no longer an issue.

I thought that there must be some way to preserve a comment when compiling. Surely that wasn’t an uncommon use case? I checked out the SimpLESS source code to see how it was performing its minification (master/Resources/js/clean_css.js, line 30 if you’re interested), and saw they included a special character to preserve certain comments: the exclamation mark.

To preserve a CSS comment in SimpLESS (not that this will not work using the Javascript version, as WordPress will not find a style.less file), simply put an exclamation point after the initial comment delimiter, like so:

/*!
Theme Name: My Super-Cool Theme
Theme URI: https://www.pixelbath.com/
Description: Blah blah blah...
[cut for length]
*/

The exclamation point is ignored by WordPress, and if you have SimpLESS processing your style.less file, you can continue to upload your theme’s style.css file as usual.

Clear Photoshop’s Swatch Palette

Categories Design

The Photoshop swatch palette

Everybody wants a rainbow, apparently.

Whether you’re trying to save a specific set of colors for later use, or simply want a palette with only your colors on it, you’ll likely have encountered a problem that has been plaguing Photoshop for as long as I remember, and still hasn’t been addressed in CS5 (or CS5.5, that I know of): how do you clear the swatch palette?

The only things you can do from Photoshop’s own menus are:

  1. reset the swatch palette to the default colors
  2. replace the palette with a new swatch palette by selecting “Replace Swatches.”

Anyway, there are two ways to clear the swatch palette completely. Actually, there are three, but one of those is to manually right-click each swatch and select Delete swatch.” If you’ve got way too much time on your hands, this would be the way to go. For the rest of us that would rather get on with our lives, there are two better methods of clearing out the palette.

The first method is to do it manually, only with the help of a keyboard shortcut. While holding your mouse cursor over the swatch palette, hold down Alt ( Option on Mac). Your cursor should change to a scissors icon (). Click any color in the swatch palette to delete it. You’ll have to do this over a hundred times to clear out the palette, but if you’re a furious clicker like me, you can have this done in under 10 seconds (I play Starcraft, so…yeah).

The Alt/ Option clicking works fairly well, but is still somewhat labor intensive. If you want to clear it even faster, you can download this (mostly empty) swatch file. It includes only one color, black, so you can simply delete this single swatch and begin filling the palette with your own colors.

Download the file below:

single_swatch.aco (50 bytes)

Adobe Shadow: Speed Up Design on Mobile

Categories Design

Adobe Shadow, not to be confused with DJ Shadow.

Lee Brimelow (evangelist for Adobe) has just posted a link to a new product released in Adobe Labs called ShadowAdobe Edge Inspect. This is an application that sits both on your development machine, and as an app for Android or iOS devices (iPod Touch, iPhone, iPad), enabling you to quickly debug the rendering of websites.

Basically, once you are running Shadow on both your development machine and your mobile device(s), the app will then pair the devices. You then browse websites using your development machine, and your devices browse along with you. No touching, no turning on, and no fiddling with mobile browsers.

Remote inspection of pages is another pretty amazing feature of Shadow. In the same vein as Firebug and Chrome/Safari’s Developer Tools, the DOM can be inspected and edited directly on the device from the development machine.

While this is all very cool, the one downside (yet somehow an upside from Adobe’s point-of-view) is that each device is actually making separate requests to the server for each URL. While this does keep the navigation of pages consistent with how they would actually be browsed, I can’t imagine this working very well for sites that rely heavily on POST requests.

For designers, it seems to be quite an elegant solution to the problem of testing multiple variations on a single site design.

Check it out at the Adobe Labs.

Edit: This is now called “Adobe Edge Inspect” is now included with Creative Cloud subscriptions.

Referrer Spam Trick

Categories Internet

Just a quick post here, since there’s not too much to say about this one.

I received the comment below on one of the blogs I administer:

Hi, I left you a DOFOLLOW backlink on my website. This isnt a spam message, i actually did leave you a backlink on my site. If you check the top of the page you will see “Sites we like” and there will be a link to this site. Would you be kind enough to leave me a backlink? If so my website is http://[SCREW YOU, SPAMMER].com please use the anchor text “[I AM A STUPID SPAMMER]” for the link and add it to a post or as a widget. Then please send me a email at backlink@[NOT A CHANCE].com – If you want me to change your links anchor text let me know. Thanks

Since I’m the curious type, I decided to visit the site. Imagine my surprise when the backlink is actually there!

Wow, really?!

Being that the top of the home page is an extremely unlikely place for a backlink, I entered the URL directly. As expected, the link disappeared.

So, it’s checking the referrer, and displaying the link to one of the sites spammed when the correct referrer is found. Not a new trick, but pretty clever.