JBGTOPBM(1)

πŸ’… NAME πŸ’…

hiii bestie, welcome to the JBGTOPBM(1) manual page β€” yes, that's the manual name, and this is literally the jbgtopbm glow-up: it's a JBIG1 to portable bitmap file converter. iconic behavior, no cap.


πŸŽ€ SYNOPSIS πŸŽ€

jbgtopbm [ options ] [ input-file | -  [ output-file ]]

✨ DESCRIPTION ✨

okay so picture this: jbgtopbm reads in a JBIG1 bi-level image entity (BIE), decompresses it, and outputs a portable bitmap (PBM) file. slay.

JBIG1 is a highly effective lossless compression algorithm for bi-level images (one bit per pixel), and it's particularly suitable for scanned document pages. literally built for the scanned-doc aesthetic.

A JBIG1 encoded image can be stored in several resolutions in one or several BIEs. All resolution layers except the lowest one are stored efficiently as differences to the next lower resolution layer. the way that's efficient? obsessed.

Options -x and -y can be used to stop the decompression at a specified maximal output image size. With option -m the input file can consist of multiple concatenated BIEs which contain different increasing resolution layers of the same image. multitasking queen.

If more than one bit per pixel is stored in the JBIG1 file, then a PGM file will be produced. plot twist, but make it PGM.


🌸 OPTIONS 🌸

  • - β€” a single hyphen instead of an input file name will cause jbgtopbm to read the data from standard input instead of from a file. stream it, bestie ✨
  • -x number β€” decode only up to the largest resolution layer that is still not more than number pixels wide. If no such resolution layer exists, then use the smallest one available. width check: passed πŸ’…
  • -y number β€” decode only up to the largest resolution layer that is still not more than number pixels high. If no such resolution layer exists, then use the smallest one available. Options -x and -y can also be used together, in which case the largest layer that satisfies both limits will be selected. height check: also passed 🫢
  • -m β€” process multiple concatenated BIEs. If there are bytes left after the final SDE in the first BIE, then with this option jbgtopbm will attempt to decode these as the start of another BIE that may contain higher resolution data. Normally, any remaining bytes will generate a warning message. more BIE, more drama 😭
  • -b β€” use binary values instead of Gray code words in order to decode pixel values from multiple bit planes. This option has only an effect if the input has more than one bit plane and a PGM output file is produced. Note that the decoder has to be used in the same mode as the encoder and cannot determine from the BIE whether Gray or binary code words were used by the encoder. decoder said "i don't know her" πŸ’€
  • -d β€” diagnose a single BIE. With this option, jbgtopbm will print a summary of the header information found in the input file, followed by a list of all PSCD and ESC marker sequences encountered until the end of the file is reached. detective mode: activated πŸ”
  • -p number β€” if the input contains multiple bit planes, then extract only the specified single plane as a PBM file. The first plane has number 0. zero-indexed, naturally πŸ‘‘

πŸ’€ BUGS πŸ’€

Using standard input and standard output for binary data works only on systems where there is no difference between binary and text streams (e.g., Unix). On other systems (e.g., Windows), using standard input or standard output may cause control characters like CR or LF to be inserted or deleted, which will damage the binary data. bestie, do not let CR/LF eat your binary data, i'm begging 😭

🌈 STANDARDS 🌈

This program implements the JBIG1 image coding algorithm as specified in international standard ISO/IEC 11544:1993 and ITU-T Recommendation T.82(1993). standards? she has them. periodt.


πŸ‘‘ AUTHOR πŸ‘‘

Markus Kuhn wrote JBIG-KIT, which includes jbgtopbm. king behavior, honestly.


πŸ¦‹ SEE ALSO πŸ¦‹


mwah πŸ’‹ this cute little sign-off is the footer vibe: source/version is the General Commands Manual, dated 2026-10-09, and that's the whole JBGTOPBM(1) situation. xoxo πŸŽ€

πŸ“¦ where this page comes from