Hello,
Braille embossers may support only 6dots printing, so there is a need
for 6dot unicode braille and iso braille formats. The attached patch
adds .ubrl6 and .isobrl6 formats for that.
Samuel
Braille 6dot formats support
Re: Braille 6dot formats support
Code: Select all
--- a/coders/braille.c
+++ b/coders/braille.c
@@ -108,12 +108,24 @@ ModuleExport size_t RegisterBRAILLEImage
entry->description=AcquireString("Unicode Text format");
entry->module=AcquireString("BRAILLE");
(void) RegisterMagickInfo(entry);
+ entry=SetMagickInfo("UBRL6");
+ entry->encoder=(EncodeImageHandler *) WriteBRAILLEImage;
+ entry->adjoin=MagickFalse;
+ entry->description=AcquireString("Unicode Text format 6dot");
+ entry->module=AcquireString("BRAILLE");
+ (void) RegisterMagickInfo(entry);
entry=SetMagickInfo("ISOBRL");
entry->encoder=(EncodeImageHandler *) WriteBRAILLEImage;
entry->adjoin=MagickFalse;
entry->description=AcquireString("ISO/TR 11548-1 format");
entry->module=AcquireString("BRAILLE");
(void) RegisterMagickInfo(entry);
+ entry=SetMagickInfo("ISOBRL6");
+ entry->encoder=(EncodeImageHandler *) WriteBRAILLEImage;
+ entry->adjoin=MagickFalse;
+ entry->description=AcquireString("ISO/TR 11548-1 format 6dot");
+ entry->module=AcquireString("BRAILLE");
+ (void) RegisterMagickInfo(entry);
return(MagickImageCoderSignature);
}
^L
@@ -140,7 +152,9 @@ ModuleExport void UnregisterBRAILLEImage
{
(void) UnregisterMagickInfo("BRF");
(void) UnregisterMagickInfo("UBRL");
+ (void) UnregisterMagickInfo("UBRL6");
(void) UnregisterMagickInfo("ISOBRL");
+ (void) UnregisterMagickInfo("ISOBRL6");
}
^L
/*
@@ -211,11 +225,20 @@ static MagickBooleanType WriteBRAILLEIma
assert(image->signature == MagickSignature);
if (LocaleCompare(image_info->magick, "UBRL") == 0)
unicode=1;
- else
- if (LocaleCompare(image_info->magick, "ISOBRL") == 0)
+ 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;
- else
- cell_height=3;
+ cell_height = 3;
+ }
+ else
+ cell_height=3;
if (image->debug != MagickFalse)
(void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename);
status=OpenBlob(image_info,image,WriteBinaryBlobMode,&image->exception);
--- a/magick/coder.c
+++ b/magick/coder.c
@@ -143,6 +143,7 @@ static const CoderMapInfo
{ "IPTCTEXT", "META" },
{ "IPTCWTEXT", "META" },
{ "ISOBRL", "BRAILLE" },
+ { "ISOBRL6", "BRAILLE" },
{ "JBG", "JBIG" },
{ "JNG", "PNG" },
{ "JPC", "JP2" },
@@ -214,6 +215,7 @@ static const CoderMapInfo
{ "TIF", "TIFF" },
{ "TTC", "TTF" },
{ "UBRL", "BRAILLE" },
+ { "UBRL6", "BRAILLE" },
{ "VDA", "TGA" },
{ "VST", "TGA" },
{ "WIZARD", "MAGICK" },
Re: Braille 6dot formats support
(Mmm, not the best way to submit a patch of course, but I couldn't find how to create an account on http://git.imagemagick.org/)
Re: Braille 6dot formats support
We have not opened account registration at our main server. You can use our mirror at github or gitlab to send us a pull request. It would make us happy if you use our code conventions and write 'cell_height = 3' as 'cell_height=3'
We can also integrate your patch manually if you don't want to use github or gitlab.
We can also integrate your patch manually if you don't want to use github or gitlab.
Re: Braille 6dot formats support
I have pushed a commit to http://people.debian.org/~sthibault/ImageMagick
Re: Braille 6dot formats support
Your patch has been applied to our GIT repository. Thanks!