diff --git a/MagickCore/coder.c b/MagickCore/coder.c index 32a15ffb55..6ad82a5ee9 100644 --- a/MagickCore/coder.c +++ b/MagickCore/coder.c @@ -154,6 +154,7 @@ static const CoderMapInfo { "IPTCTEXT", "META" }, { "IPTCWTEXT", "META" }, { "ISOBRL", "BRAILLE" }, + { "ISOBRL6", "BRAILLE" }, { "JBG", "JBIG" }, { "JNG", "PNG" }, { "JPC", "JP2" }, @@ -238,6 +239,7 @@ static const CoderMapInfo { "TIF", "TIFF" }, { "TTC", "TTF" }, { "UBRL", "BRAILLE" }, + { "UBRL6", "BRAILLE" }, { "VDA", "TGA" }, { "VST", "TGA" }, { "WIZARD", "MAGICK" }, diff --git a/coders/braille.c b/coders/braille.c index a80b4f67b2..75d50a754f 100644 --- a/coders/braille.c +++ b/coders/braille.c @@ -104,10 +104,18 @@ ModuleExport size_t RegisterBRAILLEImage(void) entry->encoder=(EncodeImageHandler *) WriteBRAILLEImage; entry->flags^=CoderAdjoinFlag; (void) RegisterMagickInfo(entry); + entry=AcquireMagickInfo("BRAILLE","UBRL6","Unicode Text format 6dot"); + entry->encoder=(EncodeImageHandler *) WriteBRAILLEImage; + entry->flags^=CoderAdjoinFlag; + (void) RegisterMagickInfo(entry); entry=AcquireMagickInfo("BRAILLE","ISOBRL","ISO/TR 11548-1 format"); entry->encoder=(EncodeImageHandler *) WriteBRAILLEImage; entry->flags^=CoderAdjoinFlag; (void) RegisterMagickInfo(entry); + entry=AcquireMagickInfo("BRAILLE","ISOBRL6","ISO/TR 11548-1 format 6dot"); + entry->encoder=(EncodeImageHandler *) WriteBRAILLEImage; + entry->flags^=CoderAdjoinFlag; + (void) RegisterMagickInfo(entry); return(MagickImageCoderSignature); } @@ -134,7 +142,9 @@ ModuleExport void UnregisterBRAILLEImage(void) { (void) UnregisterMagickInfo("BRF"); (void) UnregisterMagickInfo("UBRL"); + (void) UnregisterMagickInfo("UBRL6"); (void) UnregisterMagickInfo("ISOBRL"); + (void) UnregisterMagickInfo("ISOBRL6"); } /* @@ -204,11 +214,20 @@ static MagickBooleanType WriteBRAILLEImage(const ImageInfo *image_info, assert(image->signature == MagickCoreSignature); if (LocaleCompare(image_info->magick, "UBRL") == 0) unicode=1; - else - if (LocaleCompare(image_info->magick, "ISOBRL") == 0) - iso_11548_1=1; - else + else if (LocaleCompare(image_info->magick, "UBRL6") == 0) + { + unicode=1; cell_height=3; + } + else if (LocaleCompare(image_info->magick, "ISOBRL") == 0) + iso_11548_1=1; + else if (LocaleCompare(image_info->magick, "ISOBRL6") == 0) + { + iso_11548_1=1; + cell_height=3; + } + else + cell_height=3; if (image->debug != MagickFalse) (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); assert(exception != (ExceptionInfo *) NULL);