Mercurial > hg > orthanc
diff Core/DicomFormat/DicomIntegerPixelAccessor.cpp @ 465:7a966b440f19
signed images to PNG
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 12 Jul 2013 11:15:27 +0200 |
parents | 5987dd8e0776 |
children | 2890721b0f57 |
line wrap: on
line diff
--- a/Core/DicomFormat/DicomIntegerPixelAccessor.cpp Fri Jul 12 10:37:31 2013 +0200 +++ b/Core/DicomFormat/DicomIntegerPixelAccessor.cpp Fri Jul 12 11:15:27 2013 +0200 @@ -245,7 +245,8 @@ if (v & signMask_) { // Signed value - return -static_cast<int32_t>(v & mask_); + // http://en.wikipedia.org/wiki/Two%27s_complement#Subtraction_from_2N + return -static_cast<int32_t>(mask_) + static_cast<int32_t>(v & mask_) - 1; } else {