An empty string in the charset tag (0008,0005) indicate the default charset, but Imebra skips empty string in 0008,0005
Issue #340
closed
In the following code:
// We found the charsets list
if(tagId == 0x0008 && tagSubId == 0x0005)
{
std::shared_ptr<handlers::readingDataHandler> charsetsHandler(pDataSet->getReadingDataHandler(0x0008, 0, 0x0005, 0));
charsetsList_t charsets;
for(size_t componentId(0); componentId != charsetsHandler->getSize(); ++componentId)
{
const std::string charset(charsetsHandler->getString(componentId));
if(!charset.empty())
{
charsets.push_back(charset);
}
}
pDataSet->setCharsetsList(charsets);
}
replace the check for empty string with a push of the default charset.
Comments (8)
-
reporter -
reporter Addresses
#340. Add a dataset method that return the list of used charsets.→ <<cset 73f6a6fa8e24>>
-
reporter Addresses
#340. When loading a dataset replace empty charsets with "ISO_IR 6"→ <<cset f73010abdbed>>
-
reporter Addresses
#340. Test used charsets when creating a dataset with an empty charset string.→ <<cset d5ffd825fa9e>>
-
reporter Addresses
#340. Added a method returning the default DICOM charset "ISO_IR 6"→ <<cset 3935aaa01b47>>
-
reporter Addresses
#340. Updated changes log.→ <<cset 42884195fcb2>>
-
reporter - changed status to resolved
Resolves
#340(Empty charset string means ISO_IR 6) as per SOP FIXBUG/2→ <<cset 81f542ce918a>>
-
reporter - changed status to closed
- Log in to comment
Addresses
#340. When normalizing an empty charset name return the default one.→ <<cset 21b978e0d58f>>