diff options
author | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@localhost> | 2011-05-03 11:25:13 +0000 |
commit | 458120dd40db6b4df55a4e96b650e16798ef06a0 (patch) | |
tree | 8f82685be24fef97e715c6f5ca4c68d34d5074ee /sys/src/cmd/python/Doc/lib/libimageop.tex | |
parent | 3a742c699f6806c1145aea5149bf15de15a0afd7 (diff) |
add hg and python
Diffstat (limited to 'sys/src/cmd/python/Doc/lib/libimageop.tex')
-rw-r--r-- | sys/src/cmd/python/Doc/lib/libimageop.tex | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/sys/src/cmd/python/Doc/lib/libimageop.tex b/sys/src/cmd/python/Doc/lib/libimageop.tex new file mode 100644 index 000000000..0f732bf67 --- /dev/null +++ b/sys/src/cmd/python/Doc/lib/libimageop.tex @@ -0,0 +1,100 @@ +\section{\module{imageop} --- + Manipulate raw image data} + +\declaremodule{builtin}{imageop} +\modulesynopsis{Manipulate raw image data.} + + +The \module{imageop} module contains some useful operations on images. +It operates on images consisting of 8 or 32 bit pixels stored in +Python strings. This is the same format as used by +\function{gl.lrectwrite()} and the \refmodule{imgfile} module. + +The module defines the following variables and functions: + +\begin{excdesc}{error} +This exception is raised on all errors, such as unknown number of bits +per pixel, etc. +\end{excdesc} + + +\begin{funcdesc}{crop}{image, psize, width, height, x0, y0, x1, y1} +Return the selected part of \var{image}, which should be +\var{width} by \var{height} in size and consist of pixels of +\var{psize} bytes. \var{x0}, \var{y0}, \var{x1} and \var{y1} are like +the \function{gl.lrectread()} parameters, i.e.\ the boundary is +included in the new image. The new boundaries need not be inside the +picture. Pixels that fall outside the old image will have their value +set to zero. If \var{x0} is bigger than \var{x1} the new image is +mirrored. The same holds for the y coordinates. +\end{funcdesc} + +\begin{funcdesc}{scale}{image, psize, width, height, newwidth, newheight} +Return \var{image} scaled to size \var{newwidth} by \var{newheight}. +No interpolation is done, scaling is done by simple-minded pixel +duplication or removal. Therefore, computer-generated images or +dithered images will not look nice after scaling. +\end{funcdesc} + +\begin{funcdesc}{tovideo}{image, psize, width, height} +Run a vertical low-pass filter over an image. It does so by computing +each destination pixel as the average of two vertically-aligned source +pixels. The main use of this routine is to forestall excessive +flicker if the image is displayed on a video device that uses +interlacing, hence the name. +\end{funcdesc} + +\begin{funcdesc}{grey2mono}{image, width, height, threshold} +Convert a 8-bit deep greyscale image to a 1-bit deep image by +thresholding all the pixels. The resulting image is tightly packed and +is probably only useful as an argument to \function{mono2grey()}. +\end{funcdesc} + +\begin{funcdesc}{dither2mono}{image, width, height} +Convert an 8-bit greyscale image to a 1-bit monochrome image using a +(simple-minded) dithering algorithm. +\end{funcdesc} + +\begin{funcdesc}{mono2grey}{image, width, height, p0, p1} +Convert a 1-bit monochrome image to an 8 bit greyscale or color image. +All pixels that are zero-valued on input get value \var{p0} on output +and all one-value input pixels get value \var{p1} on output. To +convert a monochrome black-and-white image to greyscale pass the +values \code{0} and \code{255} respectively. +\end{funcdesc} + +\begin{funcdesc}{grey2grey4}{image, width, height} +Convert an 8-bit greyscale image to a 4-bit greyscale image without +dithering. +\end{funcdesc} + +\begin{funcdesc}{grey2grey2}{image, width, height} +Convert an 8-bit greyscale image to a 2-bit greyscale image without +dithering. +\end{funcdesc} + +\begin{funcdesc}{dither2grey2}{image, width, height} +Convert an 8-bit greyscale image to a 2-bit greyscale image with +dithering. As for \function{dither2mono()}, the dithering algorithm +is currently very simple. +\end{funcdesc} + +\begin{funcdesc}{grey42grey}{image, width, height} +Convert a 4-bit greyscale image to an 8-bit greyscale image. +\end{funcdesc} + +\begin{funcdesc}{grey22grey}{image, width, height} +Convert a 2-bit greyscale image to an 8-bit greyscale image. +\end{funcdesc} + +\begin{datadesc}{backward_compatible} +If set to 0, the functions in this module use a non-backward +compatible way of representing multi-byte pixels on little-endian +systems. The SGI for which this module was originally written is a +big-endian system, so setting this variable will have no effect. +However, the code wasn't originally intended to run on anything else, +so it made assumptions about byte order which are not universal. +Setting this variable to 0 will cause the byte order to be reversed on +little-endian systems, so that it then is the same as on big-endian +systems. +\end{datadesc} |