Printing "True Size" Images
We are often asked how to persuade a DICOM printer to print images (normally plain radiographs) "TRUE" size. This is normally possible (depending on the capabilities of the printer) but is harder than expected, as the DICOM standard requires most of the relevent attributes (pixel size etc.) to be removed from an image before it is sent to the printer :-( The problem is compounded by the fact that the default behaviour of almost all printers is "scale to fit" - fitting the image as best they can into the space available on the film.
Therefore, the only way that DICOM allows you to specify any explicit size is by using the "Requested Size" property of the Basic_Image_Box, which is (oddly) the width of the image (in mm), leaving the printer to deduce a matching height. The steps required for true size printing are therefore:
- Calculate the true width of your image (pixel size * number of pixels)
- Set the value into the Requested Size property of the image box
- Set any other values required for your articular printer to persuade it not to scale the image to fit
Using DicomObjects, this is done as follows:
Step 1:
'This is for plain films - use 0028,0030 (Pixel Spacing) for CT/MRI etc PixelSizes = Image.Attributes(&h0018, &h1164).Value
'Bizarre as it may seem, width is the second value here! TrueWidth = PixelSizes(2) * Image.SizeX
Step 2:
PrinterObject.ImageBox.Attributes.Add &h&h2020, &h0030, TrueWidth
Step 3:
PrinterObject.ImageBox.Attributes.Add &h2020, &h0040, "CROP" PrinterObject.ImageBox.Attributes.Add &h2010, &h0060, "CUBIC"
In practice, DICOM printers are variable in what they need for these last few lines, designed to allow "non-best-fit" printing, and some of the attributes may need to be applied to the FilmBox instead of the ImageBox (DICOM theoretically allows both), so if at first you don't succeed, then please try some combination of the values below (and edit this page to reflect your experience with a particular printer!)
Alternative values for 2020, 0040Â : Requested Decimate / Crop Behaviour
- CROP
- DECIMATE
Alternative values for 2010, 0060, "NONE"Â : Magnification Type
- REPLICATE
- BILINEAR
- CUBIC
- NONE
Of course, the irony of all this work is that plain radiographs are never really "true size" - as they are magnified "shadows" of the real anatomy - refered to in radiology as "Geometric_Magnification"!