Large PDF Support

Now Blitline supports rasterizing PDF larger than 20 pages.

With our new “Burst” functionality, Blitline will automatically separate PDFs into individual pages, and then rasterize each page in parallel. This means you can render 100 page PDFs in seconds.

You can also set rendering DPI, so if you need a printable version of a PDF you can render it in to a 200dpi image, suitable for printing.

Check it out at

New Updates

There are some new updates coming soon. Mostly cleanup and optimizations but some of them may be worth noting.

Imagga Heroku Plan:

We now have a Heroku plan that incorporates the new Imagga “Smart Cropping” functionality.

New Bigger Heroku Plans:

People have been bumping up against the current largest Heroku plans so we are adding two new larger Heroku plans

Security Updates for S3:

We are adding an extra layer of security for you buckets. Nothing will break, but now an account will be linked with a bucket. If you need more than one account linked to a single bucket, you will need to contact us at and request application IDs be whitelisted for buckets.

Numerous Backend Optimizations:

As always we are continually working to bring you a better product, in security, speed, capacity, ease-of-user, and uptime.

Blitline Partners with Imagga!

We are happy to announce a partnership with the image analysis gurus at Imagga!

Imagga is the company behind and has built an amazing “smart cropping” functionality. By analyzing the image and determining where the most ‘interesting’ parts of the photo are, Imagga can choose the best crop for thumbnails automatically. Stop worrying about manually cropping photos, or incorrect center cropping, let Imagga choose the best crop for you.

You can now use an Imagga “smart cropping” within the regular flow of your Blitline job functions. Use smart cropping and then continue to manipulate your cropped photos with other Blitline functions. Blitline handles the combined billing of Blitline + Imagga for you so you don’t need separate accounts.

Also be sure to check out all the cool things Imagga is doing over at

New Functionality

HTML Output

We are happy to announce that not only can you take a screenshot of your website with Blitline, for those of you who care about SEO optimizations you can also output the HTML generated by your website.

Why is the interesting?

Many websites these days render their pages with Javascript that happens after the page is loaded. So you can’t just simply do a ‘wget’ or simple ‘get’ to a url, because the javascript will not run and render the page. With Blitline, our rendering engine performs all the javascript and DOM changes after load, thus, you can get the HTML after all the Ajax/javascript rendering is done.

How do I do it?

Check out our screenshot page…

This brings us to our next subject…

New UI

Blitline is undergoing some renovations. We are gradually updating our website with better and more understandable (we hope) docs, walkthroughs, and examples. If you haven’t been there is a while, you should check it out, and as always, we value your feedback, so please tell us what you think and what we can do to make things better.

Beta Labs:

We also have a new section called Beta Labs where we are testing out new functions/features. There are currently 4 new features of interest.

Hope to see you on soon!

Polling Changes

We have recently implemented some polling changes that may affect some of our users.

As we state in our documenation, polling is very expensive (for both Blitline and the clients who poll). For us, it’s a database lookup in a very large dataset. For clients, it’s an http call that has to wait for us to make a lookup in a very large dataset. Multiply that times “many” and it’s a problem. Postbacks are a much better overall solution. You can find some help with postbacks here.

We are implementing 2 new things to help mitigate this problem. First, we are caching poll results if the job has completed. Thus if you poll for a job that you have already polled for (and it has completed), no new information is added to completed jobs, so we are going to be caching them now to reduce the burden on our servers.

Second, we are rate limiting polling to be 5 request/second with a burst rate of 50, which should be plenty for any development or small applications.

Lastly, if you MUST poll, please poll your destination (Amazon S3). They are much better and handling poll requests than Blitline. Usually polling is necessary when using javascript to call Blitline functions (ie. a server-less configuration). You can find a javascript function to poll S3 here

UPDATE: We had some issue with our deployment yesterday that caused some polling failures. We apologize to those who were affected, and please notify us if you continue to have any problems.

tomjensen said: Are you guys going to enable processing on Rackspace utilizing their Cloudfiles in the same way you are using Amazon's S3?

Its on the long term agenda, but honestly there has been no demand for it, so we haven’t made the effort. You are the first person to even ask about it.

Understanding Blitline Functions

Here is a little dynamic walkthrough of Blitline functions. Sometimes it’s a little hard to understand how functions relate to one another or to the job as a whole. This helps break down the functionality of “functions”.

For those new to Blitline, you should also check out the Blitline workflow presentation to understand what happens when you submit a job to Blitline.

Alternate Log-in Option

We have had requests for allowing somebody else to log in to a Blitline account without having the original Twitter/Google/Github credentials.

We have implemented an optional alternate login that uses your Blitline “Application ID” and your “Secret” from your Account page. Alternate users can use these two values to log in to a Blitline account.

You can find this login page here:

It’s also linked from the regular sign-up/log-in page.

Note: Once logged in the user has all the same privileges as the original authenticated user.

Convert Command

Those familiar with ImageMagick may be happy to hear that we have implemented a way to take raw “convert” commands and run them with Blitline. We have added a “convert_command” function that mimics the IM convert command line.

It takes the source image (this can be the “src” or the output of another function), and performs the defined operations on it, then the output can be manipulated further via Blitline job json.

We currently only support the following ImageMagick “convert” command line scenario:


The <SRC> and <OUTPUT> are automatically controlled by Blitline on the back end, but you can define the params and values that go in the middle.

The params and values are defined via the Blitline json, for example:

        “params” : {
            “-background” : “Lavender”,
            “-fill” : “navy”,
            “-font” : “Verdana”,
            “-pointsize” : “24 label:Hatching”,
            “-gravity” : “South”,
            “-append” : “”
        “save”: {
            “image_identifier” : “some_id”

You can see a breakdown of this here:

And an example of it working here: