Take the 2-minute tour ×
Graphic Design Stack Exchange is a question and answer site for Graphic Design professionals, students, and enthusiasts. It's 100% free, no registration required.

I'm in the process of producing QR-codes for use on product packaging. The codes are generated in batch and the resulting files are typically 25x25 px PNG files. Of course, such a small image would normally be way too low res to use in print, i.e. a 1x1 inch image would need to be 300x300 px in order to print in 300 DPI.

When it comes to simple images such as QR-codes (I guess this would also apply to bar codes without the digits) I realized that the actual resolution of the image is not really relevant, as I can easily resize the image to any size I prefer using nearest-neighbor resizing option in Photoshop. In a way, the resulting 250x250 px image won't contain any more information in terms of "QR pixels" than the 25x25 px version, apart from the obvious fact that the file will be larger in size. Also, when resizing to a width not evenly divisible by 25 (e.g. 70x70) the resulting QR pixels will not all be the exact same width.

This has got me thinking I can simply place the 25x25 px PNG in my InDesign layout, which will in turn be exported to PDF and sent to print. This seems to work out fine when I print the file on my printer, but on screen the image sometimes looks blurred (as you would expect with it being magnified). I have found that the blurring effect stems from the anti-aliasing setting in my PDF viewer, so there is obviously no information about resizing/anti-aliasing embedded in the PDF file, while the printer will resize the image without anti-aliasing (i.e. using nearest neighbor).

Finally, the question: Is there any obvious downside to using this method? Is it safe to assume that the 25x25 px image in my PDF document will be upscaled without anti-aliasing when I send it to the printing office? Would I be better of just manually upscaling it or converting it to a true vector format?

Bonus question: is there a better term for what I am referring to as vector-like in the title/question, that is the concept of a bitmap/raster image being upscaled without loss of quality?

share|improve this question

2 Answers 2

up vote 3 down vote accepted

Never rely on any print provider to do anything other than spit out your file as it currently exists. I would never trust that something will be output in a specific manner to ensure it is as I expect. If you have to provide instructions or notes on how to output, then it's a recipe for error. If you place a 25ppi image in Indesign it never gets "upsampled" when generating a PDF. It is output at 25ppi.

For codes, bar codes, QRT codes, etc their are only 2 acceptable solutions....

  1. Use a true vector code. There are dozens of barcode/QRcode generators which generate EPS, SVG, or EMF files. This is what you should use. If you're generator can not create these formats, find another code generator.

  2. If you must use a raster image, then it needs to be larger than what will be produced. So for a 70x70 pixel code, you need a 290x290 pixel native image. That is to say, an original image which is 290x290, not a resized image you created. Then you could place and reduce it to 70x70 pixels in Indesign. Which will essentially increase the DPI upon output. Although, I still feel like #1 is always the better option.

Codes need to be precise. There's no wiggle room to just get it "looking good". A scanner may not read it properly if it's even the slightest bit incorrect.

As for the better term.... vector-like is really non-sensical. Something is either vector or it's not. I'd refer to it as simply non-anti-aliased raster art.

share|improve this answer
Thanks for the answer! In this case I have full control over the code generating application, so I'll be able to adjust it to output an image according to my needs (higher res or vector). Regarding the term, my use of "vector" was simply referring to its property as losslessly upscaling - "non-anti-aliased raster art" is most definitely a clearer term. –  Simon Jan 28 '13 at 15:35

You're simply resizing a raster image without any interpolation. Another way to put it is that you are 'stretching the pixels'.

Not sure what the better term is, but 'vector' doesn't make much sense in this context.

As for your workflow, it makes sense. In theory, you should be able to stretch the image to any size you want in your page layout software and it will remain crisp and sharp, just larger.

The anti-aliasing does seem like an issue, though and one I'd bring up with your printer. Typically, printers will want you to create the PDF using a particular set of settings, so this is a question you should run by them.

share|improve this answer
Thanks for the answer! I agree using the term 'vector' is a bit odd in this context. Rather the typical vector-like properties of losslessly upscaling is what I was getting at. Your comment about anti-aliasing is great! I will look into either verifying with my print provider that it will in deed not be an issue or simply resort to using a higher res/vector image. –  Simon Jan 28 '13 at 15:40

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.