QR Code in solidworks

I was looking for easy way to get QR code in 3D model within solidworks. Here’s one recipe hot to do it.

test  qr3dqrfinal

First, get to some online QR code generators, which could export vector graphics, e.g. PNG, SVG, EPS, or similar format. I picked up the first link via google search: http://qrcode.littleidiot.be/

Let’s put some simple “test” into QR code via SVG file. It is obvious, the QR generator compose the QR code with small squares at their proper positions. The squares grid and size are equal, which may cause troubles when used in extrude feature within solidworks. To avoid that, squares should be scaled individually. Open the SVG file in inkscape and scale all squares:

  1. select the drawing
  2. ungroup
  3. select scale 95% for width and height
  4. check the option “Apply to each object separately” and press Apply



The QR code should look something like this (with gaps between squares):



The preparation is finished by saving the drawing into DXF file.

Now start new part by extruding a square. Place DXF on top face and move the drawing to origin:



Extrude cut to e.g. 1mm:



Repeat DXF insertion once again and align the drawing to the origin (or alternatively, convert the extrude edges into line entities):



Use the drawing to cut extrude with the thin feature, which cut the walls away. Change the solid color to black and top surface to white:




  1. Matt says:

    I’ve been trying this for a few hours now. I saved my QR code as a DXF file and inserted to the face of my extruded square, I went through the insertion wizard but nothing seems to happen??

  2. Bill says:

    I tried this as well, inkscape generates a file that is 0kb, unusable.

    • Bill says:

      Inkscape has received additional data from the script executed. The script did not return an error, but this may indicate the results will not be as expected.

      Traceback (most recent call last):

      File “dxf_outlines.py”, line 295, in


      File “C:\Program Files (x86)\Inkscape\share\extensions\inkex.py”, line 221, in affect


      File “dxf_outlines.py”, line 286, in effect


      File “dxf_outlines.py”, line 257, in process_group


      File “dxf_outlines.py”, line 239, in process_clone

      self.process_shape(refnode, self.groupmat[-1])

      File “dxf_outlines.py”, line 186, in process_shape

      x = float(node.get(‘x’))

      TypeError: float() argument must be a string or a number