From c74967160863588178bf45110f578425e1a13362 Mon Sep 17 00:00:00 2001 From: Till Kamppeter Date: Fri, 18 Nov 2022 01:12:03 +0100 Subject: [PATCH] README.md: Remove Braille embossing part. --- README.md | 228 ------------------------------------------------------ 1 file changed, 228 deletions(-) diff --git a/README.md b/README.md index d88e001a7..6c4d05270 100644 --- a/README.md +++ b/README.md @@ -1196,231 +1196,3 @@ foomatic-filters package. It was not overtaken into cups-filters together with foomatic-rip to avoid the introduction of a dependency on Perl. Now it has been re-written in C and so it can be part of cups-filters without introducing new dependencies. - - -#### BRAILLE EMBOSSING - -cups-filters also provides filters and drivers for braille -embossers. It supports: - -- Text on all kinds of embossers with generic support -- Text and graphics on the Index V3 embossers and above. - -This is configured in CUPS just like any printer. Options can then be configured -in the standard printer panel, or passed as -o options to the lp command. - - -##### Text support - -Text can be embossed either with no translation on the computer side (the -embosser will translate), or with translation on the computer side (thanks to -liblouis). It is a matter of running - - lp file.txt - -or even - - lp file.html - lp file.odt - lp file.doc - lp file.rtf - lp file.docx - lp file.pdf - -Important: it is really preferrable to directly print the document files -themselves, and not a pdf output, or printing from the application (which -would first convert to pdf). That way, the braille conversion will have the -proper document structure (paragraphs, titles, footnotes, etc.) to produce good -quality. - - -##### Vector Image support - -Vector images can be embossed by converting them to braille dots. - -This needs the inkscape package installed. Various input formats are then -supported: .svg, .fig, .wmf, .emf, .cgm, .cmx - -The conversion assumes that the input is black-on-white. If it is -white-on-black, the -o Negate option can be used. - -This image support is preferred over the generic image support described below, -which has to reconstruct lines to be embossed. - - -##### Image support - -Images can be embossed by converting them to braille dots. - -The orientation of the image can be controlled. By default it will be rotate to -fit the image orientation, i.e. it will be rotate by 90 degree if it is wider -than high and the paper is higher than wide, or if vice-versa. Other rotation -modes are provided. - -By default, the image will be resized to fit the size of the paper. Disabling -the resize (fitplot set to No) will crop the image to the paper size. This is -useful for instance when a carefully-drawn image was designed especially for -embossing, and thus its pixels should exactly match with braille dots. In such -case, edge detection should very probably be disabled too. - -The image can be processed for edge detection. When no processing is done (edge -detection is configured to "None"), the dark pixels are embossed if the Negate -option is off, or the light pixels are embossed if the Negate option is on. When -edge processing is done, only the edges of the images will be embossed. The -Basic and the Canny algorithms bring differing results. The Basic algorithm -can be tuned thanks to the edge factor only. The Canny algorithm can also be -tuned: increasing the Upper value will reduce the amount of detected edges (and -vice-versa), increasing the Lower value will reduce the lengths of the detected -edges (and vice-versa). The Radius and Sigma parameter control the blurring -performed before edge detection, to improve the result; the Radius parameter -controls how large blurring should be performed, setting it to zero requests -autodetection; the Sigma parameter determines how strongly blurring should be -performed. - -A lot of images formats are support, so one can just run - - lp file.png - lp file.gif - lp file.jpg - ... - -Here are complete examples for controlling the processing (all options can be -omitted, the default values are shown here): - -Emboss the image without edge detection, as black on white or white on black: - - lp -o "Edge=None" file.png - lp -o "Edge=None Negate" file.png - -Emboss the image with edge detection, the default tuning parameters are set -here: - - lp -o "Edge=Edge EdgeFactor=1" file.png - lp -o "Edge=Canny CannyRadius=0 CannySigma=1 CannyLower=10 CannyUpper=30" file.png - -Emboss the image as it is, without any resize or edge detection, as black on -white or white on black: - - lp -o "nofitplot Edge=None" file.png - lp -o "nofitplot Edge=None Negate" file.png - - -##### Generic embosser support - -It should be possible to make all embossers use the generic driver. For this to -work, one has to: - -- configure the embosser itself so that it uses an MIT/NABCC/BRF braille table -- add in CUPS a printer with the "Generic" manufacturer and "Braille embosser" - model -- configure CUPS options according to the embosser settings, so that CUPS knows - the page size, braille spacing, etc. - -The generic driver can emboss text, as well as images, but images will probably -be distorted by the Braille interline spacing. - - -##### Index embossers support - -Supported models: - -- Basic-S V3/4 -- Basic-D V3/4 -- Everest-D V3/4 -- 4-Waves PRO V3 -- 4X4 PRO V3 -- Braille Box V4 - -Index V3 embosser support has been well tested. It supports both text and -graphics mode. Embossers with firmware 10.30 and above can be easily configured -from CUPS (paper dimension, braille spacing, etc.). - -Index V4 embosser support has not been tested, but is very close to V3 support, -so it is probably working fine already. Feedback would be very welcome. - -To connect an Index embosser through Ethernet, gather its IP adress, select the -"AppSocket/HP JetDirect" network printer protocol, and set -socket://the.embosser.IP.address:9100 as Connection URL. - -The density of dots for images can easily be chosen from the command line, for -instance: - - lp -o "GraphicDotDistance=160" file.png - -to select 1.6mm dots spacing - -Troubleshooting: if your embosser starts every document with spurious -"TM0,BM0,IM0,OM0" or "TM0,BI0", your embosser is most probably still using an -old 10.20 firmware. Please either reflash the embosser with a firmware version -10.30 or above, or select the 10.20 firmware version in the "index" panel of the -cups printer options. - - -##### Braille output options - -The output can be finely tuned from the standard printing panel, or from the -command-line, the following example selects translation tables for French and -Greek, with 2.5mm dot spacing and 5mm line spacing. All options can be omitted, -the default values are shown here. - - lp -o "LibLouis=fr-fr-g1 LibLouis2=gr-gr-g1 TextDotDistance=250 LineSpacing=500" file.txt - - -##### Reworking output before embossing - -One may want to check and modify the .brf or .ubrl output before sending it to -the embosser. This can be achieved by first generating the .brf file: - - /usr/sbin/cupsfilter -m application/vnd.cups-brf -p /etc/cups/ppd/yourprinter.ppd yourdocument.txt > ~/test.brf - -One can choose a ppd file and additionally pass -o options to control the -generated output. One can then modify the .brf file with a text editor. One can -then emboss it: - - lp -o document-format=application/vnd.cups-brf ~/test.brf - - -The same can be achieved for images: - - /usr/sbin/cupsfilter -m image/vnd.cups-ubrl -p /etc/cups/ppd/yourprinter.ppd yourimage.png > ~/test.ubrl - - lp -o document-format=image/vnd.cups-ubrl ~/test.ubrl - - -##### BRF file output - -One can generate BRF files by adding a virtual BRF printer. - -When creating it in the cups interface, choose the CUPS-BRF local printer, -select the Generic maker, and choose the Generic Braille embosser model. - -Printing to the resulting printer will generate a .brf file in a BRF -subdirectory of the home directory. - - -##### UBRL file output - -One can generate Unicode braille files, not useful for embossing, but which can -be easily looked at by sighted people to check for the output. - -In the cups interface, create a printer with the CUPS-BRF local printer, -the Generic maker, and choose the Generic UBRL generator model. - -Printing to the resulting printer will generate a .brf file in a BRF -subdirectory of the home directory. - - -##### Remark about the source code - -The file filter/braille/drivers/index/ubrlto4dot.c is used to generate -the translation table in -filter/braille/drivers/index/imageubrltoindexv[34]. It is included as -"source code" for these two files, even if actually running the -generation in the Makefile is more tedious than really useful. - - -##### TODO - -- Test whether one wants to negate, e.g. to emboss as few dots as possible -- textubrltoindex when liblouis tools will be able to emit 8dot braille - -- 2.47.3