Forking PIL

This commit is contained in:
Alex Clark 2010-07-30 22:52:47 -04:00
parent b47a462e47
commit 9a640e3157
286 changed files with 58949 additions and 0 deletions

11
BUILDME Normal file
View File

@ -0,0 +1,11 @@
# $Id$
# quick build (for lazy programmers). for more information on the
# build process, see the README file.
if [ "$1" = "clean" ]; then
python setup.py clean
rm -f *.so PIL/*.so
fi
python setup.py build_ext -i
python selftest.py

1767
CHANGES Normal file

File diff suppressed because it is too large Load Diff

299
CONTENTS Normal file
View File

@ -0,0 +1,299 @@
Imaging/README
Imaging/CHANGES
Imaging/CONTENTS
Imaging/MANIFEST
Imaging/BUILDME
Imaging/setup.py
Imaging/selftest.py
Imaging/doctest.py
Imaging/libImaging/Imaging.h
Imaging/libImaging/ImDib.h
Imaging/libImaging/ImPlatform.h
Imaging/libImaging/Quant.h
Imaging/libImaging/QuantHash.h
Imaging/libImaging/QuantHeap.h
Imaging/libImaging/QuantDefines.h
Imaging/libImaging/QuantTypes.h
Imaging/libImaging/Access.c
Imaging/libImaging/Antialias.c
Imaging/libImaging/Bands.c
Imaging/libImaging/Blend.c
Imaging/libImaging/Chops.c
Imaging/libImaging/Convert.c
Imaging/libImaging/ConvertYCbCr.c
Imaging/libImaging/Copy.c
Imaging/libImaging/Crc32.c
Imaging/libImaging/Crop.c
Imaging/libImaging/Dib.c
Imaging/libImaging/Draw.c
Imaging/libImaging/Effects.c
Imaging/libImaging/Except.c
Imaging/libImaging/File.c
Imaging/libImaging/Fill.c
Imaging/libImaging/Filter.c
Imaging/libImaging/Geometry.c
Imaging/libImaging/GetBBox.c
Imaging/libImaging/Histo.c
Imaging/libImaging/Matrix.c
Imaging/libImaging/ModeFilter.c
Imaging/libImaging/Negative.c
Imaging/libImaging/Offset.c
Imaging/libImaging/Pack.c
Imaging/libImaging/Palette.c
Imaging/libImaging/Paste.c
Imaging/libImaging/Point.c
Imaging/libImaging/Quant.c
Imaging/libImaging/QuantHash.c
Imaging/libImaging/QuantHeap.c
Imaging/libImaging/RankFilter.c
Imaging/libImaging/Storage.c
Imaging/libImaging/Unpack.c
Imaging/libImaging/UnpackYCC.c
Imaging/libImaging/UnsharpMask.c
Imaging/libImaging/Bit.h
Imaging/libImaging/Gif.h
Imaging/libImaging/Jpeg.h
Imaging/libImaging/Lzw.h
Imaging/libImaging/Raw.h
Imaging/libImaging/Zip.h
Imaging/libImaging/BitDecode.c
Imaging/libImaging/EpsEncode.c
Imaging/libImaging/FliDecode.c
Imaging/libImaging/GifDecode.c
Imaging/libImaging/GifEncode.c
Imaging/libImaging/HexDecode.c
Imaging/libImaging/JpegDecode.c
Imaging/libImaging/JpegEncode.c
Imaging/libImaging/LzwDecode.c
Imaging/libImaging/MspDecode.c
Imaging/libImaging/PackDecode.c
Imaging/libImaging/PcdDecode.c
Imaging/libImaging/PcxEncode.c
Imaging/libImaging/PcxDecode.c
Imaging/libImaging/RawDecode.c
Imaging/libImaging/RawEncode.c
Imaging/libImaging/SunRleDecode.c
Imaging/libImaging/TgaRleDecode.c
Imaging/libImaging/XbmDecode.c
Imaging/libImaging/XbmEncode.c
Imaging/libImaging/ZipDecode.c
Imaging/libImaging/ZipEncode.c
Imaging/_imaging.c
Imaging/decode.c
Imaging/encode.c
Imaging/display.c
Imaging/map.c
Imaging/outline.c
Imaging/path.c
Imaging/_imagingtk.c
Imaging/_imagingft.c
Imaging/_imagingcms.c
Imaging/_imagingmath.c
Imaging/PIL.pth
Imaging/PIL/__init__.py
Imaging/PIL/ArgImagePlugin.py
Imaging/PIL/BdfFontFile.py
Imaging/PIL/BmpImagePlugin.py
Imaging/PIL/BufrStubImagePlugin.py
Imaging/PIL/ContainerIO.py
Imaging/PIL/CurImagePlugin.py
Imaging/PIL/DcxImagePlugin.py
Imaging/PIL/EpsImagePlugin.py
Imaging/PIL/ExifTags.py
Imaging/PIL/FitsStubImagePlugin.py
Imaging/PIL/FliImagePlugin.py
Imaging/PIL/FontFile.py
Imaging/PIL/FpxImagePlugin.py
Imaging/PIL/GbrImagePlugin.py
Imaging/PIL/GdImageFile.py
Imaging/PIL/GifImagePlugin.py
Imaging/PIL/GimpGradientFile.py
Imaging/PIL/GimpPaletteFile.py
Imaging/PIL/GribStubImagePlugin.py
Imaging/PIL/Hdf5StubImagePlugin.py
Imaging/PIL/IcoImagePlugin.py
Imaging/PIL/IcnsImagePlugin.py
Imaging/PIL/Image.py
Imaging/PIL/ImageChops.py
Imaging/PIL/ImageCms.py
Imaging/PIL/ImageColor.py
Imaging/PIL/ImageDraw.py
Imaging/PIL/ImageDraw2.py
Imaging/PIL/ImageEnhance.py
Imaging/PIL/ImageFile.py
Imaging/PIL/ImageFileIO.py
Imaging/PIL/ImageFilter.py
Imaging/PIL/ImageFont.py
Imaging/PIL/ImageGL.py
Imaging/PIL/ImageGrab.py
Imaging/PIL/ImageMath.py
Imaging/PIL/ImageMode.py
Imaging/PIL/ImageOps.py
Imaging/PIL/ImagePalette.py
Imaging/PIL/ImagePath.py
Imaging/PIL/ImageQt.py
Imaging/PIL/ImageSequence.py
Imaging/PIL/ImageShow.py
Imaging/PIL/ImageStat.py
Imaging/PIL/ImageTk.py
Imaging/PIL/ImageTransform.py
Imaging/PIL/ImageWin.py
Imaging/PIL/ImImagePlugin.py
Imaging/PIL/ImtImagePlugin.py
Imaging/PIL/IptcImagePlugin.py
Imaging/PIL/JpegImagePlugin.py
Imaging/PIL/McIdasImagePlugin.py
Imaging/PIL/MicImagePlugin.py
Imaging/PIL/MpegImagePlugin.py
Imaging/PIL/MspImagePlugin.py
Imaging/PIL/OleFileIO.py
Imaging/PIL/PaletteFile.py
Imaging/PIL/PalmImagePlugin.py
Imaging/PIL/PcdImagePlugin.py
Imaging/PIL/PcfFontFile.py
Imaging/PIL/PcxImagePlugin.py
Imaging/PIL/PdfImagePlugin.py
Imaging/PIL/PixarImagePlugin.py
Imaging/PIL/PngImagePlugin.py
Imaging/PIL/PpmImagePlugin.py
Imaging/PIL/PsdImagePlugin.py
Imaging/PIL/PSDraw.py
Imaging/PIL/SgiImagePlugin.py
Imaging/PIL/SpiderImagePlugin.py
Imaging/PIL/SunImagePlugin.py
Imaging/PIL/TarIO.py
Imaging/PIL/TgaImagePlugin.py
Imaging/PIL/TiffImagePlugin.py
Imaging/PIL/TiffTags.py
Imaging/PIL/WalImageFile.py
Imaging/PIL/WmfImagePlugin.py
Imaging/PIL/XbmImagePlugin.py
Imaging/PIL/XpmImagePlugin.py
Imaging/PIL/XVThumbImagePlugin.py
Imaging/Docs/index.html
Imaging/Docs/effbot.css
Imaging/Docs/pythondoc-PIL.ArgImagePlugin.html
Imaging/Docs/pythondoc-PIL.BdfFontFile.html
Imaging/Docs/pythondoc-PIL.BmpImagePlugin.html
Imaging/Docs/pythondoc-PIL.BufrStubImagePlugin.html
Imaging/Docs/pythondoc-PIL.ContainerIO.html
Imaging/Docs/pythondoc-PIL.CurImagePlugin.html
Imaging/Docs/pythondoc-PIL.DcxImagePlugin.html
Imaging/Docs/pythondoc-PIL.EpsImagePlugin.html
Imaging/Docs/pythondoc-PIL.ExifTags.html
Imaging/Docs/pythondoc-PIL.FitsStubImagePlugin.html
Imaging/Docs/pythondoc-PIL.FliImagePlugin.html
Imaging/Docs/pythondoc-PIL.FontFile.html
Imaging/Docs/pythondoc-PIL.FpxImagePlugin.html
Imaging/Docs/pythondoc-PIL.GbrImagePlugin.html
Imaging/Docs/pythondoc-PIL.GdImageFile.html
Imaging/Docs/pythondoc-PIL.GifImagePlugin.html
Imaging/Docs/pythondoc-PIL.GimpGradientFile.html
Imaging/Docs/pythondoc-PIL.GimpPaletteFile.html
Imaging/Docs/pythondoc-PIL.GribStubImagePlugin.html
Imaging/Docs/pythondoc-PIL.Hdf5StubImagePlugin.html
Imaging/Docs/pythondoc-PIL.IcoImagePlugin.html
Imaging/Docs/pythondoc-PIL.IcnsImagePlugin.html
Imaging/Docs/pythondoc-PIL.Image.html
Imaging/Docs/pythondoc-PIL.ImageChops.html
Imaging/Docs/pythondoc-PIL.ImageColor.html
Imaging/Docs/pythondoc-PIL.ImageDraw.html
Imaging/Docs/pythondoc-PIL.ImageEnhance.html
Imaging/Docs/pythondoc-PIL.ImageFile.html
Imaging/Docs/pythondoc-PIL.ImageFileIO.html
Imaging/Docs/pythondoc-PIL.ImageFilter.html
Imaging/Docs/pythondoc-PIL.ImageFont.html
Imaging/Docs/pythondoc-PIL.ImageGL.html
Imaging/Docs/pythondoc-PIL.ImageGrab.html
Imaging/Docs/pythondoc-PIL.ImageOps.html
Imaging/Docs/pythondoc-PIL.ImagePalette.html
Imaging/Docs/pythondoc-PIL.ImagePath.html
Imaging/Docs/pythondoc-PIL.ImageSequence.html
Imaging/Docs/pythondoc-PIL.ImageStat.html
Imaging/Docs/pythondoc-PIL.ImageTk.html
Imaging/Docs/pythondoc-PIL.ImageTransform.html
Imaging/Docs/pythondoc-PIL.ImageWin.html
Imaging/Docs/pythondoc-PIL.ImImagePlugin.html
Imaging/Docs/pythondoc-PIL.ImtImagePlugin.html
Imaging/Docs/pythondoc-PIL.IptcImagePlugin.html
Imaging/Docs/pythondoc-PIL.JpegImagePlugin.html
Imaging/Docs/pythondoc-PIL.McIdasImagePlugin.html
Imaging/Docs/pythondoc-PIL.MicImagePlugin.html
Imaging/Docs/pythondoc-PIL.MpegImagePlugin.html
Imaging/Docs/pythondoc-PIL.MspImagePlugin.html
Imaging/Docs/pythondoc-PIL.OleFileIO.html
Imaging/Docs/pythondoc-PIL.PaletteFile.html
Imaging/Docs/pythondoc-PIL.PalmImagePlugin.html
Imaging/Docs/pythondoc-PIL.PcdImagePlugin.html
Imaging/Docs/pythondoc-PIL.PcfFontFile.html
Imaging/Docs/pythondoc-PIL.PcxImagePlugin.html
Imaging/Docs/pythondoc-PIL.PdfImagePlugin.html
Imaging/Docs/pythondoc-PIL.PixarImagePlugin.html
Imaging/Docs/pythondoc-PIL.PngImagePlugin.html
Imaging/Docs/pythondoc-PIL.PpmImagePlugin.html
Imaging/Docs/pythondoc-PIL.PsdImagePlugin.html
Imaging/Docs/pythondoc-PIL.PSDraw.html
Imaging/Docs/pythondoc-PIL.SgiImagePlugin.html
Imaging/Docs/pythondoc-PIL.SpiderImagePlugin.html
Imaging/Docs/pythondoc-PIL.SunImagePlugin.html
Imaging/Docs/pythondoc-PIL.TarIO.html
Imaging/Docs/pythondoc-PIL.TgaImagePlugin.html
Imaging/Docs/pythondoc-PIL.TiffImagePlugin.html
Imaging/Docs/pythondoc-PIL.TiffTags.html
Imaging/Docs/pythondoc-PIL.WalImageFile.html
Imaging/Docs/pythondoc-PIL.WmfImagePlugin.html
Imaging/Docs/pythondoc-PIL.XbmImagePlugin.html
Imaging/Docs/pythondoc-PIL.XpmImagePlugin.html
Imaging/Docs/pythondoc-PIL.XVThumbImagePlugin.html
Imaging/Scripts/pilconvert.py
Imaging/Scripts/pildriver.py
Imaging/Scripts/pilfile.py
Imaging/Scripts/pilfont.py
Imaging/Scripts/pilprint.py
Imaging/Images/lena.gif
Imaging/Images/lena.png
Imaging/Images/lena.ppm
Imaging/Images/lena.jpg
Imaging/Images/courB08.bdf
Imaging/Images/courB08.pbm
Imaging/Images/courB08.pil
Imaging/Sane/README
Imaging/Sane/CHANGES
Imaging/Sane/setup.py
Imaging/Sane/sanedoc.txt
Imaging/Sane/_sane.c
Imaging/Sane/sane.py
Imaging/Sane/demo_numarray.py
Imaging/Sane/demo_pil.py
Imaging/Scripts/README
Imaging/Scripts/enhancer.py
Imaging/Scripts/explode.py
Imaging/Scripts/gifmaker.py
Imaging/Scripts/painter.py
Imaging/Scripts/player.py
Imaging/Scripts/viewer.py
Imaging/Scripts/thresholder.py
Imaging/Tk/tkImaging.c
Imaging/Tk/install.txt
Imaging/Tk/booster.txt
Imaging/Tk/pilbitmap.txt

118
Docs/effbot.css Normal file
View File

@ -0,0 +1,118 @@
/* effbot.css */
BODY {
font: 100% Georgia, Times, serif;
color: black;
margin: 0px 20px 0px 20px;
}
#effbot-body {
background: white;
padding: 10px 40px 10px 40px;
max-width: 50em;
}
#effbot-menu {
display: none;
}
.adsense {
background: #f8fff8;
border: 1px solid #084;
padding: 10px 4px 4px 4px;
}
.sidebar {
border: 1px solid #000;
float: right; clear: right;
width: 200px;
background: white;
padding: 10px;
margin: 0px -25px 10px 0px;
}
/* visual style */
P {
line-height: 1.3em;
}
CODE, PRE {
font: 100% "Courier New", Courier, Monaco, monospace;
color: #042; margin-left: 20px;
}
H1, H2, H3 {
font-family: Georgia, Times, serif;
color: #084; margin-top: 30px;
}
H1, H2, { border-top: 1px solid #084; }
H4, H5, H6 {
font-family: Georgia, Times, serif;
color: #084; margin-top: 15px;
}
A:link, A:hover { color: #084; }
A:visited { color: #404040; }
UL LI { list-style-type: square; }
.title { margin-bottom: 2px; color: #084; }
.info { font-size: 80%; color: #084; margin-top: 0px; }
.bluebox { color: #084; margin-top: 10px; }
.highlight { background: #cfc; }
.mark { color: #084; }
.small { font-size: 80%; }
.display { background: #eee; padding: 20px; }
.note {
background: #efe;
border-top: 1px solid #084;
border-bottom: 1px solid #084;
padding: 2px 20px;
}
.example {
border-top: medium solid #084;
border-bottom: medium solid #084;
padding: 5px;
}
.figure {
border-top: medium solid #084;
border-bottom: medium solid #084;
padding: 5px;
}
.fixme {
background: #eee;
border: 1px solid #084;
padding: 2x 20px;
}
.simpletable {
border: 1px solid #084;
border-collapse: collapse;
}
.simpletable TH {
text-align: left;
background: #cfc;
border: 1px solid #084;
margin: 0px;
padding: 1px 5px;
}
.simpletable TD {
border: 1px solid #084;
margin: 0px;
padding: 5px;
}
/* xmldiff markup */
.new { text-decoration: underline; color: red; background: #fff0f0; }
.old { text-decoration: line-through; color: blue; background: #f0f0ff; }

103
Docs/index.html Normal file
View File

@ -0,0 +1,103 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The Python Imaging Library</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The Python Imaging Library</h1>
<h3 id='online'>Online Resources</h3>
<dl>
<dt><a href='http://www.pythonware.com/products/pil'><i>Python Imaging Library</i></a> (official product page at <a href="http://www.pythonware.com">pythonware.com</a>)</dt>
<dt><a href='http://effbot.org/zone/pil-index.htm'><i>Python Imaging Library</i></a> (development page at <a href="http://effbot.org">effbot.org</a>)</dt>
</dl>
<h3>Package Contents</h3>
<p>The following pages are generated from <a href='http://effbot.org/zone/pythondoc.htm'><b>pythondoc</b></a> markup in the source files.</p>
<dl>
<dt><a href='pythondoc-PIL.Image.html'>The PIL.Image Module</a></dt>
<dt><a href='pythondoc-PIL.ImageChops.html'>The PIL.ImageChops Module</a></dt>
<dt><a href='pythondoc-PIL.ImageColor.html'>The PIL.ImageColor Module</a></dt>
<dt><a href='pythondoc-PIL.ImageDraw.html'>The PIL.ImageDraw Module</a></dt>
<dt><a href='pythondoc-PIL.ImageEnhance.html'>The PIL.ImageEnhance Module</a></dt>
<dt><a href='pythondoc-PIL.ImageFile.html'>The PIL.ImageFile Module</a></dt>
<dt><a href='pythondoc-PIL.ImageFileIO.html'>The PIL.ImageFileIO Module</a></dt>
<dt><a href='pythondoc-PIL.ImageFilter.html'>The PIL.ImageFilter Module</a></dt>
<dt><a href='pythondoc-PIL.ImageFont.html'>The PIL.ImageFont Module</a></dt>
<dt><a href='pythondoc-PIL.ImageGL.html'>The PIL.ImageGL Module</a></dt>
<dt><a href='pythondoc-PIL.ImageGrab.html'>The PIL.ImageGrab Module</a></dt>
<dt><a href='pythondoc-PIL.ImageMath.html'>The PIL.ImageMath Module</a></dt>
<dt><a href='pythondoc-PIL.ImageMode.html'>The PIL.ImageMode Module</a></dt>
<dt><a href='pythondoc-PIL.ImageOps.html'>The PIL.ImageOps Module</a></dt>
<dt><a href='pythondoc-PIL.ImagePalette.html'>The PIL.ImagePalette Module</a></dt>
<dt><a href='pythondoc-PIL.ImagePath.html'>The PIL.ImagePath Module</a></dt>
<dt><a href='pythondoc-PIL.ImageQt.html'>The PIL.ImageQt Module</a></dt>
<dt><a href='pythondoc-PIL.ImageSequence.html'>The PIL.ImageSequence Module</a></dt>
<dt><a href='pythondoc-PIL.ImageStat.html'>The PIL.ImageStat Module</a></dt>
<dt><a href='pythondoc-PIL.ImageTk.html'>The PIL.ImageTk Module</a></dt>
<dt><a href='pythondoc-PIL.ImageTransform.html'>The PIL.ImageTransform Module</a></dt>
<dt><a href='pythondoc-PIL.ImageWin.html'>The PIL.ImageWin Module</a></dt>
<dt>&nbsp;</dt>
<dt><a href='pythondoc-PIL.ArgImagePlugin.html'>The PIL.ArgImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.BdfFontFile.html'>The PIL.BdfFontFile Module</a></dt>
<dt><a href='pythondoc-PIL.BmpImagePlugin.html'>The PIL.BmpImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.BufrStubImagePlugin.html'>The PIL.BufrStubImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.ContainerIO.html'>The PIL.ContainerIO Module</a></dt>
<dt><a href='pythondoc-PIL.CurImagePlugin.html'>The PIL.CurImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.DcxImagePlugin.html'>The PIL.DcxImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.EpsImagePlugin.html'>The PIL.EpsImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.ExifTags.html'>The PIL.ExifTags Module</a></dt>
<dt><a href='pythondoc-PIL.FitsStubImagePlugin.html'>The PIL.FitsStubImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.FliImagePlugin.html'>The PIL.FliImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.FontFile.html'>The PIL.FontFile Module</a></dt>
<dt><a href='pythondoc-PIL.FpxImagePlugin.html'>The PIL.FpxImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.GbrImagePlugin.html'>The PIL.GbrImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.GdImageFile.html'>The PIL.GdImageFile Module</a></dt>
<dt><a href='pythondoc-PIL.GifImagePlugin.html'>The PIL.GifImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.GimpGradientFile.html'>The PIL.GimpGradientFile Module</a></dt>
<dt><a href='pythondoc-PIL.GimpPaletteFile.html'>The PIL.GimpPaletteFile Module</a></dt>
<dt><a href='pythondoc-PIL.GribStubImagePlugin.html'>The PIL.GribStubImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.Hdf5StubImagePlugin.html'>The PIL.Hdf5StubImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.IcnsImagePlugin.html'>The PIL.IcnsImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.IcoImagePlugin.html'>The PIL.IcoImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.ImImagePlugin.html'>The PIL.ImImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.ImtImagePlugin.html'>The PIL.ImtImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.IptcImagePlugin.html'>The PIL.IptcImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.JpegImagePlugin.html'>The PIL.JpegImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.McIdasImagePlugin.html'>The PIL.McIdasImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.MicImagePlugin.html'>The PIL.MicImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.MpegImagePlugin.html'>The PIL.MpegImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.MspImagePlugin.html'>The PIL.MspImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.OleFileIO.html'>The PIL.OleFileIO Module</a></dt>
<dt><a href='pythondoc-PIL.PSDraw.html'>The PIL.PSDraw Module</a></dt>
<dt><a href='pythondoc-PIL.PaletteFile.html'>The PIL.PaletteFile Module</a></dt>
<dt><a href='pythondoc-PIL.PalmImagePlugin.html'>The PIL.PalmImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.PcdImagePlugin.html'>The PIL.PcdImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.PcfFontFile.html'>The PIL.PcfFontFile Module</a></dt>
<dt><a href='pythondoc-PIL.PcxImagePlugin.html'>The PIL.PcxImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.PdfImagePlugin.html'>The PIL.PdfImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.PixarImagePlugin.html'>The PIL.PixarImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.PngImagePlugin.html'>The PIL.PngImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.PpmImagePlugin.html'>The PIL.PpmImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.PsdImagePlugin.html'>The PIL.PsdImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.SgiImagePlugin.html'>The PIL.SgiImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.SunImagePlugin.html'>The PIL.SunImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.TarIO.html'>The PIL.TarIO Module</a></dt>
<dt><a href='pythondoc-PIL.TgaImagePlugin.html'>The PIL.TgaImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.TiffImagePlugin.html'>The PIL.TiffImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.TiffTags.html'>The PIL.TiffTags Module</a></dt>
<dt><a href='pythondoc-PIL.WalImageFile.html'>The PIL.WalImageFile Module</a></dt>
<dt><a href='pythondoc-PIL.WbmpImagePlugin.html'>The PIL.WbmpImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.WmfImagePlugin.html'>The PIL.WmfImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.XVThumbImagePlugin.html'>The PIL.XVThumbImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.XbmImagePlugin.html'>The PIL.XbmImagePlugin Module</a></dt>
<dt><a href='pythondoc-PIL.XpmImagePlugin.html'>The PIL.XpmImagePlugin Module</a></dt>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ArgImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ArgImagePlugin Module</h1>
<dl>
<dt><b>ArgImageFile</b> (class) [<a href='#PIL.ArgImagePlugin.ArgImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the experimental Animated Raster Graphics format.</p>
<p>For more information about this class, see <a href='#PIL.ArgImagePlugin.ArgImageFile-class'><i>The ArgImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ArgImagePlugin.ArgImageFile-class' name='PIL.ArgImagePlugin.ArgImageFile-class'>The ArgImageFile Class</a></h2>
<dl>
<dt><b>ArgImageFile</b> (class) [<a href='#PIL.ArgImagePlugin.ArgImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.BdfFontFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.BdfFontFile Module</h1>
<dl>
<dt><b>BdfFontFile(fp)</b> (class) [<a href='#PIL.BdfFontFile.BdfFontFile-class'>#</a>]</dt>
<dd>
<p>Font file plugin for the X11 BDF format.</p>
<p>For more information about this class, see <a href='#PIL.BdfFontFile.BdfFontFile-class'><i>The BdfFontFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.BdfFontFile.BdfFontFile-class' name='PIL.BdfFontFile.BdfFontFile-class'>The BdfFontFile Class</a></h2>
<dl>
<dt><b>BdfFontFile(fp)</b> (class) [<a href='#PIL.BdfFontFile.BdfFontFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.BmpImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.BmpImagePlugin Module</h1>
<dl>
<dt><b>BmpImageFile</b> (class) [<a href='#PIL.BmpImagePlugin.BmpImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the Windows BMP format.</p>
<p>For more information about this class, see <a href='#PIL.BmpImagePlugin.BmpImageFile-class'><i>The BmpImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.BmpImagePlugin.BmpImageFile-class' name='PIL.BmpImagePlugin.BmpImageFile-class'>The BmpImageFile Class</a></h2>
<dl>
<dt><b>BmpImageFile</b> (class) [<a href='#PIL.BmpImagePlugin.BmpImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,20 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.BufrStubImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.BufrStubImagePlugin Module</h1>
<dl>
<dt><a id='PIL.BufrStubImagePlugin.register_handler-function' name='PIL.BufrStubImagePlugin.register_handler-function'><b>register_handler(handler)</b></a> [<a href='#PIL.BufrStubImagePlugin.register_handler-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>handler</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,87 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ContainerIO Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ContainerIO Module</h1>
<dl>
<dt><b>ContainerIO(file, offset, length)</b> (class) [<a href='#PIL.ContainerIO.ContainerIO-class'>#</a>]</dt>
<dd>
<p>A file object that provides read access to a part of an existing
file (for example a TAR file).</p>
<p>For more information about this class, see <a href='#PIL.ContainerIO.ContainerIO-class'><i>The ContainerIO Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ContainerIO.ContainerIO-class' name='PIL.ContainerIO.ContainerIO-class'>The ContainerIO Class</a></h2>
<dl>
<dt><b>ContainerIO(file, offset, length)</b> (class) [<a href='#PIL.ContainerIO.ContainerIO-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ContainerIO.ContainerIO.__init__-method' name='PIL.ContainerIO.ContainerIO.__init__-method'><b>__init__(file, offset, length)</b></a> [<a href='#PIL.ContainerIO.ContainerIO.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>file</i></dt>
<dd>
</dd>
<dt><i>offset</i></dt>
<dd>
</dd>
<dt><i>length</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ContainerIO.ContainerIO.isatty-method' name='PIL.ContainerIO.ContainerIO.isatty-method'><b>isatty()</b></a> [<a href='#PIL.ContainerIO.ContainerIO.isatty-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ContainerIO.ContainerIO.read-method' name='PIL.ContainerIO.ContainerIO.read-method'><b>read(bytes=0)</b></a> [<a href='#PIL.ContainerIO.ContainerIO.read-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>bytes</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ContainerIO.ContainerIO.readline-method' name='PIL.ContainerIO.ContainerIO.readline-method'><b>readline()</b></a> [<a href='#PIL.ContainerIO.ContainerIO.readline-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ContainerIO.ContainerIO.readlines-method' name='PIL.ContainerIO.ContainerIO.readlines-method'><b>readlines()</b></a> [<a href='#PIL.ContainerIO.ContainerIO.readlines-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ContainerIO.ContainerIO.seek-method' name='PIL.ContainerIO.ContainerIO.seek-method'><b>seek(offset, mode=0)</b></a> [<a href='#PIL.ContainerIO.ContainerIO.seek-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>offset</i></dt>
<dd>
</dd>
<dt><i>mode</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ContainerIO.ContainerIO.tell-method' name='PIL.ContainerIO.ContainerIO.tell-method'><b>tell()</b></a> [<a href='#PIL.ContainerIO.ContainerIO.tell-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.CurImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.CurImagePlugin Module</h1>
<dl>
<dt><b>CurImageFile</b> (class) [<a href='#PIL.CurImagePlugin.CurImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Windows Cursor files.</p>
<p>For more information about this class, see <a href='#PIL.CurImagePlugin.CurImageFile-class'><i>The CurImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.CurImagePlugin.CurImageFile-class' name='PIL.CurImagePlugin.CurImageFile-class'>The CurImageFile Class</a></h2>
<dl>
<dt><b>CurImageFile</b> (class) [<a href='#PIL.CurImagePlugin.CurImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.DcxImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.DcxImagePlugin Module</h1>
<dl>
<dt><b>DcxImageFile</b> (class) [<a href='#PIL.DcxImagePlugin.DcxImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the Intel DCX format.</p>
<p>For more information about this class, see <a href='#PIL.DcxImagePlugin.DcxImageFile-class'><i>The DcxImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.DcxImagePlugin.DcxImageFile-class' name='PIL.DcxImagePlugin.DcxImageFile-class'>The DcxImageFile Class</a></h2>
<dl>
<dt><b>DcxImageFile</b> (class) [<a href='#PIL.DcxImagePlugin.DcxImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.EpsImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.EpsImagePlugin Module</h1>
<dl>
<dt><b>EpsImageFile</b> (class) [<a href='#PIL.EpsImagePlugin.EpsImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Encapsulated Postscript.</p>
<p>For more information about this class, see <a href='#PIL.EpsImagePlugin.EpsImageFile-class'><i>The EpsImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.EpsImagePlugin.EpsImageFile-class' name='PIL.EpsImagePlugin.EpsImageFile-class'>The EpsImageFile Class</a></h2>
<dl>
<dt><b>EpsImageFile</b> (class) [<a href='#PIL.EpsImagePlugin.EpsImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,19 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ExifTags Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ExifTags Module</h1>
<h2>Module Contents</h2>
<dl>
<dt><a id='PIL.ExifTags.GPSTAGS-variable' name='PIL.ExifTags.GPSTAGS-variable'><b>GPSTAGS</b></a> (variable) [<a href='#PIL.ExifTags.GPSTAGS-variable'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ExifTags.TAGS-variable' name='PIL.ExifTags.TAGS-variable'><b>TAGS</b></a> (variable) [<a href='#PIL.ExifTags.TAGS-variable'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,20 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.FitsStubImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.FitsStubImagePlugin Module</h1>
<dl>
<dt><a id='PIL.FitsStubImagePlugin.register_handler-function' name='PIL.FitsStubImagePlugin.register_handler-function'><b>register_handler(handler)</b></a> [<a href='#PIL.FitsStubImagePlugin.register_handler-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>handler</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,25 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.FliImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.FliImagePlugin Module</h1>
<dl>
<dt><b>FliImageFile</b> (class) [<a href='#PIL.FliImagePlugin.FliImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the FLI/FLC animation format.</p>
<p>For more information about this class, see <a href='#PIL.FliImagePlugin.FliImageFile-class'><i>The FliImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.FliImagePlugin.FliImageFile-class' name='PIL.FliImagePlugin.FliImageFile-class'>The FliImageFile Class</a></h2>
<dl>
<dt><b>FliImageFile</b> (class) [<a href='#PIL.FliImagePlugin.FliImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the FLI/FLC animation format. Use the <b>seek</b>
method to load individual frames.
</p></dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.FontFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.FontFile Module</h1>
<dl>
<dt><b>FontFile()</b> (class) [<a href='#PIL.FontFile.FontFile-class'>#</a>]</dt>
<dd>
<p>Base class for raster font file handlers.</p>
<p>For more information about this class, see <a href='#PIL.FontFile.FontFile-class'><i>The FontFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.FontFile.FontFile-class' name='PIL.FontFile.FontFile-class'>The FontFile Class</a></h2>
<dl>
<dt><b>FontFile()</b> (class) [<a href='#PIL.FontFile.FontFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.FpxImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.FpxImagePlugin Module</h1>
<dl>
<dt><b>FpxImageFile</b> (class) [<a href='#PIL.FpxImagePlugin.FpxImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the FlashPix images.</p>
<p>For more information about this class, see <a href='#PIL.FpxImagePlugin.FpxImageFile-class'><i>The FpxImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.FpxImagePlugin.FpxImageFile-class' name='PIL.FpxImagePlugin.FpxImageFile-class'>The FpxImageFile Class</a></h2>
<dl>
<dt><b>FpxImageFile</b> (class) [<a href='#PIL.FpxImagePlugin.FpxImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.GbrImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.GbrImagePlugin Module</h1>
<dl>
<dt><b>GbrImageFile</b> (class) [<a href='#PIL.GbrImagePlugin.GbrImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the GIMP brush format.</p>
<p>For more information about this class, see <a href='#PIL.GbrImagePlugin.GbrImageFile-class'><i>The GbrImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.GbrImagePlugin.GbrImageFile-class' name='PIL.GbrImagePlugin.GbrImageFile-class'>The GbrImageFile Class</a></h2>
<dl>
<dt><b>GbrImageFile</b> (class) [<a href='#PIL.GbrImagePlugin.GbrImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,43 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.GdImageFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.GdImageFile Module</h1>
<dl>
<dt><b>GdImageFile</b> (class) [<a href='#PIL.GdImageFile.GdImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the GD uncompressed format.</p>
<p>For more information about this class, see <a href='#PIL.GdImageFile.GdImageFile-class'><i>The GdImageFile Class</i></a>.</p>
</dd>
<dt><a id='PIL.GdImageFile.open-function' name='PIL.GdImageFile.open-function'><b>open(fp, mode=&quot;r&quot;)</b></a> [<a href='#PIL.GdImageFile.open-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>filename</i></dt>
<dd>
</dd>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.GdImageFile.GdImageFile-class' name='PIL.GdImageFile.GdImageFile-class'>The GdImageFile Class</a></h2>
<dl>
<dt><b>GdImageFile</b> (class) [<a href='#PIL.GdImageFile.GdImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the GD uncompressed format. Note that this format
is not supported by the standard <b>Image.open</b> function. To use
this plugin, you have to import the <b>GdImageFile</b> module and
use the <b>GdImageFile.open</b> function.
</p></dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.GifImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.GifImagePlugin Module</h1>
<dl>
<dt><b>GifImageFile</b> (class) [<a href='#PIL.GifImagePlugin.GifImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for GIF images.</p>
<p>For more information about this class, see <a href='#PIL.GifImagePlugin.GifImageFile-class'><i>The GifImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.GifImagePlugin.GifImageFile-class' name='PIL.GifImagePlugin.GifImageFile-class'>The GifImageFile Class</a></h2>
<dl>
<dt><b>GifImageFile</b> (class) [<a href='#PIL.GifImagePlugin.GifImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.GimpGradientFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.GimpGradientFile Module</h1>
<dl>
<dt><b>GimpGradientFile(fp)</b> (class) [<a href='#PIL.GimpGradientFile.GimpGradientFile-class'>#</a>]</dt>
<dd>
<p>File handler for GIMP's gradient format.</p>
<p>For more information about this class, see <a href='#PIL.GimpGradientFile.GimpGradientFile-class'><i>The GimpGradientFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.GimpGradientFile.GimpGradientFile-class' name='PIL.GimpGradientFile.GimpGradientFile-class'>The GimpGradientFile Class</a></h2>
<dl>
<dt><b>GimpGradientFile(fp)</b> (class) [<a href='#PIL.GimpGradientFile.GimpGradientFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.GimpPaletteFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.GimpPaletteFile Module</h1>
<dl>
<dt><b>GimpPaletteFile(fp)</b> (class) [<a href='#PIL.GimpPaletteFile.GimpPaletteFile-class'>#</a>]</dt>
<dd>
<p>File handler for GIMP's palette format.</p>
<p>For more information about this class, see <a href='#PIL.GimpPaletteFile.GimpPaletteFile-class'><i>The GimpPaletteFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.GimpPaletteFile.GimpPaletteFile-class' name='PIL.GimpPaletteFile.GimpPaletteFile-class'>The GimpPaletteFile Class</a></h2>
<dl>
<dt><b>GimpPaletteFile(fp)</b> (class) [<a href='#PIL.GimpPaletteFile.GimpPaletteFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,20 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.GribStubImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.GribStubImagePlugin Module</h1>
<dl>
<dt><a id='PIL.GribStubImagePlugin.register_handler-function' name='PIL.GribStubImagePlugin.register_handler-function'><b>register_handler(handler)</b></a> [<a href='#PIL.GribStubImagePlugin.register_handler-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>handler</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,20 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.Hdf5StubImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.Hdf5StubImagePlugin Module</h1>
<dl>
<dt><a id='PIL.Hdf5StubImagePlugin.register_handler-function' name='PIL.Hdf5StubImagePlugin.register_handler-function'><b>register_handler(handler)</b></a> [<a href='#PIL.Hdf5StubImagePlugin.register_handler-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>handler</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.IcnsImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.IcnsImagePlugin Module</h1>
<dl>
<dt><b>IcnsImageFile</b> (class) [<a href='#PIL.IcnsImagePlugin.IcnsImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Mac OS icons.</p>
<p>For more information about this class, see <a href='#PIL.IcnsImagePlugin.IcnsImageFile-class'><i>The IcnsImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.IcnsImagePlugin.IcnsImageFile-class' name='PIL.IcnsImagePlugin.IcnsImageFile-class'>The IcnsImageFile Class</a></h2>
<dl>
<dt><b>IcnsImageFile</b> (class) [<a href='#PIL.IcnsImagePlugin.IcnsImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.IcoImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.IcoImagePlugin Module</h1>
<dl>
<dt><b>IcoImageFile</b> (class) [<a href='#PIL.IcoImagePlugin.IcoImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Windows Icon files.</p>
<p>For more information about this class, see <a href='#PIL.IcoImagePlugin.IcoImageFile-class'><i>The IcoImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.IcoImagePlugin.IcoImageFile-class' name='PIL.IcoImagePlugin.IcoImageFile-class'>The IcoImageFile Class</a></h2>
<dl>
<dt><b>IcoImageFile</b> (class) [<a href='#PIL.IcoImagePlugin.IcoImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImImagePlugin Module</h1>
<dl>
<dt><b>ImImageFile</b> (class) [<a href='#PIL.ImImagePlugin.ImImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the IFUNC IM file format.</p>
<p>For more information about this class, see <a href='#PIL.ImImagePlugin.ImImageFile-class'><i>The ImImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImImagePlugin.ImImageFile-class' name='PIL.ImImagePlugin.ImImageFile-class'>The ImImageFile Class</a></h2>
<dl>
<dt><b>ImImageFile</b> (class) [<a href='#PIL.ImImagePlugin.ImImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,931 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.Image Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.Image Module</h1>
<dl>
<dt><a id='PIL.Image.blend-function' name='PIL.Image.blend-function'><b>blend(im1, im2, alpha)</b></a> [<a href='#PIL.Image.blend-function'>#</a>]</dt>
<dd>
<p>Creates a new image by interpolating between two input images, using
a constant alpha.
<pre>
out = image1 * (1.0 - alpha) + image2 * alpha
</pre>
</p><dl>
<dt><i>im1</i></dt>
<dd>
</dd>
<dt><i>im2</i></dt>
<dd>
</dd>
<dt><i>alpha</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.composite-function' name='PIL.Image.composite-function'><b>composite(image1, image2, mask)</b></a> [<a href='#PIL.Image.composite-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image2</i></dt>
<dd>
</dd>
<dt><i>mask</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.eval-function' name='PIL.Image.eval-function'><b>eval(image, function)</b></a> [<a href='#PIL.Image.eval-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>function</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.frombuffer-function' name='PIL.Image.frombuffer-function'><b>frombuffer(mode, size, data, decoder_name=&quot;raw&quot;, *args)</b></a> [<a href='#PIL.Image.frombuffer-function'>#</a>]</dt>
<dd>
<p>(New in 1.1.4) Creates an image memory from pixel data in a string
or byte buffer.
</p><p>
This function is similar to <a class="link" href="#PIL.Image.fromstring-function"><b>fromstring</b></a>, but uses data in
the byte buffer, where possible. This means that changes to the
original buffer object are reflected in this image). Not all modes
can share memory; support modes include "L", "RGBX", "RGBA", and
"CMYK". For other modes, this function behaves like a corresponding
call to the <b>fromstring</b> function.
</p><p>
Note that this function decodes pixel data only, not entire images.
If you have an entire image file in a string, wrap it in a
<b>StringIO</b> object, and use <a class="link" href="#PIL.Image.open-function"><b>open</b></a> to load it.
</p><dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>data</i></dt>
<dd>
</dd>
<dt><i>decoder_name</i></dt>
<dd>
</dd>
<dt><i>*args</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.fromstring-function' name='PIL.Image.fromstring-function'><b>fromstring(mode, size, data, decoder_name=&quot;raw&quot;, *args)</b></a> [<a href='#PIL.Image.fromstring-function'>#</a>]</dt>
<dd>
<p>Creates an image memory from pixel data in a string.
</p><p>
In its simplest form, this function takes three arguments
(mode, size, and unpacked pixel data).
</p><p>
You can also use any pixel decoder supported by PIL. For more
information on available decoders, see the section <a href="pil-decoder.htm"><i>Writing Your Own File Decoder</i></a>.
</p><p>
Note that this function decodes pixel data only, not entire images.
If you have an entire image in a string, wrap it in a
<b>StringIO</b> object, and use <a class="link" href="#PIL.Image.open-function"><b>open</b></a> to load it.
</p><dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>data</i></dt>
<dd>
</dd>
<dt><i>decoder_name</i></dt>
<dd>
</dd>
<dt><i>*args</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.getmodebandnames-function' name='PIL.Image.getmodebandnames-function'><b>getmodebandnames(mode)</b></a> [<a href='#PIL.Image.getmodebandnames-function'>#</a>]</dt>
<dd>
<p>Gets a list of individual band names. Given a mode, this function
returns a tuple containing the names of individual bands (use
<a class="link" href="#PIL.Image.getmodetype-function"><b>getmodetype</b></a> to get the mode used to store each individual
band.
</p><dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>KeyError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.getmodebands-function' name='PIL.Image.getmodebands-function'><b>getmodebands(mode)</b></a> [<a href='#PIL.Image.getmodebands-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>KeyError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.getmodebase-function' name='PIL.Image.getmodebase-function'><b>getmodebase(mode)</b></a> [<a href='#PIL.Image.getmodebase-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>KeyError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.getmodetype-function' name='PIL.Image.getmodetype-function'><b>getmodetype(mode)</b></a> [<a href='#PIL.Image.getmodetype-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>KeyError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><b>Image()</b> (class) [<a href='#PIL.Image.Image-class'>#</a>]</dt>
<dd>
<p>This class represents an image object.</p>
<p>For more information about this class, see <a href='#PIL.Image.Image-class'><i>The Image Class</i></a>.</p>
</dd>
<dt><a id='PIL.Image.init-function' name='PIL.Image.init-function'><b>init()</b></a> [<a href='#PIL.Image.init-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.Image.isDirectory-function' name='PIL.Image.isDirectory-function'><b>isDirectory(f)</b></a> [<a href='#PIL.Image.isDirectory-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.Image.isImageType-function' name='PIL.Image.isImageType-function'><b>isImageType(t)</b></a> [<a href='#PIL.Image.isImageType-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.Image.isStringType-function' name='PIL.Image.isStringType-function'><b>isStringType(t)</b></a> [<a href='#PIL.Image.isStringType-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.Image.isTupleType-function' name='PIL.Image.isTupleType-function'><b>isTupleType(t)</b></a> [<a href='#PIL.Image.isTupleType-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.Image.merge-function' name='PIL.Image.merge-function'><b>merge(mode, bands)</b></a> [<a href='#PIL.Image.merge-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt><i>bands</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.new-function' name='PIL.Image.new-function'><b>new(mode, size, color=0)</b></a> [<a href='#PIL.Image.new-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>color</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.open-function' name='PIL.Image.open-function'><b>open(file, mode=&quot;r&quot;)</b></a> [<a href='#PIL.Image.open-function'>#</a>]</dt>
<dd>
<p>Opens and identifies the given image file.
</p><p>
This is a lazy operation; this function identifies the file, but the
actual image data is not read from the file until you try to process
the data (or call the <a class="link" href="#PIL.Image.Image.load-method"><b>load</b></a> method).
</p><dl>
<dt><i>file</i></dt>
<dd>
A filename (string) or a file object. The file object
must implement <b>read</b>, <b>seek</b>, and <b>tell</b> methods,
and be opened in binary mode.
</dd>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.preinit-function' name='PIL.Image.preinit-function'><b>preinit()</b></a> [<a href='#PIL.Image.preinit-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.Image.register_extension-function' name='PIL.Image.register_extension-function'><b>register_extension(id, extension)</b></a> [<a href='#PIL.Image.register_extension-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>id</i></dt>
<dd>
</dd>
<dt><i>extension</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.register_mime-function' name='PIL.Image.register_mime-function'><b>register_mime(id, mimetype)</b></a> [<a href='#PIL.Image.register_mime-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>id</i></dt>
<dd>
</dd>
<dt><i>mimetype</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.register_open-function' name='PIL.Image.register_open-function'><b>register_open(id, factory, accept=None)</b></a> [<a href='#PIL.Image.register_open-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>id</i></dt>
<dd>
</dd>
<dt><i>factory</i></dt>
<dd>
</dd>
<dt><i>accept</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.register_save-function' name='PIL.Image.register_save-function'><b>register_save(id, driver)</b></a> [<a href='#PIL.Image.register_save-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>id</i></dt>
<dd>
</dd>
<dt><i>driver</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.Image.Image-class' name='PIL.Image.Image-class'>The Image Class</a></h2>
<dl>
<dt><b>Image()</b> (class) [<a href='#PIL.Image.Image-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.Image.Image.convert-method' name='PIL.Image.Image.convert-method'><b>convert(mode, matrix=None)</b></a> [<a href='#PIL.Image.Image.convert-method'>#</a>]</dt>
<dd>
<p>Returns a converted copy of this image. For the "P" mode, this
method translates pixels through the palette. If mode is
omitted, a mode is chosen so that all information in the image
and the palette can be represented without a palette.
</p><p>
The current version supports all possible conversions between
"L", "RGB" and "CMYK."
</p><p>
When translating a colour image to black and white (mode "L"),
the library uses the ITU-R 601-2 luma transform:
</p><p>
<b>L = R * 299/1000 + G * 587/1000 + B * 114/1000</b>
</p><p>
When translating a greyscale image into a bilevel image (mode
"1"), all non-zero values are set to 255 (white). To use other
thresholds, use the <a class="link" href="#PIL.Image.Image.point-method"><b>point</b></a> method.
</p><dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt><i>matrix</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.copy-method' name='PIL.Image.Image.copy-method'><b>copy()</b></a> [<a href='#PIL.Image.Image.copy-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.crop-method' name='PIL.Image.Image.crop-method'><b>crop(box=None)</b></a> [<a href='#PIL.Image.Image.crop-method'>#</a>]</dt>
<dd>
<p>Returns a rectangular region from this image. The box is a
4-tuple defining the left, upper, right, and lower pixel
coordinate.
</p><p>
This is a lazy operation. Changes to the source image may or
may not be reflected in the cropped image. To break the
connection, call the <a class="link" href="#PIL.Image.Image.load-method"><b>load</b></a> method on the cropped
copy.
</p><dl>
<dt><i>The</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.draft-method' name='PIL.Image.Image.draft-method'><b>draft(mode, size)</b></a> [<a href='#PIL.Image.Image.draft-method'>#</a>]</dt>
<dd>
<p>Configures the image file loader so it returns a version of the
image that as closely as possible matches the given mode and
size. For example, you can use this method to convert a colour
JPEG to greyscale while loading it, or to extract a 128x192
version from a PCD file.
</p><p>
Note that this method modifies the Image object in place. If
the image has already been loaded, this method has no effect.
</p><dl>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.filter-method' name='PIL.Image.Image.filter-method'><b>filter(filter)</b></a> [<a href='#PIL.Image.Image.filter-method'>#</a>]</dt>
<dd>
<p>Filters this image using the given filter. For a list of
available filters, see the <b>ImageFilter</b> module.
</p><dl>
<dt><i>filter</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.fromstring-method' name='PIL.Image.Image.fromstring-method'><b>fromstring(data, decoder_name=&quot;raw&quot;, *args)</b></a> [<a href='#PIL.Image.Image.fromstring-method'>#</a>]</dt>
<dd>
<p>Loads this image with pixel data from a string.
</p><p>
This method is similar to the <a class="link" href="#PIL.Image.fromstring-function"><b>fromstring</b></a> function, but
loads data into this image instead of creating a new image
object.
</p></dd>
<dt><a id='PIL.Image.Image.getbands-method' name='PIL.Image.Image.getbands-method'><b>getbands()</b></a> [<a href='#PIL.Image.Image.getbands-method'>#</a>]</dt>
<dd>
<p>Returns a tuple containing the name of each band in this image.
For example, <b>getbands</b> on an RGB image returns ("R", "G", "B").
</p><dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getbbox-method' name='PIL.Image.Image.getbbox-method'><b>getbbox()</b></a> [<a href='#PIL.Image.Image.getbbox-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getcolors-method' name='PIL.Image.Image.getcolors-method'><b>getcolors(maxcolors=256)</b></a> [<a href='#PIL.Image.Image.getcolors-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>maxcolors</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getdata-method' name='PIL.Image.Image.getdata-method'><b>getdata(band=None)</b></a> [<a href='#PIL.Image.Image.getdata-method'>#</a>]</dt>
<dd>
<p>Returns the contents of this image as a sequence object
containing pixel values. The sequence object is flattened, so
that values for line one follow directly after the values of
line zero, and so on.
</p><p>
Note that the sequence object returned by this method is an
internal PIL data type, which only supports certain sequence
operations. To convert it to an ordinary sequence (e.g. for
printing), use <b>list(im.getdata())</b>.
</p><dl>
<dt><i>band</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getextrema-method' name='PIL.Image.Image.getextrema-method'><b>getextrema()</b></a> [<a href='#PIL.Image.Image.getextrema-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getim-method' name='PIL.Image.Image.getim-method'><b>getim()</b></a> [<a href='#PIL.Image.Image.getim-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getpalette-method' name='PIL.Image.Image.getpalette-method'><b>getpalette()</b></a> [<a href='#PIL.Image.Image.getpalette-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getpixel-method' name='PIL.Image.Image.getpixel-method'><b>getpixel(xy)</b></a> [<a href='#PIL.Image.Image.getpixel-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>xy</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.getprojection-method' name='PIL.Image.Image.getprojection-method'><b>getprojection()</b></a> [<a href='#PIL.Image.Image.getprojection-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.histogram-method' name='PIL.Image.Image.histogram-method'><b>histogram(mask=None)</b></a> [<a href='#PIL.Image.Image.histogram-method'>#</a>]</dt>
<dd>
<p>Returns a histogram for the image. The histogram is returned as
a list of pixel counts, one for each pixel value in the source
image. If the image has more than one band, the histograms for
all bands are concatenated (for example, the histogram for an
"RGB" image contains 768 values).
</p><p>
A bilevel image (mode "1") is treated as a greyscale ("L") image
by this method.
</p><p>
If a mask is provided, the method returns a histogram for those
parts of the image where the mask image is non-zero. The mask
image must have the same size as the image, and be either a
bi-level image (mode "1") or a greyscale image ("L").
</p><dl>
<dt><i>mask</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.load-method' name='PIL.Image.Image.load-method'><b>load()</b></a> [<a href='#PIL.Image.Image.load-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.offset-method' name='PIL.Image.Image.offset-method'><b>offset(xoffset, yoffset=None)</b></a> [<a href='#PIL.Image.Image.offset-method'>#</a>]</dt>
<dd>
<p>(Deprecated) Returns a copy of the image where the data has been
offset by the given distances. Data wraps around the edges. If
yoffset is omitted, it is assumed to be equal to xoffset.
</p><p>
This method is deprecated. New code should use the <b>offset</b>
function in the <b>ImageChops</b> module.
</p><dl>
<dt><i>xoffset</i></dt>
<dd>
</dd>
<dt><i>yoffset</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.paste-method' name='PIL.Image.Image.paste-method'><b>paste(im, box=None, mask=None)</b></a> [<a href='#PIL.Image.Image.paste-method'>#</a>]</dt>
<dd>
<p>Pastes another image into this image. The box argument is either
a 2-tuple giving the upper left corner, a 4-tuple defining the
left, upper, right, and lower pixel coordinate, or None (same as
(0, 0)). If a 4-tuple is given, the size of the pasted image
must match the size of the region.
</p><p>
If the modes don't match, the pasted image is converted to the
mode of this image (see the <a class="link" href="#PIL.Image.Image.convert-method"><b>convert</b></a> method for
details).
</p><p>
Instead of an image, the source can be a integer or tuple
containing pixel values. The method then fills the region
with the given colour. When creating RGB images, you can
also use colour strings as supported by the ImageColor module.
</p><p>
If a mask is given, this method updates only the regions
indicated by the mask. You can use either "1", "L" or "RGBA"
images (in the latter case, the alpha band is used as mask).
Where the mask is 255, the given image is copied as is. Where
the mask is 0, the current value is preserved. Intermediate
values can be used for transparency effects.
</p><p>
Note that if you paste an "RGBA" image, the alpha band is
ignored. You can work around this by using the same image as
both source image and mask.
</p><dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt><i>box</i></dt>
<dd>
<p>An optional 4-tuple giving the region to paste into.
If a 2-tuple is used instead, it's treated as the upper left
corner. If omitted or None, the source is pasted into the
upper left corner.
</p><p>
If an image is given as the second argument and there is no
third, the box defaults to (0, 0), and the second argument
is interpreted as a mask image.
</p></dd>
<dt><i>mask</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.point-method' name='PIL.Image.Image.point-method'><b>point(lut, mode=None)</b></a> [<a href='#PIL.Image.Image.point-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>lut</i></dt>
<dd>
</dd>
<dt><i>mode</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.putalpha-method' name='PIL.Image.Image.putalpha-method'><b>putalpha(alpha)</b></a> [<a href='#PIL.Image.Image.putalpha-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.putdata-method' name='PIL.Image.Image.putdata-method'><b>putdata(data, scale=1.0, offset=0.0)</b></a> [<a href='#PIL.Image.Image.putdata-method'>#</a>]</dt>
<dd>
<p>Copies pixel data to this image. This method copies data from a
sequence object into the image, starting at the upper left
corner (0, 0), and continuing until either the image or the
sequence ends. The scale and offset values are used to adjust
the sequence values: <b>pixel = value*scale + offset</b>.
</p><dl>
<dt><i>data</i></dt>
<dd>
</dd>
<dt><i>scale</i></dt>
<dd>
</dd>
<dt><i>offset</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.putpalette-method' name='PIL.Image.Image.putpalette-method'><b>putpalette(data)</b></a> [<a href='#PIL.Image.Image.putpalette-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>data</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.putpixel-method' name='PIL.Image.Image.putpixel-method'><b>putpixel(xy, value)</b></a> [<a href='#PIL.Image.Image.putpixel-method'>#</a>]</dt>
<dd>
<p>Modifies the pixel at the given position. The colour is given as
a single numerical value for single-band images, and a tuple for
multi-band images.
</p><p>
Note that this method is relatively slow. For more extensive
changes, use <a class="link" href="#PIL.Image.Image.paste-method"><b>paste</b></a> or the <b>ImageDraw</b> module
instead.
</p><dl>
<dt><i>xy</i></dt>
<dd>
</dd>
<dt><i>value</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.resize-method' name='PIL.Image.Image.resize-method'><b>resize(size, filter=NEAREST)</b></a> [<a href='#PIL.Image.Image.resize-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>filter</i></dt>
<dd>
An optional resampling filter. This can be
one of <b>NEAREST</b> (use nearest neighbour), <b>BILINEAR</b>
(linear interpolation in a 2x2 environment), <b>BICUBIC</b>
(cubic spline interpolation in a 4x4 environment), or
<b>ANTIALIAS</b> (a high-quality downsampling filter).
If omitted, or if the image has mode "1" or "P", it is
set <b>NEAREST</b>.
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.rotate-method' name='PIL.Image.Image.rotate-method'><b>rotate(angle, filter=NEAREST)</b></a> [<a href='#PIL.Image.Image.rotate-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>angle</i></dt>
<dd>
</dd>
<dt><i>filter</i></dt>
<dd>
An optional resampling filter. This can be
one of <b>NEAREST</b> (use nearest neighbour), <b>BILINEAR</b>
(linear interpolation in a 2x2 environment), or <b>BICUBIC</b>
(cubic spline interpolation in a 4x4 environment).
If omitted, or if the image has mode "1" or "P", it is
set <b>NEAREST</b>.
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.save-method' name='PIL.Image.Image.save-method'><b>save(file, format=None, **options)</b></a> [<a href='#PIL.Image.Image.save-method'>#</a>]</dt>
<dd>
<p>Saves this image under the given filename. If no format is
specified, the format to use is determined from the filename
extension, if possible.
</p><p>
Keyword options can be used to provide additional instructions
to the writer. If a writer doesn't recognise an option, it is
silently ignored. The available options are described later in
this handbook.
</p><p>
You can use a file object instead of a filename. In this case,
you must always specify the format. The file object must
implement the <b>seek</b>, <b>tell</b>, and <b>write</b>
methods, and be opened in binary mode.
</p><dl>
<dt><i>file</i></dt>
<dd>
</dd>
<dt><i>format</i></dt>
<dd>
</dd>
<dt><i>**options</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>KeyError</b>:</dt><dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.seek-method' name='PIL.Image.Image.seek-method'><b>seek(frame)</b></a> [<a href='#PIL.Image.Image.seek-method'>#</a>]</dt>
<dd>
<p>Seeks to the given frame in this sequence file. If you seek
beyond the end of the sequence, the method raises an
<b>EOFError</b> exception. When a sequence file is opened, the
library automatically seeks to frame 0.
</p><p>
Note that in the current version of the library, most sequence
formats only allows you to seek to the next frame.
</p><dl>
<dt><i>frame</i></dt>
<dd>
</dd>
<dt>Raises <b>EOFError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.show-method' name='PIL.Image.Image.show-method'><b>show(title=None)</b></a> [<a href='#PIL.Image.Image.show-method'>#</a>]</dt>
<dd>
<p>Displays this image. This method is mainly intended for
debugging purposes.
</p><p>
On Unix platforms, this method saves the image to a temporary
PPM file, and calls the <b>xv</b> utility.
</p><p>
On Windows, it saves the image to a temporary BMP file, and uses
the standard BMP display utility to show it (usually Paint).
</p><dl>
<dt><i>title</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.split-method' name='PIL.Image.Image.split-method'><b>split()</b></a> [<a href='#PIL.Image.Image.split-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.tell-method' name='PIL.Image.Image.tell-method'><b>tell()</b></a> [<a href='#PIL.Image.Image.tell-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.thumbnail-method' name='PIL.Image.Image.thumbnail-method'><b>thumbnail(size, resample=NEAREST)</b></a> [<a href='#PIL.Image.Image.thumbnail-method'>#</a>]</dt>
<dd>
<p>Make this image into a thumbnail. This method modifies the
image to contain a thumbnail version of itself, no larger than
the given size. This method calculates an appropriate thumbnail
size to preserve the aspect of the image, calls the <a class="link" href="#PIL.Image.Image.draft-method"><b>draft</b></a> method to configure the file reader (where
applicable), and finally resizes the image.
</p><p>
Note that the bilinear and bicubic filters in the current
version of PIL are not well-suited for thumbnail generation.
You should use <b>ANTIALIAS</b> unless speed is much more
important than quality.
</p><p>
Also note that this function modifies the Image object in place.
If you need to use the full resolution image as well, apply this
method to a <a class="link" href="#PIL.Image.Image.copy-method"><b>copy</b></a> of the original image.
</p><dl>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>resample</i></dt>
<dd>
Optional resampling filter. This can be one
of <b>NEAREST</b>, <b>BILINEAR</b>, <b>BICUBIC</b>, or
<b>ANTIALIAS</b> (best quality). If omitted, it defaults
to <b>NEAREST</b> (this will be changed to ANTIALIAS in a
future version).
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.tobitmap-method' name='PIL.Image.Image.tobitmap-method'><b>tobitmap(name=&quot;image&quot;)</b></a> [<a href='#PIL.Image.Image.tobitmap-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>name</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>ValueError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.tostring-method' name='PIL.Image.Image.tostring-method'><b>tostring(encoder_name=&quot;raw&quot;, *args)</b></a> [<a href='#PIL.Image.Image.tostring-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>encoder_name</i></dt>
<dd>
</dd>
<dt><i>*args</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.transform-method' name='PIL.Image.Image.transform-method'><b>transform(size, method, data, resample=NEAREST)</b></a> [<a href='#PIL.Image.Image.transform-method'>#</a>]</dt>
<dd>
<p>Transforms this image. This method creates a new image with the
given size, and the same mode as the original, and copies data
to the new image using the given transform.
</p><p>
</p><dl>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>method</i></dt>
<dd>
The transformation method. This is one of
<b>EXTENT</b> (cut out a rectangular subregion), <b>AFFINE</b>
(affine transform), <b>PERSPECTIVE</b> (perspective
transform), <b>QUAD</b> (map a quadrilateral to a
rectangle), or <b>MESH</b> (map a number of source quadrilaterals
in one operation).
</dd>
<dt><i>data</i></dt>
<dd>
</dd>
<dt><i>resample</i></dt>
<dd>
Optional resampling filter. It can be one of
<b>NEAREST</b> (use nearest neighbour), <b>BILINEAR</b>
(linear interpolation in a 2x2 environment), or
<b>BICUBIC</b> (cubic spline interpolation in a 4x4
environment). If omitted, or if the image has mode
"1" or "P", it is set to <b>NEAREST</b>.
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.transpose-method' name='PIL.Image.Image.transpose-method'><b>transpose(method)</b></a> [<a href='#PIL.Image.Image.transpose-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>method</i></dt>
<dd>
One of <b>FLIP_LEFT_RIGHT</b>, <b>FLIP_TOP_BOTTOM</b>,
<b>ROTATE_90</b>, <b>ROTATE_180</b>, or <b>ROTATE_270</b>.
</dd>
</dl><br />
</dd>
<dt><a id='PIL.Image.Image.verify-method' name='PIL.Image.Image.verify-method'><b>verify()</b></a> [<a href='#PIL.Image.Image.verify-method'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,282 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageChops Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageChops Module</h1>
<p>The <b>ImageChops</b> module contains a number of arithmetical image
operations, called <i>channel operations</i> ("chops"). These can be
used for various purposes, including special effects, image
compositions, algorithmic painting, and more.
</p><p>
At this time, channel operations are only implemented for 8-bit
images (e.g. "L" and "RGB").
</p><p>
Most channel operations take one or two image arguments and returns
a new image. Unless otherwise noted, the result of a channel
operation is always clipped to the range 0 to MAX (which is 255 for
all modes supported by the operations in this module).
</p><h2>Module Contents</h2>
<dl>
<dt><a id='PIL.ImageChops.add-function' name='PIL.ImageChops.add-function'><b>add(image1, image2, scale=1.0, offset=0)</b></a> [<a href='#PIL.ImageChops.add-function'>#</a>]</dt>
<dd>
<p>Add images
((image1 + image2) / scale + offset).
</p><p>
Adds two images, dividing the result by scale and adding the
offset. If omitted, scale defaults to 1.0, and offset to 0.0.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.add_modulo-function' name='PIL.ImageChops.add_modulo-function'><b>add_modulo(image1, image2)</b></a> [<a href='#PIL.ImageChops.add_modulo-function'>#</a>]</dt>
<dd>
<p>Add images without clipping
((image1 + image2) % MAX).
</p><p>
Adds two images, without clipping the result.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.blend-function' name='PIL.ImageChops.blend-function'><b>blend(image1, image2, alpha)</b></a> [<a href='#PIL.ImageChops.blend-function'>#</a>]</dt>
<dd>
<p>Blend images using constant transparency weight.
</p><p>
Same as the <b>blend</b> function in the <b>Image</b> module.
</p></dd>
<dt><a id='PIL.ImageChops.composite-function' name='PIL.ImageChops.composite-function'><b>composite(image1, image2, mask)</b></a> [<a href='#PIL.ImageChops.composite-function'>#</a>]</dt>
<dd>
<p>Create composite using transparency mask.
</p><p>
Same as the <b>composite</b> function in the <b>Image</b> module.
</p></dd>
<dt><a id='PIL.ImageChops.constant-function' name='PIL.ImageChops.constant-function'><b>constant(image, value)</b></a> [<a href='#PIL.ImageChops.constant-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>value</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.darker-function' name='PIL.ImageChops.darker-function'><b>darker(image1, image2)</b></a> [<a href='#PIL.ImageChops.darker-function'>#</a>]</dt>
<dd>
<p>Compare images, and return darker pixel value
(min(image1, image2)).
</p><p>
Compares the two images, pixel by pixel, and returns a new image
containing the darker values.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.difference-function' name='PIL.ImageChops.difference-function'><b>difference(image1, image2)</b></a> [<a href='#PIL.ImageChops.difference-function'>#</a>]</dt>
<dd>
<p>Calculate absolute difference
(abs(image1 - image2)).
</p><p>
Returns the absolute value of the difference between the two images.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.duplicate-function' name='PIL.ImageChops.duplicate-function'><b>duplicate(image)</b></a> [<a href='#PIL.ImageChops.duplicate-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.invert-function' name='PIL.ImageChops.invert-function'><b>invert(image)</b></a> [<a href='#PIL.ImageChops.invert-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.lighter-function' name='PIL.ImageChops.lighter-function'><b>lighter(image1, image2)</b></a> [<a href='#PIL.ImageChops.lighter-function'>#</a>]</dt>
<dd>
<p>Compare images, and return lighter pixel value
(max(image1, image2)).
</p><p>
Compares the two images, pixel by pixel, and returns a new image
containing the lighter values.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.logical_and-function' name='PIL.ImageChops.logical_and-function'><b>logical_and(image1, image2)</b></a> [<a href='#PIL.ImageChops.logical_and-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageChops.logical_or-function' name='PIL.ImageChops.logical_or-function'><b>logical_or(image1, image2)</b></a> [<a href='#PIL.ImageChops.logical_or-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageChops.logical_xor-function' name='PIL.ImageChops.logical_xor-function'><b>logical_xor(image1, image2)</b></a> [<a href='#PIL.ImageChops.logical_xor-function'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageChops.multiply-function' name='PIL.ImageChops.multiply-function'><b>multiply(image1, image2)</b></a> [<a href='#PIL.ImageChops.multiply-function'>#</a>]</dt>
<dd>
<p>Superimpose positive images
(image1 * image2 / MAX).
</p><p>
Superimposes two images on top of each other. If you multiply an
image with a solid black image, the result is black. If you multiply
with a solid white image, the image is unaffected.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.offset-function' name='PIL.ImageChops.offset-function'><b>offset(image, xoffset, yoffset=None)</b></a> [<a href='#PIL.ImageChops.offset-function'>#</a>]</dt>
<dd>
<p>Offset image data.
</p><p>
Returns a copy of the image where data has been offset by the given
distances. Data wraps around the edges. If yoffset is omitted, it
is assumed to be equal to xoffset.
</p><dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>xoffset</i></dt>
<dd>
</dd>
<dt><i>yoffset</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.screen-function' name='PIL.ImageChops.screen-function'><b>screen(image1, image2)</b></a> [<a href='#PIL.ImageChops.screen-function'>#</a>]</dt>
<dd>
<p>Superimpose negative images
(MAX - ((MAX - image1) * (MAX - image2) / MAX)).
</p><p>
Superimposes two inverted images on top of each other.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.subtract-function' name='PIL.ImageChops.subtract-function'><b>subtract(image1, image2, scale=1.0, offset=0)</b></a> [<a href='#PIL.ImageChops.subtract-function'>#</a>]</dt>
<dd>
<p>Subtract images
((image1 - image2) / scale + offset).
</p><p>
Subtracts two images, dividing the result by scale and adding the
offset. If omitted, scale defaults to 1.0, and offset to 0.0.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageChops.subtract_modulo-function' name='PIL.ImageChops.subtract_modulo-function'><b>subtract_modulo(image1, image2)</b></a> [<a href='#PIL.ImageChops.subtract_modulo-function'>#</a>]</dt>
<dd>
<p>Subtract images without clipping
((image1 - image2) % MAX).
</p><p>
Subtracts two images, without clipping the result.
</p><dl>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt><i>image1</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,25 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageColor Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageColor Module</h1>
<dl>
<dt><a id='PIL.ImageColor.getrgb-function' name='PIL.ImageColor.getrgb-function'><b>getrgb(color)</b></a> [<a href='#PIL.ImageColor.getrgb-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>color</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>ValueError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,111 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageDraw Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageDraw Module</h1>
<dl>
<dt><a id='PIL.ImageDraw.Draw-function' name='PIL.ImageDraw.Draw-function'><b>Draw(im, mode=None)</b></a> [<a href='#PIL.ImageDraw.Draw-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt><i>mode</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageDraw.getdraw-function' name='PIL.ImageDraw.getdraw-function'><b>getdraw(im=None, hints=None)</b></a> [<a href='#PIL.ImageDraw.getdraw-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt><i>hints</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><b>ImageDraw(im, mode=None)</b> (class) [<a href='#PIL.ImageDraw.ImageDraw-class'>#</a>]</dt>
<dd>
<p>A simple 2D drawing interface for PIL images.</p>
<p>For more information about this class, see <a href='#PIL.ImageDraw.ImageDraw-class'><i>The ImageDraw Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageDraw.ImageDraw-class' name='PIL.ImageDraw.ImageDraw-class'>The ImageDraw Class</a></h2>
<dl>
<dt><b>ImageDraw(im, mode=None)</b> (class) [<a href='#PIL.ImageDraw.ImageDraw-class'>#</a>]</dt>
<dd>
<p>A simple 2D drawing interface for PIL images.
</p><p>
Application code should use the <b>Draw</b> factory, instead of
directly.
</p></dd>
<dt><a id='PIL.ImageDraw.ImageDraw.__init__-method' name='PIL.ImageDraw.ImageDraw.__init__-method'><b>__init__(im, mode=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt><i>mode</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.arc-method' name='PIL.ImageDraw.ImageDraw.arc-method'><b>arc(xy, start, end, fill=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.arc-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.bitmap-method' name='PIL.ImageDraw.ImageDraw.bitmap-method'><b>bitmap(xy, bitmap, fill=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.bitmap-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.chord-method' name='PIL.ImageDraw.ImageDraw.chord-method'><b>chord(xy, start, end, fill=None, outline=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.chord-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.ellipse-method' name='PIL.ImageDraw.ImageDraw.ellipse-method'><b>ellipse(xy, fill=None, outline=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.ellipse-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.getfont-method' name='PIL.ImageDraw.ImageDraw.getfont-method'><b>getfont()</b></a> [<a href='#PIL.ImageDraw.ImageDraw.getfont-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.line-method' name='PIL.ImageDraw.ImageDraw.line-method'><b>line(xy, fill=None, width=0)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.line-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.pieslice-method' name='PIL.ImageDraw.ImageDraw.pieslice-method'><b>pieslice(xy, start, end, fill=None, outline=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.pieslice-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.point-method' name='PIL.ImageDraw.ImageDraw.point-method'><b>point(xy, fill=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.point-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.polygon-method' name='PIL.ImageDraw.ImageDraw.polygon-method'><b>polygon(xy, fill=None, outline=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.polygon-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.rectangle-method' name='PIL.ImageDraw.ImageDraw.rectangle-method'><b>rectangle(xy, fill=None, outline=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.rectangle-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.setfill-method' name='PIL.ImageDraw.ImageDraw.setfill-method'><b>setfill(onoff)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.setfill-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.setfont-method' name='PIL.ImageDraw.ImageDraw.setfont-method'><b>setfont(font)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.setfont-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.setink-method' name='PIL.ImageDraw.ImageDraw.setink-method'><b>setink(ink)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.setink-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.shape-method' name='PIL.ImageDraw.ImageDraw.shape-method'><b>shape(shape, fill=None, outline=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.shape-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.text-method' name='PIL.ImageDraw.ImageDraw.text-method'><b>text(xy, text, fill=None, font=None, anchor=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.text-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageDraw.ImageDraw.textsize-method' name='PIL.ImageDraw.ImageDraw.textsize-method'><b>textsize(text, font=None)</b></a> [<a href='#PIL.ImageDraw.ImageDraw.textsize-method'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,77 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageEnhance Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageEnhance Module</h1>
<dl>
<dt><b>Brightness(image)</b> (class) [<a href='#PIL.ImageEnhance.Brightness-class'>#</a>]</dt>
<dd>
<p>Brightness enhancement object.</p>
<p>For more information about this class, see <a href='#PIL.ImageEnhance.Brightness-class'><i>The Brightness Class</i></a>.</p>
</dd>
<dt><b>Color(image)</b> (class) [<a href='#PIL.ImageEnhance.Color-class'>#</a>]</dt>
<dd>
<p>Color enhancement object.</p>
<p>For more information about this class, see <a href='#PIL.ImageEnhance.Color-class'><i>The Color Class</i></a>.</p>
</dd>
<dt><b>Contrast(image)</b> (class) [<a href='#PIL.ImageEnhance.Contrast-class'>#</a>]</dt>
<dd>
<p>Contrast enhancement object.</p>
<p>For more information about this class, see <a href='#PIL.ImageEnhance.Contrast-class'><i>The Contrast Class</i></a>.</p>
</dd>
<dt><b>Sharpness(image)</b> (class) [<a href='#PIL.ImageEnhance.Sharpness-class'>#</a>]</dt>
<dd>
<p>Sharpness enhancement object.</p>
<p>For more information about this class, see <a href='#PIL.ImageEnhance.Sharpness-class'><i>The Sharpness Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageEnhance.Brightness-class' name='PIL.ImageEnhance.Brightness-class'>The Brightness Class</a></h2>
<dl>
<dt><b>Brightness(image)</b> (class) [<a href='#PIL.ImageEnhance.Brightness-class'>#</a>]</dt>
<dd>
<p>Brightness enhancement object.
</p><p>
This class can be used to control the brighntess of an image. An
enhancement factor of 0.0 gives a black image, factor 1.0 gives the
original image.
</p></dd>
</dl>
<h2><a id='PIL.ImageEnhance.Color-class' name='PIL.ImageEnhance.Color-class'>The Color Class</a></h2>
<dl>
<dt><b>Color(image)</b> (class) [<a href='#PIL.ImageEnhance.Color-class'>#</a>]</dt>
<dd>
<p>Color enhancement object.
</p><p>
This class can be used to adjust the colour balance of an image, in
a manner similar to the controls on a colour TV set. An enhancement
factor of 0.0 gives a black and white image, a factor of 1.0 gives
the original image.
</p></dd>
</dl>
<h2><a id='PIL.ImageEnhance.Contrast-class' name='PIL.ImageEnhance.Contrast-class'>The Contrast Class</a></h2>
<dl>
<dt><b>Contrast(image)</b> (class) [<a href='#PIL.ImageEnhance.Contrast-class'>#</a>]</dt>
<dd>
<p>Contrast enhancement object.
</p><p>
This class can be used to control the contrast of an image, similar
to the contrast control on a TV set. An enhancement factor of 0.0
gives an solid grey image, factor 1.0 gives the original image.
</p></dd>
</dl>
<h2><a id='PIL.ImageEnhance.Sharpness-class' name='PIL.ImageEnhance.Sharpness-class'>The Sharpness Class</a></h2>
<dl>
<dt><b>Sharpness(image)</b> (class) [<a href='#PIL.ImageEnhance.Sharpness-class'>#</a>]</dt>
<dd>
<p>Sharpness enhancement object.
</p><p>
This class can be used to adjust the sharpness of an image. The
enhancement factor 0.0 gives a blurred image, 1.0 gives the original
image, and a factor of 2.0 gives a sharpened image.
</p></dd>
</dl>
</body></html>

View File

@ -0,0 +1,117 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageFile Module</h1>
<dl>
<dt><b>_ParserFile(data)</b> (class) [<a href='#PIL.ImageFile._ParserFile-class'>#</a>]</dt>
<dd>
<p>(Internal) Support class for the Parser file.</p>
<p>For more information about this class, see <a href='#PIL.ImageFile._ParserFile-class'><i>The _ParserFile Class</i></a>.</p>
</dd>
<dt><a id='PIL.ImageFile._safe_read-function' name='PIL.ImageFile._safe_read-function'><b>_safe_read(fp, size)</b></a> [<a href='#PIL.ImageFile._safe_read-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>fp</i></dt>
<dd>
File handle. Must implement a <b>read</b> method.
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
A string containing up to <i>size</i> bytes of data.
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageFile._save-function' name='PIL.ImageFile._save-function'><b>_save(im, fp, tile)</b></a> [<a href='#PIL.ImageFile._save-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt><i>fp</i></dt>
<dd>
</dd>
<dt><i>tile</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><b>ImageFile(fp=None, filename=None)</b> (class) [<a href='#PIL.ImageFile.ImageFile-class'>#</a>]</dt>
<dd>
<p>Base class for image file handlers.</p>
<p>For more information about this class, see <a href='#PIL.ImageFile.ImageFile-class'><i>The ImageFile Class</i></a>.</p>
</dd>
<dt><b>Parser</b> (class) [<a href='#PIL.ImageFile.Parser-class'>#</a>]</dt>
<dd>
<p>Incremental image parser.</p>
<p>For more information about this class, see <a href='#PIL.ImageFile.Parser-class'><i>The Parser Class</i></a>.</p>
</dd>
<dt><b>StubImageFile</b> (class) [<a href='#PIL.ImageFile.StubImageFile-class'>#</a>]</dt>
<dd>
<p>Base class for stub image loaders.</p>
<p>For more information about this class, see <a href='#PIL.ImageFile.StubImageFile-class'><i>The StubImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageFile._ParserFile-class' name='PIL.ImageFile._ParserFile-class'>The _ParserFile Class</a></h2>
<dl>
<dt><b>_ParserFile(data)</b> (class) [<a href='#PIL.ImageFile._ParserFile-class'>#</a>]</dt>
<dd>
<p>(Internal) Support class for the <b>Parser</b> file.
</p></dd>
</dl>
<h2><a id='PIL.ImageFile.ImageFile-class' name='PIL.ImageFile.ImageFile-class'>The ImageFile Class</a></h2>
<dl>
<dt><b>ImageFile(fp=None, filename=None)</b> (class) [<a href='#PIL.ImageFile.ImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFile.Parser-class' name='PIL.ImageFile.Parser-class'>The Parser Class</a></h2>
<dl>
<dt><b>Parser</b> (class) [<a href='#PIL.ImageFile.Parser-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageFile.Parser.close-method' name='PIL.ImageFile.Parser.close-method'><b>close()</b></a> [<a href='#PIL.ImageFile.Parser.close-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageFile.Parser.feed-method' name='PIL.ImageFile.Parser.feed-method'><b>feed(data)</b></a> [<a href='#PIL.ImageFile.Parser.feed-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>data</i></dt>
<dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageFile.Parser.reset-method' name='PIL.ImageFile.Parser.reset-method'><b>reset()</b></a> [<a href='#PIL.ImageFile.Parser.reset-method'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFile.StubImageFile-class' name='PIL.ImageFile.StubImageFile-class'>The StubImageFile Class</a></h2>
<dl>
<dt><b>StubImageFile</b> (class) [<a href='#PIL.ImageFile.StubImageFile-class'>#</a>]</dt>
<dd>
<p>Base class for stub image loaders.
</p><p>
A stub loader is an image loader that can identify files of a
certain format, but relies on external code to load the file.
</p></dd>
<dt><a id='PIL.ImageFile.StubImageFile._load-method' name='PIL.ImageFile.StubImageFile._load-method'><b>_load()</b></a> [<a href='#PIL.ImageFile.StubImageFile._load-method'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,43 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageFileIO Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageFileIO Module</h1>
<dl>
<dt><b>ImageFileIO(fp)</b> (class) [<a href='#PIL.ImageFileIO.ImageFileIO-class'>#</a>]</dt>
<dd>
<p>The ImageFileIO module can be used to read an image from a
socket, or any other stream device.</p>
<p>For more information about this class, see <a href='#PIL.ImageFileIO.ImageFileIO-class'><i>The ImageFileIO Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageFileIO.ImageFileIO-class' name='PIL.ImageFileIO.ImageFileIO-class'>The ImageFileIO Class</a></h2>
<dl>
<dt><b>ImageFileIO(fp)</b> (class) [<a href='#PIL.ImageFileIO.ImageFileIO-class'>#</a>]</dt>
<dd>
<p>The <b>ImageFileIO</b> module can be used to read an image from a
socket, or any other stream device.
</p><p>
This module is deprecated. New code should use the <b>Parser</b>
class in the <a href="imagefile">ImageFile</a> module instead.
</p></dd>
<dt><a id='PIL.ImageFileIO.ImageFileIO.__init__-method' name='PIL.ImageFileIO.ImageFileIO.__init__-method'><b>__init__(fp)</b></a> [<a href='#PIL.ImageFileIO.ImageFileIO.__init__-method'>#</a>]</dt>
<dd>
<p>Adds buffering to a stream file object, in order to
provide <b>seek</b> and <b>tell</b> methods required
by the <b>Image.open</b> method. The stream object must
implement <b>read</b> and <b>close</b> methods.
</p><dl>
<dt><i>fp</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,257 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageFilter Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageFilter Module</h1>
<dl>
<dt><b>BLUR</b> (class) [<a href='#PIL.ImageFilter.BLUR-class'>#</a>]</dt>
<dd>
<p>Blur filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.BLUR-class'><i>The BLUR Class</i></a>.</p>
</dd>
<dt><b>CONTOUR</b> (class) [<a href='#PIL.ImageFilter.CONTOUR-class'>#</a>]</dt>
<dd>
<p>Contour filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.CONTOUR-class'><i>The CONTOUR Class</i></a>.</p>
</dd>
<dt><b>DETAIL</b> (class) [<a href='#PIL.ImageFilter.DETAIL-class'>#</a>]</dt>
<dd>
<p>Detail filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.DETAIL-class'><i>The DETAIL Class</i></a>.</p>
</dd>
<dt><b>EDGE_ENHANCE</b> (class) [<a href='#PIL.ImageFilter.EDGE_ENHANCE-class'>#</a>]</dt>
<dd>
<p>Edge enhancement filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.EDGE_ENHANCE-class'><i>The EDGE_ENHANCE Class</i></a>.</p>
</dd>
<dt><b>EDGE_ENHANCE_MORE</b> (class) [<a href='#PIL.ImageFilter.EDGE_ENHANCE_MORE-class'>#</a>]</dt>
<dd>
<p>Stronger edge enhancement filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.EDGE_ENHANCE_MORE-class'><i>The EDGE_ENHANCE_MORE Class</i></a>.</p>
</dd>
<dt><b>EMBOSS</b> (class) [<a href='#PIL.ImageFilter.EMBOSS-class'>#</a>]</dt>
<dd>
<p>Embossing filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.EMBOSS-class'><i>The EMBOSS Class</i></a>.</p>
</dd>
<dt><b>FIND_EDGES</b> (class) [<a href='#PIL.ImageFilter.FIND_EDGES-class'>#</a>]</dt>
<dd>
<p>Edge-finding filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.FIND_EDGES-class'><i>The FIND_EDGES Class</i></a>.</p>
</dd>
<dt><b>Kernel(size, kernel, **options)</b> (class) [<a href='#PIL.ImageFilter.Kernel-class'>#</a>]</dt>
<dd>
<p>Convolution filter kernel.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.Kernel-class'><i>The Kernel Class</i></a>.</p>
</dd>
<dt><b>MaxFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.MaxFilter-class'>#</a>]</dt>
<dd>
<p>Max filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.MaxFilter-class'><i>The MaxFilter Class</i></a>.</p>
</dd>
<dt><b>MedianFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.MedianFilter-class'>#</a>]</dt>
<dd>
<p>Median filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.MedianFilter-class'><i>The MedianFilter Class</i></a>.</p>
</dd>
<dt><b>MinFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.MinFilter-class'>#</a>]</dt>
<dd>
<p>Min filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.MinFilter-class'><i>The MinFilter Class</i></a>.</p>
</dd>
<dt><b>ModeFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.ModeFilter-class'>#</a>]</dt>
<dd>
<p>Mode filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.ModeFilter-class'><i>The ModeFilter Class</i></a>.</p>
</dd>
<dt><b>RankFilter(size, rank)</b> (class) [<a href='#PIL.ImageFilter.RankFilter-class'>#</a>]</dt>
<dd>
<p>Rank filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.RankFilter-class'><i>The RankFilter Class</i></a>.</p>
</dd>
<dt><b>SHARPEN</b> (class) [<a href='#PIL.ImageFilter.SHARPEN-class'>#</a>]</dt>
<dd>
<p>Sharpening filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.SHARPEN-class'><i>The SHARPEN Class</i></a>.</p>
</dd>
<dt><b>SMOOTH</b> (class) [<a href='#PIL.ImageFilter.SMOOTH-class'>#</a>]</dt>
<dd>
<p>Smoothing filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.SMOOTH-class'><i>The SMOOTH Class</i></a>.</p>
</dd>
<dt><b>SMOOTH_MORE</b> (class) [<a href='#PIL.ImageFilter.SMOOTH_MORE-class'>#</a>]</dt>
<dd>
<p>Stronger smoothing filter.</p>
<p>For more information about this class, see <a href='#PIL.ImageFilter.SMOOTH_MORE-class'><i>The SMOOTH_MORE Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.BLUR-class' name='PIL.ImageFilter.BLUR-class'>The BLUR Class</a></h2>
<dl>
<dt><b>BLUR</b> (class) [<a href='#PIL.ImageFilter.BLUR-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.CONTOUR-class' name='PIL.ImageFilter.CONTOUR-class'>The CONTOUR Class</a></h2>
<dl>
<dt><b>CONTOUR</b> (class) [<a href='#PIL.ImageFilter.CONTOUR-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.DETAIL-class' name='PIL.ImageFilter.DETAIL-class'>The DETAIL Class</a></h2>
<dl>
<dt><b>DETAIL</b> (class) [<a href='#PIL.ImageFilter.DETAIL-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.EDGE_ENHANCE-class' name='PIL.ImageFilter.EDGE_ENHANCE-class'>The EDGE_ENHANCE Class</a></h2>
<dl>
<dt><b>EDGE_ENHANCE</b> (class) [<a href='#PIL.ImageFilter.EDGE_ENHANCE-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.EDGE_ENHANCE_MORE-class' name='PIL.ImageFilter.EDGE_ENHANCE_MORE-class'>The EDGE_ENHANCE_MORE Class</a></h2>
<dl>
<dt><b>EDGE_ENHANCE_MORE</b> (class) [<a href='#PIL.ImageFilter.EDGE_ENHANCE_MORE-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.EMBOSS-class' name='PIL.ImageFilter.EMBOSS-class'>The EMBOSS Class</a></h2>
<dl>
<dt><b>EMBOSS</b> (class) [<a href='#PIL.ImageFilter.EMBOSS-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.FIND_EDGES-class' name='PIL.ImageFilter.FIND_EDGES-class'>The FIND_EDGES Class</a></h2>
<dl>
<dt><b>FIND_EDGES</b> (class) [<a href='#PIL.ImageFilter.FIND_EDGES-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.Kernel-class' name='PIL.ImageFilter.Kernel-class'>The Kernel Class</a></h2>
<dl>
<dt><b>Kernel(size, kernel, **options)</b> (class) [<a href='#PIL.ImageFilter.Kernel-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageFilter.Kernel.__init__-method' name='PIL.ImageFilter.Kernel.__init__-method'><b>__init__(size, kernel, **options)</b></a> [<a href='#PIL.ImageFilter.Kernel.__init__-method'>#</a>]</dt>
<dd>
<p>Create a convolution kernel. The current version only
supports 3x3 and 5x5 integer and floating point kernels.
</p><p>
In the current version, kernels can only be applied to
"L" and "RGB" images.
</p><dl>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>kernel</i></dt>
<dd>
</dd>
<dt><i>**options</i></dt>
<dd>
</dd>
<dt><i>scale=</i></dt>
<dd>
</dd>
<dt><i>offset=</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageFilter.MaxFilter-class' name='PIL.ImageFilter.MaxFilter-class'>The MaxFilter Class</a></h2>
<dl>
<dt><b>MaxFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.MaxFilter-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageFilter.MaxFilter.__init__-method' name='PIL.ImageFilter.MaxFilter.__init__-method'><b>__init__(size=3)</b></a> [<a href='#PIL.ImageFilter.MaxFilter.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>size</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageFilter.MedianFilter-class' name='PIL.ImageFilter.MedianFilter-class'>The MedianFilter Class</a></h2>
<dl>
<dt><b>MedianFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.MedianFilter-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageFilter.MedianFilter.__init__-method' name='PIL.ImageFilter.MedianFilter.__init__-method'><b>__init__(size=3)</b></a> [<a href='#PIL.ImageFilter.MedianFilter.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>size</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageFilter.MinFilter-class' name='PIL.ImageFilter.MinFilter-class'>The MinFilter Class</a></h2>
<dl>
<dt><b>MinFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.MinFilter-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageFilter.MinFilter.__init__-method' name='PIL.ImageFilter.MinFilter.__init__-method'><b>__init__(size=3)</b></a> [<a href='#PIL.ImageFilter.MinFilter.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>size</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageFilter.ModeFilter-class' name='PIL.ImageFilter.ModeFilter-class'>The ModeFilter Class</a></h2>
<dl>
<dt><b>ModeFilter(size=3)</b> (class) [<a href='#PIL.ImageFilter.ModeFilter-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageFilter.ModeFilter.__init__-method' name='PIL.ImageFilter.ModeFilter.__init__-method'><b>__init__(size=3)</b></a> [<a href='#PIL.ImageFilter.ModeFilter.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>size</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageFilter.RankFilter-class' name='PIL.ImageFilter.RankFilter-class'>The RankFilter Class</a></h2>
<dl>
<dt><b>RankFilter(size, rank)</b> (class) [<a href='#PIL.ImageFilter.RankFilter-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageFilter.RankFilter.__init__-method' name='PIL.ImageFilter.RankFilter.__init__-method'><b>__init__(size, rank)</b></a> [<a href='#PIL.ImageFilter.RankFilter.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>rank</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageFilter.SHARPEN-class' name='PIL.ImageFilter.SHARPEN-class'>The SHARPEN Class</a></h2>
<dl>
<dt><b>SHARPEN</b> (class) [<a href='#PIL.ImageFilter.SHARPEN-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.SMOOTH-class' name='PIL.ImageFilter.SMOOTH-class'>The SMOOTH Class</a></h2>
<dl>
<dt><b>SMOOTH</b> (class) [<a href='#PIL.ImageFilter.SMOOTH-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageFilter.SMOOTH_MORE-class' name='PIL.ImageFilter.SMOOTH_MORE-class'>The SMOOTH_MORE Class</a></h2>
<dl>
<dt><b>SMOOTH_MORE</b> (class) [<a href='#PIL.ImageFilter.SMOOTH_MORE-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,141 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageFont Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageFont Module</h1>
<dl>
<dt><b>FreeTypeFont(file, size, index=0, encoding=&quot;&quot;)</b> (class) [<a href='#PIL.ImageFont.FreeTypeFont-class'>#</a>]</dt>
<dd>
<p>Wrapper for FreeType fonts.</p>
<p>For more information about this class, see <a href='#PIL.ImageFont.FreeTypeFont-class'><i>The FreeTypeFont Class</i></a>.</p>
</dd>
<dt><b>ImageFont</b> (class) [<a href='#PIL.ImageFont.ImageFont-class'>#</a>]</dt>
<dd>
<p>The ImageFont module defines a class with the same name.</p>
<p>For more information about this class, see <a href='#PIL.ImageFont.ImageFont-class'><i>The ImageFont Class</i></a>.</p>
</dd>
<dt><a id='PIL.ImageFont.load-function' name='PIL.ImageFont.load-function'><b>load(filename)</b></a> [<a href='#PIL.ImageFont.load-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>filename</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageFont.load_default-function' name='PIL.ImageFont.load_default-function'><b>load_default()</b></a> [<a href='#PIL.ImageFont.load_default-function'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageFont.load_path-function' name='PIL.ImageFont.load_path-function'><b>load_path(filename)</b></a> [<a href='#PIL.ImageFont.load_path-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>filename</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
<dt><b>TransposedFont(font, orientation=None)</b> (class) [<a href='#PIL.ImageFont.TransposedFont-class'>#</a>]</dt>
<dd>
<p>Wrapper that creates a transposed font from any existing font
object.</p>
<dl>
<dt><i>font</i></dt>
<dd>
</dd>
<dt><i>orientation</i></dt>
<dd>
</dd>
</dl><br />
<p>For more information about this class, see <a href='#PIL.ImageFont.TransposedFont-class'><i>The TransposedFont Class</i></a>.</p>
</dd>
<dt><a id='PIL.ImageFont.truetype-function' name='PIL.ImageFont.truetype-function'><b>truetype(filename, size, index=0, encoding=&quot;&quot;)</b></a> [<a href='#PIL.ImageFont.truetype-function'>#</a>]</dt>
<dd>
<p>Load a TrueType or OpenType font file, and create a font object.
This function loads a font object from the given file, and creates
a font object for a font of the given size.
</p><p>
This function requires the _imagingft service.
</p><dl>
<dt><i>filename</i></dt>
<dd>
A truetype font file. Under Windows, if the file
is not found in this filename, the loader also looks in Windows
<b>fonts</b> directory
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>index</i></dt>
<dd>
</dd>
<dt><i>encoding</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
<dt>Raises <b>IOError</b>:</dt><dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageFont.FreeTypeFont-class' name='PIL.ImageFont.FreeTypeFont-class'>The FreeTypeFont Class</a></h2>
<dl>
<dt><b>FreeTypeFont(file, size, index=0, encoding=&quot;&quot;)</b> (class) [<a href='#PIL.ImageFont.FreeTypeFont-class'>#</a>]</dt>
<dd>
<p>Wrapper for FreeType fonts. Application code should use the
<b>truetype</b> factory function to create font objects.
</p></dd>
</dl>
<h2><a id='PIL.ImageFont.ImageFont-class' name='PIL.ImageFont.ImageFont-class'>The ImageFont Class</a></h2>
<dl>
<dt><b>ImageFont</b> (class) [<a href='#PIL.ImageFont.ImageFont-class'>#</a>]</dt>
<dd>
<p>The <b>ImageFont</b> module defines a class with the same name.
Instances of this class store bitmap fonts, and are used with the
<b>text</b> method of the <b>ImageDraw</b> class.
</p><p>
PIL uses it's own font file format to store bitmap fonts. You can
use the <b>pilfont</b> utility to convert BDF and PCF font
descriptors (X window font formats) to this format.
</p><p>
Starting with version 1.1.4, PIL can be configured to support
TrueType and OpenType fonts. For earlier version, TrueType
support is only available as part of the imToolkit package
</p></dd>
</dl>
<h2><a id='PIL.ImageFont.TransposedFont-class' name='PIL.ImageFont.TransposedFont-class'>The TransposedFont Class</a></h2>
<dl>
<dt><b>TransposedFont(font, orientation=None)</b> (class) [<a href='#PIL.ImageFont.TransposedFont-class'>#</a>]</dt>
<dd>
<dl>
<dt><i>font</i></dt>
<dd>
</dd>
<dt><i>orientation</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,24 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageGL Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageGL Module</h1>
<h2>Module Contents</h2>
<dl>
<dt><b>TextureFactory</b> (class) [<a href='#PIL.ImageGL.TextureFactory-class'>#</a>]</dt>
<dd>
<p>Texture factory.</p>
<p>For more information about this class, see <a href='#PIL.ImageGL.TextureFactory-class'><i>The TextureFactory Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageGL.TextureFactory-class' name='PIL.ImageGL.TextureFactory-class'>The TextureFactory Class</a></h2>
<dl>
<dt><b>TextureFactory</b> (class) [<a href='#PIL.ImageGL.TextureFactory-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageGrab Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageGrab Module</h1>
<p>(New in 1.1.3) The <b>ImageGrab</b> module can be used to copy
the contents of the screen to a PIL image memory.
</p><p>
The current version works on Windows only.</p>
<h2>Module Contents</h2>
<dl>
<dt><a id='PIL.ImageGrab.grab-function' name='PIL.ImageGrab.grab-function'><b>grab(bbox=None)</b></a> [<a href='#PIL.ImageGrab.grab-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>bbox</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageGrab.grabclipboard-function' name='PIL.ImageGrab.grabclipboard-function'><b>grabclipboard()</b></a> [<a href='#PIL.ImageGrab.grabclipboard-function'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,221 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageOps Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageOps Module</h1>
<p>(New in 1.1.3) The <b>ImageOps</b> module contains a number of
'ready-made' image processing operations. This module is somewhat
experimental, and most operators only work on L and RGB images.
</p><h2>Module Contents</h2>
<dl>
<dt><a id='PIL.ImageOps.autocontrast-function' name='PIL.ImageOps.autocontrast-function'><b>autocontrast(image, cutoff=0, ignore=None)</b></a> [<a href='#PIL.ImageOps.autocontrast-function'>#</a>]</dt>
<dd>
<p>Maximize (normalize) image contrast. This function calculates a
histogram of the input image, removes <i>cutoff</i> percent of the
lightest and darkest pixels from the histogram, and remaps the image
so that the darkest pixel becomes black (0), and the lightest
becomes white (255).
</p><dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>cutoff</i></dt>
<dd>
</dd>
<dt><i>ignore</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.colorize-function' name='PIL.ImageOps.colorize-function'><b>colorize(image, black, white)</b></a> [<a href='#PIL.ImageOps.colorize-function'>#</a>]</dt>
<dd>
<p>Colorize grayscale image. The <i>black</i> and <i>white</i>
arguments should be RGB tuples; this function calculates a colour
wedge mapping all black pixels in the source image to the first
colour, and all white pixels to the second colour.
</p><dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>black</i></dt>
<dd>
</dd>
<dt><i>white</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.crop-function' name='PIL.ImageOps.crop-function'><b>crop(image, border=0)</b></a> [<a href='#PIL.ImageOps.crop-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>border</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.deform-function' name='PIL.ImageOps.deform-function'><b>deform(image, deformer, resample=Image.BILINEAR)</b></a> [<a href='#PIL.ImageOps.deform-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>deformer</i></dt>
<dd>
</dd>
<dt><i>resample</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.equalize-function' name='PIL.ImageOps.equalize-function'><b>equalize(image, mask=None)</b></a> [<a href='#PIL.ImageOps.equalize-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>mask</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.expand-function' name='PIL.ImageOps.expand-function'><b>expand(image, border=0, fill=0)</b></a> [<a href='#PIL.ImageOps.expand-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>border</i></dt>
<dd>
</dd>
<dt><i>fill</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.fit-function' name='PIL.ImageOps.fit-function'><b>fit(image, size, method=Image.NEAREST, bleed=0.0, centering=(0.5, 0.5))</b></a> [<a href='#PIL.ImageOps.fit-function'>#</a>]</dt>
<dd>
<p>Returns a sized and cropped version of the image, cropped to the
requested aspect ratio and size.
</p><p>
The <b>fit</b> function was contributed by Kevin Cazabon.
</p><dl>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>method</i></dt>
<dd>
</dd>
<dt><i>bleed</i></dt>
<dd>
</dd>
<dt><i>centering</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.flip-function' name='PIL.ImageOps.flip-function'><b>flip(image)</b></a> [<a href='#PIL.ImageOps.flip-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.grayscale-function' name='PIL.ImageOps.grayscale-function'><b>grayscale(image)</b></a> [<a href='#PIL.ImageOps.grayscale-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.invert-function' name='PIL.ImageOps.invert-function'><b>invert(image)</b></a> [<a href='#PIL.ImageOps.invert-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.mirror-function' name='PIL.ImageOps.mirror-function'><b>mirror(image)</b></a> [<a href='#PIL.ImageOps.mirror-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.posterize-function' name='PIL.ImageOps.posterize-function'><b>posterize(image, bits)</b></a> [<a href='#PIL.ImageOps.posterize-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>bits</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageOps.solarize-function' name='PIL.ImageOps.solarize-function'><b>solarize(image, threshold=128)</b></a> [<a href='#PIL.ImageOps.solarize-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>threshold</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImagePalette Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImagePalette Module</h1>
<dl>
<dt><b>ImagePalette(mode=&quot;RGB&quot;, palette=None)</b> (class) [<a href='#PIL.ImagePalette.ImagePalette-class'>#</a>]</dt>
<dd>
<p>Colour palette wrapper for palette mapped images.</p>
<p>For more information about this class, see <a href='#PIL.ImagePalette.ImagePalette-class'><i>The ImagePalette Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImagePalette.ImagePalette-class' name='PIL.ImagePalette.ImagePalette-class'>The ImagePalette Class</a></h2>
<dl>
<dt><b>ImagePalette(mode=&quot;RGB&quot;, palette=None)</b> (class) [<a href='#PIL.ImagePalette.ImagePalette-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,54 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImagePath Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImagePath Module</h1>
<dl>
<dt><b>Path(xy)</b> (class) [<a href='#PIL.ImagePath.Path-class'>#</a>]</dt>
<dd>
<p>Path wrapper.</p>
<p>For more information about this class, see <a href='#PIL.ImagePath.Path-class'><i>The Path Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImagePath.Path-class' name='PIL.ImagePath.Path-class'>The Path Class</a></h2>
<dl>
<dt><b>Path(xy)</b> (class) [<a href='#PIL.ImagePath.Path-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImagePath.Path.__init__-method' name='PIL.ImagePath.Path.__init__-method'><b>__init__(xy)</b></a> [<a href='#PIL.ImagePath.Path.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>xy</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImagePath.Path.compact-method' name='PIL.ImagePath.Path.compact-method'><b>compact(distance=2)</b></a> [<a href='#PIL.ImagePath.Path.compact-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImagePath.Path.getbbox-method' name='PIL.ImagePath.Path.getbbox-method'><b>getbbox()</b></a> [<a href='#PIL.ImagePath.Path.getbbox-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImagePath.Path.map-method' name='PIL.ImagePath.Path.map-method'><b>map(function)</b></a> [<a href='#PIL.ImagePath.Path.map-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImagePath.Path.tolist-method' name='PIL.ImagePath.Path.tolist-method'><b>tolist(flat=0)</b></a> [<a href='#PIL.ImagePath.Path.tolist-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>flat</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImagePath.Path.transform-method' name='PIL.ImagePath.Path.transform-method'><b>transform(matrix)</b></a> [<a href='#PIL.ImagePath.Path.transform-method'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,32 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageSequence Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageSequence Module</h1>
<dl>
<dt><b>Iterator(im)</b> (class) [<a href='#PIL.ImageSequence.Iterator-class'>#</a>]</dt>
<dd>
<p>This class implements an iterator object that can be used to loop
over an image sequence.</p>
<p>For more information about this class, see <a href='#PIL.ImageSequence.Iterator-class'><i>The Iterator Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageSequence.Iterator-class' name='PIL.ImageSequence.Iterator-class'>The Iterator Class</a></h2>
<dl>
<dt><b>Iterator(im)</b> (class) [<a href='#PIL.ImageSequence.Iterator-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageSequence.Iterator.__init__-method' name='PIL.ImageSequence.Iterator.__init__-method'><b>__init__(im)</b></a> [<a href='#PIL.ImageSequence.Iterator.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,37 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageStat Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageStat Module</h1>
<p>The <b>ImageStat</b> module calculates global statistics for an
image, or a region of an image.
</p><h2>Module Contents</h2>
<dl>
<dt><b>Stat(image, mask=None)</b> (class) [<a href='#PIL.ImageStat.Stat-class'>#</a>]</dt>
<dd>
<p>Calculate statistics for the given image.</p>
<p>For more information about this class, see <a href='#PIL.ImageStat.Stat-class'><i>The Stat Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageStat.Stat-class' name='PIL.ImageStat.Stat-class'>The Stat Class</a></h2>
<dl>
<dt><b>Stat(image, mask=None)</b> (class) [<a href='#PIL.ImageStat.Stat-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageStat.Stat.__init__-method' name='PIL.ImageStat.Stat.__init__-method'><b>__init__(image, mask=None)</b></a> [<a href='#PIL.ImageStat.Stat.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>mask</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,141 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageTk Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageTk Module</h1>
<p>The <b>ImageTk</b> module contains support to create and modify
Tkinter <b>BitmapImage</b> and <b>PhotoImage</b> objects.
</p><p>
For examples, see the demo programs in the <i>Scripts</i>
directory.
</p><h2>Module Contents</h2>
<dl>
<dt><b>BitmapImage(image=None, **options)</b> (class) [<a href='#PIL.ImageTk.BitmapImage-class'>#</a>]</dt>
<dd>
<p>Create a Tkinter-compatible bitmap image.</p>
<p>For more information about this class, see <a href='#PIL.ImageTk.BitmapImage-class'><i>The BitmapImage Class</i></a>.</p>
</dd>
<dt><a id='PIL.ImageTk.getimage-function' name='PIL.ImageTk.getimage-function'><b>getimage(photo)</b></a> [<a href='#PIL.ImageTk.getimage-function'>#</a>]</dt>
<dd>
</dd>
<dt><b>PhotoImage(image=None, size=None, **options)</b> (class) [<a href='#PIL.ImageTk.PhotoImage-class'>#</a>]</dt>
<dd>
<p>Creates a Tkinter-compatible photo image.</p>
<p>For more information about this class, see <a href='#PIL.ImageTk.PhotoImage-class'><i>The PhotoImage Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageTk.BitmapImage-class' name='PIL.ImageTk.BitmapImage-class'>The BitmapImage Class</a></h2>
<dl>
<dt><b>BitmapImage(image=None, **options)</b> (class) [<a href='#PIL.ImageTk.BitmapImage-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageTk.BitmapImage.__init__-method' name='PIL.ImageTk.BitmapImage.__init__-method'><b>__init__(image=None, **options)</b></a> [<a href='#PIL.ImageTk.BitmapImage.__init__-method'>#</a>]</dt>
<dd>
<p>Create a Tkinter-compatible bitmap image.
</p><p>
The given image must have mode "1". Pixels having value 0 are
treated as transparent. Options, if any, are passed on to
Tkinter. The most commonly used option is <b>foreground</b>,
which is used to specify the colour for the non-transparent
parts. See the Tkinter documentation for information on how to
specify colours.
</p><dl>
<dt><i>image</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageTk.BitmapImage.__str__-method' name='PIL.ImageTk.BitmapImage.__str__-method'><b>__str__()</b></a> [<a href='#PIL.ImageTk.BitmapImage.__str__-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageTk.BitmapImage.height-method' name='PIL.ImageTk.BitmapImage.height-method'><b>height()</b></a> [<a href='#PIL.ImageTk.BitmapImage.height-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageTk.BitmapImage.width-method' name='PIL.ImageTk.BitmapImage.width-method'><b>width()</b></a> [<a href='#PIL.ImageTk.BitmapImage.width-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageTk.PhotoImage-class' name='PIL.ImageTk.PhotoImage-class'>The PhotoImage Class</a></h2>
<dl>
<dt><b>PhotoImage(image=None, size=None, **options)</b> (class) [<a href='#PIL.ImageTk.PhotoImage-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.ImageTk.PhotoImage.__init__-method' name='PIL.ImageTk.PhotoImage.__init__-method'><b>__init__(image=None, size=None, **options)</b></a> [<a href='#PIL.ImageTk.PhotoImage.__init__-method'>#</a>]</dt>
<dd>
<p>Create a photo image object. The constructor takes either
a PIL image, or a mode and a size. Alternatively, you can
use the <b>file</b> or <b>data</b> options to initialize
the photo image object.
</p><p>
</p><dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
<dt><i>file=</i></dt>
<dd>
</dd>
<dt><i>data=</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageTk.PhotoImage.__str__-method' name='PIL.ImageTk.PhotoImage.__str__-method'><b>__str__()</b></a> [<a href='#PIL.ImageTk.PhotoImage.__str__-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageTk.PhotoImage.height-method' name='PIL.ImageTk.PhotoImage.height-method'><b>height()</b></a> [<a href='#PIL.ImageTk.PhotoImage.height-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageTk.PhotoImage.paste-method' name='PIL.ImageTk.PhotoImage.paste-method'><b>paste(im, box=None)</b></a> [<a href='#PIL.ImageTk.PhotoImage.paste-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt><i>box</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageTk.PhotoImage.width-method' name='PIL.ImageTk.PhotoImage.width-method'><b>width()</b></a> [<a href='#PIL.ImageTk.PhotoImage.width-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,140 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageTransform Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageTransform Module</h1>
<dl>
<dt><b>AffineTransform</b> (class) [<a href='#PIL.ImageTransform.AffineTransform-class'>#</a>]</dt>
<dd>
<p>Define an affine image transform.</p>
<dl>
<dt><i>matrix</i></dt>
<dd>
A 6-tuple (<i>a, b, c, d, e, f</i>) containing
the first two rows from an affine transform matrix.
</dd>
</dl><br />
<p>For more information about this class, see <a href='#PIL.ImageTransform.AffineTransform-class'><i>The AffineTransform Class</i></a>.</p>
</dd>
<dt><b>ExtentTransform</b> (class) [<a href='#PIL.ImageTransform.ExtentTransform-class'>#</a>]</dt>
<dd>
<p>Define a transform to extract a subregion from an image.</p>
<dl>
<dt><i>bbox</i></dt>
<dd>
A 4-tuple (<i>x0, y0, x1, y1</i>) which specifies
two points in the input image's coordinate system.
</dd>
</dl><br />
<p>For more information about this class, see <a href='#PIL.ImageTransform.ExtentTransform-class'><i>The ExtentTransform Class</i></a>.</p>
</dd>
<dt><b>MeshTransform</b> (class) [<a href='#PIL.ImageTransform.MeshTransform-class'>#</a>]</dt>
<dd>
<p>Define an mesh image transform.</p>
<dl>
<dt><i>data</i></dt>
<dd>
</dd>
</dl><br />
<p>For more information about this class, see <a href='#PIL.ImageTransform.MeshTransform-class'><i>The MeshTransform Class</i></a>.</p>
</dd>
<dt><b>QuadTransform</b> (class) [<a href='#PIL.ImageTransform.QuadTransform-class'>#</a>]</dt>
<dd>
<p>Define an quad image transform.</p>
<dl>
<dt><i>xy</i></dt>
<dd>
An 8-tuple (<i>x0, y0, x1, y1, x2, y2, y3, y3</i>) which
contain the upper left, lower left, lower right, and upper right
corner of the source quadrilateral.
</dd>
</dl><br />
<p>For more information about this class, see <a href='#PIL.ImageTransform.QuadTransform-class'><i>The QuadTransform Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageTransform.AffineTransform-class' name='PIL.ImageTransform.AffineTransform-class'>The AffineTransform Class</a></h2>
<dl>
<dt><b>AffineTransform</b> (class) [<a href='#PIL.ImageTransform.AffineTransform-class'>#</a>]</dt>
<dd>
<p>Define an affine image transform.
</p><p>
This function takes a 6-tuple (<i>a, b, c, d, e, f</i>) which
contain the first two rows from an affine transform matrix. For
each pixel (<i>x, y</i>) in the output image, the new value is
taken from a position (a <i>x</i> + b <i>y</i> + c,
d <i>x</i> + e <i>y</i> + f) in the input image, rounded to
nearest pixel.
</p><p>
This function can be used to scale, translate, rotate, and shear the
original image.
</p><dl>
<dt><i>matrix</i></dt>
<dd>
A 6-tuple (<i>a, b, c, d, e, f</i>) containing
the first two rows from an affine transform matrix.
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageTransform.ExtentTransform-class' name='PIL.ImageTransform.ExtentTransform-class'>The ExtentTransform Class</a></h2>
<dl>
<dt><b>ExtentTransform</b> (class) [<a href='#PIL.ImageTransform.ExtentTransform-class'>#</a>]</dt>
<dd>
<p>Define a transform to extract a subregion from an image.
</p><p>
Maps a rectangle (defined by two corners) from the image to a
rectangle of the given size. The resulting image will contain
data sampled from between the corners, such that (<i>x0, y0</i>)
in the input image will end up at (0,0) in the output image,
and (<i>x1, y1</i>) at <i>size</i>.
</p><p>
This method can be used to crop, stretch, shrink, or mirror an
arbitrary rectangle in the current image. It is slightly slower than
<b>crop</b>, but about as fast as a corresponding <b>resize</b>
operation.
</p><dl>
<dt><i>bbox</i></dt>
<dd>
A 4-tuple (<i>x0, y0, x1, y1</i>) which specifies
two points in the input image's coordinate system.
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageTransform.MeshTransform-class' name='PIL.ImageTransform.MeshTransform-class'>The MeshTransform Class</a></h2>
<dl>
<dt><b>MeshTransform</b> (class) [<a href='#PIL.ImageTransform.MeshTransform-class'>#</a>]</dt>
<dd>
<dl>
<dt><i>data</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageTransform.QuadTransform-class' name='PIL.ImageTransform.QuadTransform-class'>The QuadTransform Class</a></h2>
<dl>
<dt><b>QuadTransform</b> (class) [<a href='#PIL.ImageTransform.QuadTransform-class'>#</a>]</dt>
<dd>
<p>Define an quad image transform.
</p><p>
Maps a quadrilateral (a region defined by four corners) from the
image to a rectangle of the given size.
</p><dl>
<dt><i>xy</i></dt>
<dd>
An 8-tuple (<i>x0, y0, x1, y1, x2, y2, y3, y3</i>) which
contain the upper left, lower left, lower right, and upper right
corner of the source quadrilateral.
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,141 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImageWin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImageWin Module</h1>
<dl>
<dt><b>Dib(image, size=None)</b> (class) [<a href='#PIL.ImageWin.Dib-class'>#</a>]</dt>
<dd>
<p>Create a Windows bitmap with the given mode and size.</p>
<p>For more information about this class, see <a href='#PIL.ImageWin.Dib-class'><i>The Dib Class</i></a>.</p>
</dd>
<dt><b>HDC(dc)</b> (class) [<a href='#PIL.ImageWin.HDC-class'>#</a>]</dt>
<dd>
<p>The ImageWin module contains support to create and display
images under Windows 95/98, NT, 2000 and later.</p>
<p>For more information about this class, see <a href='#PIL.ImageWin.HDC-class'><i>The HDC Class</i></a>.</p>
</dd>
<dt><b>ImageWindow(image, title=&quot;PIL&quot;)</b> (class) [<a href='#PIL.ImageWin.ImageWindow-class'>#</a>]</dt>
<dd>
<p>Create an image window which displays the given image.</p>
<p>For more information about this class, see <a href='#PIL.ImageWin.ImageWindow-class'><i>The ImageWindow Class</i></a>.</p>
</dd>
<dt><b>Window(title=&quot;PIL&quot;, width=None, height=None)</b> (class) [<a href='#PIL.ImageWin.Window-class'>#</a>]</dt>
<dd>
<p>Create a Window with the given title size.</p>
<p>For more information about this class, see <a href='#PIL.ImageWin.Window-class'><i>The Window Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImageWin.Dib-class' name='PIL.ImageWin.Dib-class'>The Dib Class</a></h2>
<dl>
<dt><b>Dib(image, size=None)</b> (class) [<a href='#PIL.ImageWin.Dib-class'>#</a>]</dt>
<dd>
<p>Create a Windows bitmap with the given mode and size. The mode can
be one of "1", "L", "P", or "RGB".
If the display requires a palette, this constructor creates a
suitable palette and associates it with the image. For an "L" image,
128 greylevels are allocated. For an "RGB" image, a 6x6x6 colour
cube is used, together with 20 greylevels.
To make sure that palettes work properly under Windows, you must
call the <b>palette</b> method upon certain events from Windows.
</p></dd>
<dt><a id='PIL.ImageWin.Dib.__init__-method' name='PIL.ImageWin.Dib.__init__-method'><b>__init__(image, size=None)</b></a> [<a href='#PIL.ImageWin.Dib.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>image</i></dt>
<dd>
</dd>
<dt><i>size</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageWin.Dib.expose-method' name='PIL.ImageWin.Dib.expose-method'><b>expose(handle)</b></a> [<a href='#PIL.ImageWin.Dib.expose-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>handle</i></dt>
<dd>
Device context (HDC), cast to a Python integer,
or a HDC or HWND instance. In PythonWin, you can use the
<b>GetHandleAttrib</b> method of the <b>CDC</b> class to get
a suitable handle.
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageWin.Dib.fromstring-method' name='PIL.ImageWin.Dib.fromstring-method'><b>fromstring(buffer)</b></a> [<a href='#PIL.ImageWin.Dib.fromstring-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>buffer</i></dt>
<dd>
A string buffer containing display data (usually
data returned from <b>tostring</b>)
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageWin.Dib.paste-method' name='PIL.ImageWin.Dib.paste-method'><b>paste(im, box=None)</b></a> [<a href='#PIL.ImageWin.Dib.paste-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt><i>box</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageWin.Dib.query_palette-method' name='PIL.ImageWin.Dib.query_palette-method'><b>query_palette(handle)</b></a> [<a href='#PIL.ImageWin.Dib.query_palette-method'>#</a>]</dt>
<dd>
<p>Installs the palette associated with the image in the
given device context.
</p><p>
This method should be called upon <b>QUERYNEWPALETTE</b>
and <b>PALETTECHANGED</b> events from Windows. If this
method returns a non-zero value, one or more display
palette entries were changed, and the image should be
redrawn.
</p><dl>
<dt><i>handle</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><a id='PIL.ImageWin.Dib.tostring-method' name='PIL.ImageWin.Dib.tostring-method'><b>tostring()</b></a> [<a href='#PIL.ImageWin.Dib.tostring-method'>#</a>]</dt>
<dd>
<dl>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
<h2><a id='PIL.ImageWin.HDC-class' name='PIL.ImageWin.HDC-class'>The HDC Class</a></h2>
<dl>
<dt><b>HDC(dc)</b> (class) [<a href='#PIL.ImageWin.HDC-class'>#</a>]</dt>
<dd>
<p>The <b>ImageWin</b> module contains support to create and display
images under Windows 95/98, NT, 2000 and later.
</p></dd>
</dl>
<h2><a id='PIL.ImageWin.ImageWindow-class' name='PIL.ImageWin.ImageWindow-class'>The ImageWindow Class</a></h2>
<dl>
<dt><b>ImageWindow(image, title=&quot;PIL&quot;)</b> (class) [<a href='#PIL.ImageWin.ImageWindow-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.ImageWin.Window-class' name='PIL.ImageWin.Window-class'>The Window Class</a></h2>
<dl>
<dt><b>Window(title=&quot;PIL&quot;, width=None, height=None)</b> (class) [<a href='#PIL.ImageWin.Window-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.ImtImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.ImtImagePlugin Module</h1>
<dl>
<dt><b>ImtImageFile</b> (class) [<a href='#PIL.ImtImagePlugin.ImtImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for IM Tools images.</p>
<p>For more information about this class, see <a href='#PIL.ImtImagePlugin.ImtImageFile-class'><i>The ImtImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.ImtImagePlugin.ImtImageFile-class' name='PIL.ImtImagePlugin.ImtImageFile-class'>The ImtImageFile Class</a></h2>
<dl>
<dt><b>ImtImageFile</b> (class) [<a href='#PIL.ImtImagePlugin.ImtImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,36 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.IptcImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.IptcImagePlugin Module</h1>
<dl>
<dt><a id='PIL.IptcImagePlugin.getiptcinfo-function' name='PIL.IptcImagePlugin.getiptcinfo-function'><b>getiptcinfo(im)</b></a> [<a href='#PIL.IptcImagePlugin.getiptcinfo-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>im</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><b>IptcImageFile</b> (class) [<a href='#PIL.IptcImagePlugin.IptcImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for IPTC/NAA datastreams.</p>
<p>For more information about this class, see <a href='#PIL.IptcImagePlugin.IptcImageFile-class'><i>The IptcImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.IptcImagePlugin.IptcImageFile-class' name='PIL.IptcImagePlugin.IptcImageFile-class'>The IptcImageFile Class</a></h2>
<dl>
<dt><b>IptcImageFile</b> (class) [<a href='#PIL.IptcImagePlugin.IptcImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for IPTC/NAA datastreams. To read IPTC/NAA fields
from TIFF and JPEG files, use the <b>getiptcinfo</b> function.
</p></dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.JpegImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.JpegImagePlugin Module</h1>
<dl>
<dt><b>JpegImageFile</b> (class) [<a href='#PIL.JpegImagePlugin.JpegImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for JPEG and JFIF images.</p>
<p>For more information about this class, see <a href='#PIL.JpegImagePlugin.JpegImageFile-class'><i>The JpegImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.JpegImagePlugin.JpegImageFile-class' name='PIL.JpegImagePlugin.JpegImageFile-class'>The JpegImageFile Class</a></h2>
<dl>
<dt><b>JpegImageFile</b> (class) [<a href='#PIL.JpegImagePlugin.JpegImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.McIdasImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.McIdasImagePlugin Module</h1>
<dl>
<dt><b>McIdasImageFile</b> (class) [<a href='#PIL.McIdasImagePlugin.McIdasImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for McIdas area images.</p>
<p>For more information about this class, see <a href='#PIL.McIdasImagePlugin.McIdasImageFile-class'><i>The McIdasImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.McIdasImagePlugin.McIdasImageFile-class' name='PIL.McIdasImagePlugin.McIdasImageFile-class'>The McIdasImageFile Class</a></h2>
<dl>
<dt><b>McIdasImageFile</b> (class) [<a href='#PIL.McIdasImagePlugin.McIdasImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.MicImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.MicImagePlugin Module</h1>
<dl>
<dt><b>MicImageFile</b> (class) [<a href='#PIL.MicImagePlugin.MicImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Microsoft's Image Composer file format.</p>
<p>For more information about this class, see <a href='#PIL.MicImagePlugin.MicImageFile-class'><i>The MicImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.MicImagePlugin.MicImageFile-class' name='PIL.MicImagePlugin.MicImageFile-class'>The MicImageFile Class</a></h2>
<dl>
<dt><b>MicImageFile</b> (class) [<a href='#PIL.MicImagePlugin.MicImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.MpegImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.MpegImagePlugin Module</h1>
<dl>
<dt><b>MpegImageFile</b> (class) [<a href='#PIL.MpegImagePlugin.MpegImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for MPEG streams.</p>
<p>For more information about this class, see <a href='#PIL.MpegImagePlugin.MpegImageFile-class'><i>The MpegImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.MpegImagePlugin.MpegImageFile-class' name='PIL.MpegImagePlugin.MpegImageFile-class'>The MpegImageFile Class</a></h2>
<dl>
<dt><b>MpegImageFile</b> (class) [<a href='#PIL.MpegImagePlugin.MpegImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.MspImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.MspImagePlugin Module</h1>
<dl>
<dt><b>MspImageFile</b> (class) [<a href='#PIL.MspImagePlugin.MspImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Windows MSP images.</p>
<p>For more information about this class, see <a href='#PIL.MspImagePlugin.MspImageFile-class'><i>The MspImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.MspImagePlugin.MspImageFile-class' name='PIL.MspImagePlugin.MspImageFile-class'>The MspImageFile Class</a></h2>
<dl>
<dt><b>MspImageFile</b> (class) [<a href='#PIL.MspImagePlugin.MspImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,39 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.OleFileIO Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.OleFileIO Module</h1>
<dl>
<dt><b>OleFileIO(filename=None)</b> (class) [<a href='#PIL.OleFileIO.OleFileIO-class'>#</a>]</dt>
<dd>
<p>This class encapsulates the interface to an OLE 2 structured
storage file.</p>
<p>For more information about this class, see <a href='#PIL.OleFileIO.OleFileIO-class'><i>The OleFileIO Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.OleFileIO.OleFileIO-class' name='PIL.OleFileIO.OleFileIO-class'>The OleFileIO Class</a></h2>
<dl>
<dt><b>OleFileIO(filename=None)</b> (class) [<a href='#PIL.OleFileIO.OleFileIO-class'>#</a>]</dt>
<dd>
<p>This class encapsulates the interface to an OLE 2 structured
storage file. Use the <a class="link" href="link:listdir"><b>listdir</b></a> and <a class="link" href="link:openstream"><b>openstream</b></a>
methods to access the contents of this file.
</p></dd>
<dt><a id='PIL.OleFileIO.OleFileIO.getproperties-method' name='PIL.OleFileIO.OleFileIO.getproperties-method'><b>getproperties(filename)</b></a> [<a href='#PIL.OleFileIO.OleFileIO.getproperties-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.OleFileIO.OleFileIO.listdir-method' name='PIL.OleFileIO.OleFileIO.listdir-method'><b>listdir()</b></a> [<a href='#PIL.OleFileIO.OleFileIO.listdir-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.OleFileIO.OleFileIO.open-method' name='PIL.OleFileIO.OleFileIO.open-method'><b>open(filename)</b></a> [<a href='#PIL.OleFileIO.OleFileIO.open-method'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.OleFileIO.OleFileIO.openstream-method' name='PIL.OleFileIO.OleFileIO.openstream-method'><b>openstream(filename)</b></a> [<a href='#PIL.OleFileIO.OleFileIO.openstream-method'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PSDraw Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PSDraw Module</h1>
<dl>
<dt><b>PSDraw(fp=None)</b> (class) [<a href='#PIL.PSDraw.PSDraw-class'>#</a>]</dt>
<dd>
<p>Simple Postscript graphics interface.</p>
<p>For more information about this class, see <a href='#PIL.PSDraw.PSDraw-class'><i>The PSDraw Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PSDraw.PSDraw-class' name='PIL.PSDraw.PSDraw-class'>The PSDraw Class</a></h2>
<dl>
<dt><b>PSDraw(fp=None)</b> (class) [<a href='#PIL.PSDraw.PSDraw-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PaletteFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PaletteFile Module</h1>
<dl>
<dt><b>PaletteFile(fp)</b> (class) [<a href='#PIL.PaletteFile.PaletteFile-class'>#</a>]</dt>
<dd>
<p>File handler for Teragon-style palette files.</p>
<p>For more information about this class, see <a href='#PIL.PaletteFile.PaletteFile-class'><i>The PaletteFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PaletteFile.PaletteFile-class' name='PIL.PaletteFile.PaletteFile-class'>The PaletteFile Class</a></h2>
<dl>
<dt><b>PaletteFile(fp)</b> (class) [<a href='#PIL.PaletteFile.PaletteFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,16 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PalmImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PalmImagePlugin Module</h1>
<h2>Module Contents</h2>
<dl>
<dt><a id='PIL.PalmImagePlugin._save-function' name='PIL.PalmImagePlugin._save-function'><b>_save(im, fp, filename, check=0)</b></a> [<a href='#PIL.PalmImagePlugin._save-function'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PcdImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PcdImagePlugin Module</h1>
<dl>
<dt><b>PcdImageFile</b> (class) [<a href='#PIL.PcdImagePlugin.PcdImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for PhotoCD images.</p>
<p>For more information about this class, see <a href='#PIL.PcdImagePlugin.PcdImageFile-class'><i>The PcdImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PcdImagePlugin.PcdImageFile-class' name='PIL.PcdImagePlugin.PcdImageFile-class'>The PcdImageFile Class</a></h2>
<dl>
<dt><b>PcdImageFile</b> (class) [<a href='#PIL.PcdImagePlugin.PcdImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PcfFontFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PcfFontFile Module</h1>
<dl>
<dt><b>PcfFontFile(fp)</b> (class) [<a href='#PIL.PcfFontFile.PcfFontFile-class'>#</a>]</dt>
<dd>
<p>Font file plugin for the X11 PCF format.</p>
<p>For more information about this class, see <a href='#PIL.PcfFontFile.PcfFontFile-class'><i>The PcfFontFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PcfFontFile.PcfFontFile-class' name='PIL.PcfFontFile.PcfFontFile-class'>The PcfFontFile Class</a></h2>
<dl>
<dt><b>PcfFontFile(fp)</b> (class) [<a href='#PIL.PcfFontFile.PcfFontFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PcxImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PcxImagePlugin Module</h1>
<dl>
<dt><b>PcxImageFile</b> (class) [<a href='#PIL.PcxImagePlugin.PcxImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Paintbrush images.</p>
<p>For more information about this class, see <a href='#PIL.PcxImagePlugin.PcxImageFile-class'><i>The PcxImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PcxImagePlugin.PcxImageFile-class' name='PIL.PcxImagePlugin.PcxImageFile-class'>The PcxImageFile Class</a></h2>
<dl>
<dt><b>PcxImageFile</b> (class) [<a href='#PIL.PcxImagePlugin.PcxImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,16 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PdfImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PdfImagePlugin Module</h1>
<h2>Module Contents</h2>
<dl>
<dt><a id='PIL.PdfImagePlugin._save-function' name='PIL.PdfImagePlugin._save-function'><b>_save(im, fp, filename)</b></a> [<a href='#PIL.PdfImagePlugin._save-function'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PixarImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PixarImagePlugin Module</h1>
<dl>
<dt><b>PixarImageFile</b> (class) [<a href='#PIL.PixarImagePlugin.PixarImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for PIXAR raster images.</p>
<p>For more information about this class, see <a href='#PIL.PixarImagePlugin.PixarImageFile-class'><i>The PixarImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PixarImagePlugin.PixarImageFile-class' name='PIL.PixarImagePlugin.PixarImageFile-class'>The PixarImageFile Class</a></h2>
<dl>
<dt><b>PixarImageFile</b> (class) [<a href='#PIL.PixarImagePlugin.PixarImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PngImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PngImagePlugin Module</h1>
<dl>
<dt><b>PngImageFile</b> (class) [<a href='#PIL.PngImagePlugin.PngImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for PNG images.</p>
<p>For more information about this class, see <a href='#PIL.PngImagePlugin.PngImageFile-class'><i>The PngImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PngImagePlugin.PngImageFile-class' name='PIL.PngImagePlugin.PngImageFile-class'>The PngImageFile Class</a></h2>
<dl>
<dt><b>PngImageFile</b> (class) [<a href='#PIL.PngImagePlugin.PngImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PpmImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PpmImagePlugin Module</h1>
<dl>
<dt><b>PpmImageFile</b> (class) [<a href='#PIL.PpmImagePlugin.PpmImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for PBM, PGM, and PPM images.</p>
<p>For more information about this class, see <a href='#PIL.PpmImagePlugin.PpmImageFile-class'><i>The PpmImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PpmImagePlugin.PpmImageFile-class' name='PIL.PpmImagePlugin.PpmImageFile-class'>The PpmImageFile Class</a></h2>
<dl>
<dt><b>PpmImageFile</b> (class) [<a href='#PIL.PpmImagePlugin.PpmImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.PsdImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.PsdImagePlugin Module</h1>
<dl>
<dt><b>PsdImageFile</b> (class) [<a href='#PIL.PsdImagePlugin.PsdImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Photoshop images.</p>
<p>For more information about this class, see <a href='#PIL.PsdImagePlugin.PsdImageFile-class'><i>The PsdImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.PsdImagePlugin.PsdImageFile-class' name='PIL.PsdImagePlugin.PsdImageFile-class'>The PsdImageFile Class</a></h2>
<dl>
<dt><b>PsdImageFile</b> (class) [<a href='#PIL.PsdImagePlugin.PsdImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.SgiImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.SgiImagePlugin Module</h1>
<dl>
<dt><b>SgiImageFile</b> (class) [<a href='#PIL.SgiImagePlugin.SgiImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for SGI images.</p>
<p>For more information about this class, see <a href='#PIL.SgiImagePlugin.SgiImageFile-class'><i>The SgiImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.SgiImagePlugin.SgiImageFile-class' name='PIL.SgiImagePlugin.SgiImageFile-class'>The SgiImageFile Class</a></h2>
<dl>
<dt><b>SgiImageFile</b> (class) [<a href='#PIL.SgiImagePlugin.SgiImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,28 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.SpiderImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.SpiderImagePlugin Module</h1>
<p>Image plugin for the Spider image format. This format is is used
by the SPIDER software, in processing image data from electron
microscopy and tomography.</p>
<h2>Module Contents</h2>
<dl>
<dt><b>SpiderImageFile</b> (class) [<a href='#PIL.SpiderImagePlugin.SpiderImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the SPIDER format.</p>
<p>For more information about this class, see <a href='#PIL.SpiderImagePlugin.SpiderImageFile-class'><i>The SpiderImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.SpiderImagePlugin.SpiderImageFile-class' name='PIL.SpiderImagePlugin.SpiderImageFile-class'>The SpiderImageFile Class</a></h2>
<dl>
<dt><b>SpiderImageFile</b> (class) [<a href='#PIL.SpiderImagePlugin.SpiderImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for the SPIDER format.</p>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.SunImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.SunImagePlugin Module</h1>
<dl>
<dt><b>SunImageFile</b> (class) [<a href='#PIL.SunImagePlugin.SunImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Sun raster files.</p>
<p>For more information about this class, see <a href='#PIL.SunImagePlugin.SunImageFile-class'><i>The SunImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.SunImagePlugin.SunImageFile-class' name='PIL.SunImagePlugin.SunImageFile-class'>The SunImageFile Class</a></h2>
<dl>
<dt><b>SunImageFile</b> (class) [<a href='#PIL.SunImagePlugin.SunImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,35 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.TarIO Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.TarIO Module</h1>
<dl>
<dt><b>TarIO(tarfile, file)</b> (class) [<a href='#PIL.TarIO.TarIO-class'>#</a>]</dt>
<dd>
<p>A file object that provides read access to a given member of a TAR
file.</p>
<p>For more information about this class, see <a href='#PIL.TarIO.TarIO-class'><i>The TarIO Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.TarIO.TarIO-class' name='PIL.TarIO.TarIO-class'>The TarIO Class</a></h2>
<dl>
<dt><b>TarIO(tarfile, file)</b> (class) [<a href='#PIL.TarIO.TarIO-class'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.TarIO.TarIO.__init__-method' name='PIL.TarIO.TarIO.__init__-method'><b>__init__(tarfile, file)</b></a> [<a href='#PIL.TarIO.TarIO.__init__-method'>#</a>]</dt>
<dd>
<dl>
<dt><i>tarfile</i></dt>
<dd>
</dd>
<dt><i>file</i></dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.TgaImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.TgaImagePlugin Module</h1>
<dl>
<dt><b>TgaImageFile</b> (class) [<a href='#PIL.TgaImagePlugin.TgaImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Targa files.</p>
<p>For more information about this class, see <a href='#PIL.TgaImagePlugin.TgaImageFile-class'><i>The TgaImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.TgaImagePlugin.TgaImageFile-class' name='PIL.TgaImagePlugin.TgaImageFile-class'>The TgaImageFile Class</a></h2>
<dl>
<dt><b>TgaImageFile</b> (class) [<a href='#PIL.TgaImagePlugin.TgaImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,34 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.TiffImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.TiffImagePlugin Module</h1>
<dl>
<dt><b>ImageFileDirectory(prefix=&quot;II&quot;)</b> (class) [<a href='#PIL.TiffImagePlugin.ImageFileDirectory-class'>#</a>]</dt>
<dd>
<p>Wrapper for TIFF IFDs.</p>
<p>For more information about this class, see <a href='#PIL.TiffImagePlugin.ImageFileDirectory-class'><i>The ImageFileDirectory Class</i></a>.</p>
</dd>
<dt><b>TiffImageFile</b> (class) [<a href='#PIL.TiffImagePlugin.TiffImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for TIFF files.</p>
<p>For more information about this class, see <a href='#PIL.TiffImagePlugin.TiffImageFile-class'><i>The TiffImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.TiffImagePlugin.ImageFileDirectory-class' name='PIL.TiffImagePlugin.ImageFileDirectory-class'>The ImageFileDirectory Class</a></h2>
<dl>
<dt><b>ImageFileDirectory(prefix=&quot;II&quot;)</b> (class) [<a href='#PIL.TiffImagePlugin.ImageFileDirectory-class'>#</a>]</dt>
<dd>
</dd>
</dl>
<h2><a id='PIL.TiffImagePlugin.TiffImageFile-class' name='PIL.TiffImagePlugin.TiffImageFile-class'>The TiffImageFile Class</a></h2>
<dl>
<dt><b>TiffImageFile</b> (class) [<a href='#PIL.TiffImagePlugin.TiffImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,19 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.TiffTags Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.TiffTags Module</h1>
<h2>Module Contents</h2>
<dl>
<dt><a id='PIL.TiffTags.TAGS-variable' name='PIL.TiffTags.TAGS-variable'><b>TAGS</b></a> (variable) [<a href='#PIL.TiffTags.TAGS-variable'>#</a>]</dt>
<dd>
</dd>
<dt><a id='PIL.TiffTags.TYPES-variable' name='PIL.TiffTags.TYPES-variable'><b>TYPES</b></a> (variable) [<a href='#PIL.TiffTags.TYPES-variable'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,28 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.WalImageFile Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.WalImageFile Module</h1>
<dl>
<dt><a id='PIL.WalImageFile.open-function' name='PIL.WalImageFile.open-function'><b>open(filename)</b></a> [<a href='#PIL.WalImageFile.open-function'>#</a>]</dt>
<dd>
<p>Load texture from a Quake2 WAL texture file.
</p><p>
By default, a Quake2 standard palette is attached to the texture.
To override the palette, use the <b>putpalette</b> method.
</p><dl>
<dt><i>filename</i></dt>
<dd>
</dd>
<dt>Returns:</dt>
<dd>
</dd>
</dl><br />
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,31 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.WmfImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.WmfImagePlugin Module</h1>
<dl>
<dt><a id='PIL.WmfImagePlugin.register_handler-function' name='PIL.WmfImagePlugin.register_handler-function'><b>register_handler(handler)</b></a> [<a href='#PIL.WmfImagePlugin.register_handler-function'>#</a>]</dt>
<dd>
<dl>
<dt><i>handler</i></dt>
<dd>
</dd>
</dl><br />
</dd>
<dt><b>WmfStubImageFile</b> (class) [<a href='#PIL.WmfImagePlugin.WmfStubImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for Windows metafiles.</p>
<p>For more information about this class, see <a href='#PIL.WmfImagePlugin.WmfStubImageFile-class'><i>The WmfStubImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.WmfImagePlugin.WmfStubImageFile-class' name='PIL.WmfImagePlugin.WmfStubImageFile-class'>The WmfStubImageFile Class</a></h2>
<dl>
<dt><b>WmfStubImageFile</b> (class) [<a href='#PIL.WmfImagePlugin.WmfStubImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.XVThumbImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.XVThumbImagePlugin Module</h1>
<dl>
<dt><b>XVThumbImageFile</b> (class) [<a href='#PIL.XVThumbImagePlugin.XVThumbImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for XV thumbnail images.</p>
<p>For more information about this class, see <a href='#PIL.XVThumbImagePlugin.XVThumbImageFile-class'><i>The XVThumbImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.XVThumbImagePlugin.XVThumbImageFile-class' name='PIL.XVThumbImagePlugin.XVThumbImageFile-class'>The XVThumbImageFile Class</a></h2>
<dl>
<dt><b>XVThumbImageFile</b> (class) [<a href='#PIL.XVThumbImagePlugin.XVThumbImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.XbmImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.XbmImagePlugin Module</h1>
<dl>
<dt><b>XbmImageFile</b> (class) [<a href='#PIL.XbmImagePlugin.XbmImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for X11 bitmaps.</p>
<p>For more information about this class, see <a href='#PIL.XbmImagePlugin.XbmImageFile-class'><i>The XbmImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.XbmImagePlugin.XbmImageFile-class' name='PIL.XbmImagePlugin.XbmImageFile-class'>The XbmImageFile Class</a></h2>
<dl>
<dt><b>XbmImageFile</b> (class) [<a href='#PIL.XbmImagePlugin.XbmImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

View File

@ -0,0 +1,23 @@
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii' />
<title>The PIL.XpmImagePlugin Module</title>
<link rel='stylesheet' href='effbot.css' type='text/css' />
</head>
<body>
<h1>The PIL.XpmImagePlugin Module</h1>
<dl>
<dt><b>XpmImageFile</b> (class) [<a href='#PIL.XpmImagePlugin.XpmImageFile-class'>#</a>]</dt>
<dd>
<p>Image plugin for X11 pixel maps.</p>
<p>For more information about this class, see <a href='#PIL.XpmImagePlugin.XpmImageFile-class'><i>The XpmImageFile Class</i></a>.</p>
</dd>
</dl>
<h2><a id='PIL.XpmImagePlugin.XpmImageFile-class' name='PIL.XpmImagePlugin.XpmImageFile-class'>The XpmImageFile Class</a></h2>
<dl>
<dt><b>XpmImageFile</b> (class) [<a href='#PIL.XpmImagePlugin.XpmImageFile-class'>#</a>]</dt>
<dd>
</dd>
</dl>
</body></html>

2676
Images/courB08.bdf Normal file

File diff suppressed because it is too large Load Diff

BIN
Images/courB08.pbm Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
Images/courB08.pil Normal file

Binary file not shown.

BIN
Images/lena.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
Images/lena.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

BIN
Images/lena.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

BIN
Images/lena.ppm Normal file

Binary file not shown.

7
MANIFEST.in Normal file
View File

@ -0,0 +1,7 @@
exclude .hgignore
exclude .hgtags
exclude BUILDME.bat
exclude make-manifest.py
exclude SHIP
exclude SHIP.bat
recursive-exclude Tests *

18
PIL.egg-info/PKG-INFO Normal file
View File

@ -0,0 +1,18 @@
Metadata-Version: 1.0
Name: PIL
Version: 1.1.7
Summary: Python Imaging Library
Home-page: http://www.pythonware.com/products/pil
Author: Secret Labs AB (PythonWare)
Author-email: info@pythonware.com
License: Python (MIT style)
Download-URL: http://effbot.org/downloads/PIL-1.1.7.tar.gz
Description: Python Imaging Library
Platform: Python 1.5.2 and later.
Classifier: Development Status :: 6 - Mature
Classifier: Topic :: Multimedia :: Graphics
Classifier: Topic :: Multimedia :: Graphics :: Capture :: Digital Camera
Classifier: Topic :: Multimedia :: Graphics :: Capture :: Scanners
Classifier: Topic :: Multimedia :: Graphics :: Capture :: Screen Capture
Classifier: Topic :: Multimedia :: Graphics :: Graphics Conversion
Classifier: Topic :: Multimedia :: Graphics :: Viewers

283
PIL.egg-info/SOURCES.txt Normal file
View File

@ -0,0 +1,283 @@
BUILDME
CHANGES
CONTENTS
MANIFEST.in
PIL.pth
README
_imaging.c
_imagingcms.c
_imagingft.c
_imagingmath.c
_imagingtk.c
decode.c
display.c
doctest.py
encode.c
map.c
outline.c
path.c
selftest.py
setup.py
Docs/effbot.css
Docs/index.html
Docs/pythondoc-PIL.ArgImagePlugin.html
Docs/pythondoc-PIL.BdfFontFile.html
Docs/pythondoc-PIL.BmpImagePlugin.html
Docs/pythondoc-PIL.BufrStubImagePlugin.html
Docs/pythondoc-PIL.ContainerIO.html
Docs/pythondoc-PIL.CurImagePlugin.html
Docs/pythondoc-PIL.DcxImagePlugin.html
Docs/pythondoc-PIL.EpsImagePlugin.html
Docs/pythondoc-PIL.ExifTags.html
Docs/pythondoc-PIL.FitsStubImagePlugin.html
Docs/pythondoc-PIL.FliImagePlugin.html
Docs/pythondoc-PIL.FontFile.html
Docs/pythondoc-PIL.FpxImagePlugin.html
Docs/pythondoc-PIL.GbrImagePlugin.html
Docs/pythondoc-PIL.GdImageFile.html
Docs/pythondoc-PIL.GifImagePlugin.html
Docs/pythondoc-PIL.GimpGradientFile.html
Docs/pythondoc-PIL.GimpPaletteFile.html
Docs/pythondoc-PIL.GribStubImagePlugin.html
Docs/pythondoc-PIL.Hdf5StubImagePlugin.html
Docs/pythondoc-PIL.IcnsImagePlugin.html
Docs/pythondoc-PIL.IcoImagePlugin.html
Docs/pythondoc-PIL.ImImagePlugin.html
Docs/pythondoc-PIL.Image.html
Docs/pythondoc-PIL.ImageChops.html
Docs/pythondoc-PIL.ImageColor.html
Docs/pythondoc-PIL.ImageDraw.html
Docs/pythondoc-PIL.ImageEnhance.html
Docs/pythondoc-PIL.ImageFile.html
Docs/pythondoc-PIL.ImageFileIO.html
Docs/pythondoc-PIL.ImageFilter.html
Docs/pythondoc-PIL.ImageFont.html
Docs/pythondoc-PIL.ImageGL.html
Docs/pythondoc-PIL.ImageGrab.html
Docs/pythondoc-PIL.ImageOps.html
Docs/pythondoc-PIL.ImagePalette.html
Docs/pythondoc-PIL.ImagePath.html
Docs/pythondoc-PIL.ImageSequence.html
Docs/pythondoc-PIL.ImageStat.html
Docs/pythondoc-PIL.ImageTk.html
Docs/pythondoc-PIL.ImageTransform.html
Docs/pythondoc-PIL.ImageWin.html
Docs/pythondoc-PIL.ImtImagePlugin.html
Docs/pythondoc-PIL.IptcImagePlugin.html
Docs/pythondoc-PIL.JpegImagePlugin.html
Docs/pythondoc-PIL.McIdasImagePlugin.html
Docs/pythondoc-PIL.MicImagePlugin.html
Docs/pythondoc-PIL.MpegImagePlugin.html
Docs/pythondoc-PIL.MspImagePlugin.html
Docs/pythondoc-PIL.OleFileIO.html
Docs/pythondoc-PIL.PSDraw.html
Docs/pythondoc-PIL.PaletteFile.html
Docs/pythondoc-PIL.PalmImagePlugin.html
Docs/pythondoc-PIL.PcdImagePlugin.html
Docs/pythondoc-PIL.PcfFontFile.html
Docs/pythondoc-PIL.PcxImagePlugin.html
Docs/pythondoc-PIL.PdfImagePlugin.html
Docs/pythondoc-PIL.PixarImagePlugin.html
Docs/pythondoc-PIL.PngImagePlugin.html
Docs/pythondoc-PIL.PpmImagePlugin.html
Docs/pythondoc-PIL.PsdImagePlugin.html
Docs/pythondoc-PIL.SgiImagePlugin.html
Docs/pythondoc-PIL.SpiderImagePlugin.html
Docs/pythondoc-PIL.SunImagePlugin.html
Docs/pythondoc-PIL.TarIO.html
Docs/pythondoc-PIL.TgaImagePlugin.html
Docs/pythondoc-PIL.TiffImagePlugin.html
Docs/pythondoc-PIL.TiffTags.html
Docs/pythondoc-PIL.WalImageFile.html
Docs/pythondoc-PIL.WmfImagePlugin.html
Docs/pythondoc-PIL.XVThumbImagePlugin.html
Docs/pythondoc-PIL.XbmImagePlugin.html
Docs/pythondoc-PIL.XpmImagePlugin.html
Images/courB08.bdf
Images/courB08.pbm
Images/courB08.pil
Images/lena.gif
Images/lena.jpg
Images/lena.png
Images/lena.ppm
PIL/ArgImagePlugin.py
PIL/BdfFontFile.py
PIL/BmpImagePlugin.py
PIL/BufrStubImagePlugin.py
PIL/ContainerIO.py
PIL/CurImagePlugin.py
PIL/DcxImagePlugin.py
PIL/EpsImagePlugin.py
PIL/ExifTags.py
PIL/FitsStubImagePlugin.py
PIL/FliImagePlugin.py
PIL/FontFile.py
PIL/FpxImagePlugin.py
PIL/GbrImagePlugin.py
PIL/GdImageFile.py
PIL/GifImagePlugin.py
PIL/GimpGradientFile.py
PIL/GimpPaletteFile.py
PIL/GribStubImagePlugin.py
PIL/Hdf5StubImagePlugin.py
PIL/IcnsImagePlugin.py
PIL/IcoImagePlugin.py
PIL/ImImagePlugin.py
PIL/Image.py
PIL/ImageChops.py
PIL/ImageCms.py
PIL/ImageColor.py
PIL/ImageDraw.py
PIL/ImageDraw2.py
PIL/ImageEnhance.py
PIL/ImageFile.py
PIL/ImageFileIO.py
PIL/ImageFilter.py
PIL/ImageFont.py
PIL/ImageGL.py
PIL/ImageGrab.py
PIL/ImageMath.py
PIL/ImageMode.py
PIL/ImageOps.py
PIL/ImagePalette.py
PIL/ImagePath.py
PIL/ImageQt.py
PIL/ImageSequence.py
PIL/ImageShow.py
PIL/ImageStat.py
PIL/ImageTk.py
PIL/ImageTransform.py
PIL/ImageWin.py
PIL/ImtImagePlugin.py
PIL/IptcImagePlugin.py
PIL/JpegImagePlugin.py
PIL/McIdasImagePlugin.py
PIL/MicImagePlugin.py
PIL/MpegImagePlugin.py
PIL/MspImagePlugin.py
PIL/OleFileIO.py
PIL/PSDraw.py
PIL/PaletteFile.py
PIL/PalmImagePlugin.py
PIL/PcdImagePlugin.py
PIL/PcfFontFile.py
PIL/PcxImagePlugin.py
PIL/PdfImagePlugin.py
PIL/PixarImagePlugin.py
PIL/PngImagePlugin.py
PIL/PpmImagePlugin.py
PIL/PsdImagePlugin.py
PIL/SgiImagePlugin.py
PIL/SpiderImagePlugin.py
PIL/SunImagePlugin.py
PIL/TarIO.py
PIL/TgaImagePlugin.py
PIL/TiffImagePlugin.py
PIL/TiffTags.py
PIL/WalImageFile.py
PIL/WmfImagePlugin.py
PIL/XVThumbImagePlugin.py
PIL/XbmImagePlugin.py
PIL/XpmImagePlugin.py
PIL/__init__.py
PIL.egg-info/PKG-INFO
PIL.egg-info/SOURCES.txt
PIL.egg-info/dependency_links.txt
PIL.egg-info/top_level.txt
Sane/CHANGES
Sane/README
Sane/_sane.c
Sane/demo_numarray.py
Sane/demo_pil.py
Sane/sane.py
Sane/sanedoc.txt
Sane/setup.py
Scripts/README
Scripts/enhancer.py
Scripts/explode.py
Scripts/gifmaker.py
Scripts/painter.py
Scripts/pilconvert.py
Scripts/pildriver.py
Scripts/pilfile.py
Scripts/pilfont.py
Scripts/pilprint.py
Scripts/player.py
Scripts/thresholder.py
Scripts/viewer.py
Tk/booster.txt
Tk/install.txt
Tk/pilbitmap.txt
Tk/tkImaging.c
libImaging/Access.c
libImaging/Antialias.c
libImaging/Bands.c
libImaging/Bit.h
libImaging/BitDecode.c
libImaging/Blend.c
libImaging/Chops.c
libImaging/Convert.c
libImaging/ConvertYCbCr.c
libImaging/Copy.c
libImaging/Crc32.c
libImaging/Crop.c
libImaging/Dib.c
libImaging/Draw.c
libImaging/Effects.c
libImaging/EpsEncode.c
libImaging/Except.c
libImaging/File.c
libImaging/Fill.c
libImaging/Filter.c
libImaging/FliDecode.c
libImaging/Geometry.c
libImaging/GetBBox.c
libImaging/Gif.h
libImaging/GifDecode.c
libImaging/GifEncode.c
libImaging/HexDecode.c
libImaging/Histo.c
libImaging/ImDib.h
libImaging/ImPlatform.h
libImaging/Imaging.h
libImaging/Jpeg.h
libImaging/JpegDecode.c
libImaging/JpegEncode.c
libImaging/Lzw.h
libImaging/LzwDecode.c
libImaging/Matrix.c
libImaging/ModeFilter.c
libImaging/MspDecode.c
libImaging/Negative.c
libImaging/Offset.c
libImaging/Pack.c
libImaging/PackDecode.c
libImaging/Palette.c
libImaging/Paste.c
libImaging/PcdDecode.c
libImaging/PcxDecode.c
libImaging/PcxEncode.c
libImaging/Point.c
libImaging/Quant.c
libImaging/Quant.h
libImaging/QuantDefines.h
libImaging/QuantHash.c
libImaging/QuantHash.h
libImaging/QuantHeap.c
libImaging/QuantHeap.h
libImaging/QuantTypes.h
libImaging/RankFilter.c
libImaging/Raw.h
libImaging/RawDecode.c
libImaging/RawEncode.c
libImaging/Storage.c
libImaging/SunRleDecode.c
libImaging/TgaRleDecode.c
libImaging/Unpack.c
libImaging/UnpackYCC.c
libImaging/UnsharpMask.c
libImaging/XbmDecode.c
libImaging/XbmEncode.c
libImaging/Zip.h
libImaging/ZipDecode.c
libImaging/ZipEncode.c

View File

@ -0,0 +1 @@

View File

@ -0,0 +1,2 @@
PIL
_imaging

1
PIL.pth Normal file
View File

@ -0,0 +1 @@
PIL

504
PIL/ArgImagePlugin.py Normal file
View File

@ -0,0 +1,504 @@
#
# THIS IS WORK IN PROGRESS
#
# The Python Imaging Library.
# $Id$
#
# ARG animation support code
#
# history:
# 1996-12-30 fl Created
# 1996-01-06 fl Added safe scripting environment
# 1996-01-10 fl Added JHDR, UHDR and sYNC support
# 2005-03-02 fl Removed AAPP and ARUN support
#
# Copyright (c) Secret Labs AB 1997.
# Copyright (c) Fredrik Lundh 1996-97.
#
# See the README file for information on usage and redistribution.
#
__version__ = "0.4"
import Image, ImageFile, ImagePalette
from PngImagePlugin import i16, i32, ChunkStream, _MODES
MAGIC = "\212ARG\r\n\032\n"
# --------------------------------------------------------------------
# ARG parser
class ArgStream(ChunkStream):
"Parser callbacks for ARG data"
def __init__(self, fp):
ChunkStream.__init__(self, fp)
self.eof = 0
self.im = None
self.palette = None
self.__reset()
def __reset(self):
# reset decoder state (called on init and sync)
self.count = 0
self.id = None
self.action = ("NONE",)
self.images = {}
self.names = {}
def chunk_AHDR(self, offset, bytes):
"AHDR -- animation header"
# assertions
if self.count != 0:
raise SyntaxError, "misplaced AHDR chunk"
s = self.fp.read(bytes)
self.size = i32(s), i32(s[4:])
try:
self.mode, self.rawmode = _MODES[(ord(s[8]), ord(s[9]))]
except:
raise SyntaxError, "unknown ARG mode"
if Image.DEBUG:
print "AHDR size", self.size
print "AHDR mode", self.mode, self.rawmode
return s
def chunk_AFRM(self, offset, bytes):
"AFRM -- next frame follows"
# assertions
if self.count != 0:
raise SyntaxError, "misplaced AFRM chunk"
self.show = 1
self.id = 0
self.count = 1
self.repair = None
s = self.fp.read(bytes)
if len(s) >= 2:
self.id = i16(s)
if len(s) >= 4:
self.count = i16(s[2:4])
if len(s) >= 6:
self.repair = i16(s[4:6])
else:
self.repair = None
if Image.DEBUG:
print "AFRM", self.id, self.count
return s
def chunk_ADEF(self, offset, bytes):
"ADEF -- store image"
# assertions
if self.count != 0:
raise SyntaxError, "misplaced ADEF chunk"
self.show = 0
self.id = 0
self.count = 1
self.repair = None
s = self.fp.read(bytes)
if len(s) >= 2:
self.id = i16(s)
if len(s) >= 4:
self.count = i16(s[2:4])
if Image.DEBUG:
print "ADEF", self.id, self.count
return s
def chunk_NAME(self, offset, bytes):
"NAME -- name the current image"
# assertions
if self.count == 0:
raise SyntaxError, "misplaced NAME chunk"
name = self.fp.read(bytes)
self.names[self.id] = name
return name
def chunk_AEND(self, offset, bytes):
"AEND -- end of animation"
if Image.DEBUG:
print "AEND"
self.eof = 1
raise EOFError, "end of ARG file"
def __getmodesize(self, s, full=1):
size = i32(s), i32(s[4:])
try:
mode, rawmode = _MODES[(ord(s[8]), ord(s[9]))]
except:
raise SyntaxError, "unknown image mode"
if full:
if ord(s[12]):
pass # interlace not yet supported
if ord(s[11]):
raise SyntaxError, "unknown filter category"
return size, mode, rawmode
def chunk_PAST(self, offset, bytes):
"PAST -- paste one image into another"
# assertions
if self.count == 0:
raise SyntaxError, "misplaced PAST chunk"
if self.repair is not None:
# we must repair the target image before we
# start pasting
# brute force; a better solution would be to
# update only the dirty rectangles in images[id].
# note that if images[id] doesn't exist, it must
# be created
self.images[self.id] = self.images[self.repair].copy()
self.repair = None
s = self.fp.read(bytes)
im = self.images[i16(s)]
x, y = i32(s[2:6]), i32(s[6:10])
bbox = x, y, im.size[0]+x, im.size[1]+y
if im.mode in ["RGBA"]:
# paste with transparency
# FIXME: should handle P+transparency as well
self.images[self.id].paste(im, bbox, im)
else:
# paste without transparency
self.images[self.id].paste(im, bbox)
self.action = ("PAST",)
self.__store()
return s
def chunk_BLNK(self, offset, bytes):
"BLNK -- create blank image"
# assertions
if self.count == 0:
raise SyntaxError, "misplaced BLNK chunk"
s = self.fp.read(bytes)
size, mode, rawmode = self.__getmodesize(s, 0)
# store image (FIXME: handle colour)
self.action = ("BLNK",)
self.im = Image.core.fill(mode, size, 0)
self.__store()
return s
def chunk_IHDR(self, offset, bytes):
"IHDR -- full image follows"
# assertions
if self.count == 0:
raise SyntaxError, "misplaced IHDR chunk"
# image header
s = self.fp.read(bytes)
size, mode, rawmode = self.__getmodesize(s)
# decode and store image
self.action = ("IHDR",)
self.im = Image.core.new(mode, size)
self.decoder = Image.core.zip_decoder(rawmode)
self.decoder.setimage(self.im, (0,0) + size)
self.data = ""
return s
def chunk_DHDR(self, offset, bytes):
"DHDR -- delta image follows"
# assertions
if self.count == 0:
raise SyntaxError, "misplaced DHDR chunk"
s = self.fp.read(bytes)
size, mode, rawmode = self.__getmodesize(s)
# delta header
diff = ord(s[13])
offs = i32(s[14:18]), i32(s[18:22])
bbox = offs + (offs[0]+size[0], offs[1]+size[1])
if Image.DEBUG:
print "DHDR", diff, bbox
# FIXME: decode and apply image
self.action = ("DHDR", diff, bbox)
# setup decoder
self.im = Image.core.new(mode, size)
self.decoder = Image.core.zip_decoder(rawmode)
self.decoder.setimage(self.im, (0,0) + size)
self.data = ""
return s
def chunk_JHDR(self, offset, bytes):
"JHDR -- JPEG image follows"
# assertions
if self.count == 0:
raise SyntaxError, "misplaced JHDR chunk"
# image header
s = self.fp.read(bytes)
size, mode, rawmode = self.__getmodesize(s, 0)
# decode and store image
self.action = ("JHDR",)
self.im = Image.core.new(mode, size)
self.decoder = Image.core.jpeg_decoder(rawmode)
self.decoder.setimage(self.im, (0,0) + size)
self.data = ""
return s
def chunk_UHDR(self, offset, bytes):
"UHDR -- uncompressed image data follows (EXPERIMENTAL)"
# assertions
if self.count == 0:
raise SyntaxError, "misplaced UHDR chunk"
# image header
s = self.fp.read(bytes)
size, mode, rawmode = self.__getmodesize(s, 0)
# decode and store image
self.action = ("UHDR",)
self.im = Image.core.new(mode, size)
self.decoder = Image.core.raw_decoder(rawmode)
self.decoder.setimage(self.im, (0,0) + size)
self.data = ""
return s
def chunk_IDAT(self, offset, bytes):
"IDAT -- image data block"
# pass compressed chunks through the decoder
s = self.fp.read(bytes)
self.data = self.data + s
n, e = self.decoder.decode(self.data)
if n < 0:
# end of image
if e < 0:
raise IOError, "decoder error %d" % e
else:
self.data = self.data[n:]
return s
def chunk_DEND(self, offset, bytes):
return self.chunk_IEND(offset, bytes)
def chunk_JEND(self, offset, bytes):
return self.chunk_IEND(offset, bytes)
def chunk_UEND(self, offset, bytes):
return self.chunk_IEND(offset, bytes)
def chunk_IEND(self, offset, bytes):
"IEND -- end of image"
# we now have a new image. carry out the operation
# defined by the image header.
# won't need these anymore
del self.decoder
del self.data
self.__store()
return self.fp.read(bytes)
def __store(self):
# apply operation
cid = self.action[0]
if cid in ["BLNK", "IHDR", "JHDR", "UHDR"]:
# store
self.images[self.id] = self.im
elif cid == "DHDR":
# paste
cid, mode, bbox = self.action
im0 = self.images[self.id]
im1 = self.im
if mode == 0:
im1 = im1.chop_add_modulo(im0.crop(bbox))
im0.paste(im1, bbox)
self.count = self.count - 1
if self.count == 0 and self.show:
self.im = self.images[self.id]
raise EOFError # end of this frame
def chunk_PLTE(self, offset, bytes):
"PLTE -- palette data"
s = self.fp.read(bytes)
if self.mode == "P":
self.palette = ImagePalette.raw("RGB", s)
return s
def chunk_sYNC(self, offset, bytes):
"SYNC -- reset decoder"
if self.count != 0:
raise SyntaxError, "misplaced sYNC chunk"
s = self.fp.read(bytes)
self.__reset()
return s
# --------------------------------------------------------------------
# ARG reader
def _accept(prefix):
return prefix[:8] == MAGIC
##
# Image plugin for the experimental Animated Raster Graphics format.
class ArgImageFile(ImageFile.ImageFile):
format = "ARG"
format_description = "Animated raster graphics"
def _open(self):
if Image.warnings:
Image.warnings.warn(
"The ArgImagePlugin driver is obsolete, and will be removed "
"from a future release of PIL. If you rely on this module, "
"please contact the PIL authors.",
RuntimeWarning
)
if self.fp.read(8) != MAGIC:
raise SyntaxError, "not an ARG file"
self.arg = ArgStream(self.fp)
# read and process the first chunk (AHDR)
cid, offset, bytes = self.arg.read()
if cid != "AHDR":
raise SyntaxError, "expected an AHDR chunk"
s = self.arg.call(cid, offset, bytes)
self.arg.crc(cid, s)
# image characteristics
self.mode = self.arg.mode
self.size = self.arg.size
def load(self):
if self.arg.im is None:
self.seek(0)
# image data
self.im = self.arg.im
self.palette = self.arg.palette
# set things up for further processing
Image.Image.load(self)
def seek(self, frame):
if self.arg.eof:
raise EOFError, "end of animation"
self.fp = self.arg.fp
while 1:
#
# process chunks
cid, offset, bytes = self.arg.read()
if self.arg.eof:
raise EOFError, "end of animation"
try:
s = self.arg.call(cid, offset, bytes)
except EOFError:
break
except "glurk": # AttributeError
if Image.DEBUG:
print cid, bytes, "(unknown)"
s = self.fp.read(bytes)
self.arg.crc(cid, s)
self.fp.read(4) # ship extra CRC
def tell(self):
return 0
def verify(self):
"Verify ARG file"
# back up to first chunk
self.fp.seek(8)
self.arg.verify(self)
self.arg.close()
self.fp = None
#
# --------------------------------------------------------------------
Image.register_open("ARG", ArgImageFile, _accept)
Image.register_extension("ARG", ".arg")
Image.register_mime("ARG", "video/x-arg")

133
PIL/BdfFontFile.py Normal file
View File

@ -0,0 +1,133 @@
#
# The Python Imaging Library
# $Id$
#
# bitmap distribution font (bdf) file parser
#
# history:
# 1996-05-16 fl created (as bdf2pil)
# 1997-08-25 fl converted to FontFile driver
# 2001-05-25 fl removed bogus __init__ call
# 2002-11-20 fl robustification (from Kevin Cazabon, Dmitry Vasiliev)
# 2003-04-22 fl more robustification (from Graham Dumpleton)
#
# Copyright (c) 1997-2003 by Secret Labs AB.
# Copyright (c) 1997-2003 by Fredrik Lundh.
#
# See the README file for information on usage and redistribution.
#
import Image
import FontFile
import string
# --------------------------------------------------------------------
# parse X Bitmap Distribution Format (BDF)
# --------------------------------------------------------------------
bdf_slant = {
"R": "Roman",
"I": "Italic",
"O": "Oblique",
"RI": "Reverse Italic",
"RO": "Reverse Oblique",
"OT": "Other"
}
bdf_spacing = {
"P": "Proportional",
"M": "Monospaced",
"C": "Cell"
}
def bdf_char(f):
# skip to STARTCHAR
while 1:
s = f.readline()
if not s:
return None
if s[:9] == "STARTCHAR":
break
id = string.strip(s[9:])
# load symbol properties
props = {}
while 1:
s = f.readline()
if not s or s[:6] == "BITMAP":
break
i = string.find(s, " ")
props[s[:i]] = s[i+1:-1]
# load bitmap
bitmap = []
while 1:
s = f.readline()
if not s or s[:7] == "ENDCHAR":
break
bitmap.append(s[:-1])
bitmap = string.join(bitmap, "")
[x, y, l, d] = map(int, string.split(props["BBX"]))
[dx, dy] = map(int, string.split(props["DWIDTH"]))
bbox = (dx, dy), (l, -d-y, x+l, -d), (0, 0, x, y)
try:
im = Image.fromstring("1", (x, y), bitmap, "hex", "1")
except ValueError:
# deal with zero-width characters
im = Image.new("1", (x, y))
return id, int(props["ENCODING"]), bbox, im
##
# Font file plugin for the X11 BDF format.
class BdfFontFile(FontFile.FontFile):
def __init__(self, fp):
FontFile.FontFile.__init__(self)
s = fp.readline()
if s[:13] != "STARTFONT 2.1":
raise SyntaxError, "not a valid BDF file"
props = {}
comments = []
while 1:
s = fp.readline()
if not s or s[:13] == "ENDPROPERTIES":
break
i = string.find(s, " ")
props[s[:i]] = s[i+1:-1]
if s[:i] in ["COMMENT", "COPYRIGHT"]:
if string.find(s, "LogicalFontDescription") < 0:
comments.append(s[i+1:-1])
font = string.split(props["FONT"], "-")
font[4] = bdf_slant[string.upper(font[4])]
font[11] = bdf_spacing[string.upper(font[11])]
ascent = int(props["FONT_ASCENT"])
descent = int(props["FONT_DESCENT"])
fontname = string.join(font[1:], ";")
# print "#", fontname
# for i in comments:
# print "#", i
font = []
while 1:
c = bdf_char(fp)
if not c:
break
id, ch, (xy, dst, src), im = c
if ch >= 0 and ch < len(self.glyph):
self.glyph[ch] = xy, dst, src, im

251
PIL/BmpImagePlugin.py Normal file
View File

@ -0,0 +1,251 @@
#
# The Python Imaging Library.
# $Id$
#
# BMP file handler
#
# Windows (and OS/2) native bitmap storage format.
#
# history:
# 1995-09-01 fl Created
# 1996-04-30 fl Added save
# 1997-08-27 fl Fixed save of 1-bit images
# 1998-03-06 fl Load P images as L where possible
# 1998-07-03 fl Load P images as 1 where possible
# 1998-12-29 fl Handle small palettes
# 2002-12-30 fl Fixed load of 1-bit palette images
# 2003-04-21 fl Fixed load of 1-bit monochrome images
# 2003-04-23 fl Added limited support for BI_BITFIELDS compression
#
# Copyright (c) 1997-2003 by Secret Labs AB
# Copyright (c) 1995-2003 by Fredrik Lundh
#
# See the README file for information on usage and redistribution.
#
__version__ = "0.7"
import string
import Image, ImageFile, ImagePalette
#
# --------------------------------------------------------------------
# Read BMP file
def i16(c):
return ord(c[0]) + (ord(c[1])<<8)
def i32(c):
return ord(c[0]) + (ord(c[1])<<8) + (ord(c[2])<<16) + (ord(c[3])<<24)
BIT2MODE = {
# bits => mode, rawmode
1: ("P", "P;1"),
4: ("P", "P;4"),
8: ("P", "P"),
16: ("RGB", "BGR;15"),
24: ("RGB", "BGR"),
32: ("RGB", "BGRX")
}
def _accept(prefix):
return prefix[:2] == "BM"
##
# Image plugin for the Windows BMP format.
class BmpImageFile(ImageFile.ImageFile):
format = "BMP"
format_description = "Windows Bitmap"
def _bitmap(self, header = 0, offset = 0):
if header:
self.fp.seek(header)
read = self.fp.read
# CORE/INFO
s = read(4)
s = s + ImageFile._safe_read(self.fp, i32(s)-4)
if len(s) == 12:
# OS/2 1.0 CORE
bits = i16(s[10:])
self.size = i16(s[4:]), i16(s[6:])
compression = 0
lutsize = 3
colors = 0
direction = -1
elif len(s) in [40, 64]:
# WIN 3.1 or OS/2 2.0 INFO
bits = i16(s[14:])
self.size = i32(s[4:]), i32(s[8:])
compression = i32(s[16:])
lutsize = 4
colors = i32(s[32:])
direction = -1
if s[11] == '\xff':
# upside-down storage
self.size = self.size[0], 2**32 - self.size[1]
direction = 0
else:
raise IOError("Unsupported BMP header type (%d)" % len(s))
if not colors:
colors = 1 << bits
# MODE
try:
self.mode, rawmode = BIT2MODE[bits]
except KeyError:
raise IOError("Unsupported BMP pixel depth (%d)" % bits)
if compression == 3:
# BI_BITFIELDS compression
mask = i32(read(4)), i32(read(4)), i32(read(4))
if bits == 32 and mask == (0xff0000, 0x00ff00, 0x0000ff):
rawmode = "BGRX"
elif bits == 16 and mask == (0x00f800, 0x0007e0, 0x00001f):
rawmode = "BGR;16"
elif bits == 16 and mask == (0x007c00, 0x0003e0, 0x00001f):
rawmode = "BGR;15"
else:
# print bits, map(hex, mask)
raise IOError("Unsupported BMP bitfields layout")
elif compression != 0:
raise IOError("Unsupported BMP compression (%d)" % compression)
# LUT
if self.mode == "P":
palette = []
greyscale = 1
if colors == 2:
indices = (0, 255)
else:
indices = range(colors)
for i in indices:
rgb = read(lutsize)[:3]
if rgb != chr(i)*3:
greyscale = 0
palette.append(rgb)
if greyscale:
if colors == 2:
self.mode = rawmode = "1"
else:
self.mode = rawmode = "L"
else:
self.mode = "P"
self.palette = ImagePalette.raw(
"BGR", string.join(palette, "")
)
if not offset:
offset = self.fp.tell()
self.tile = [("raw",
(0, 0) + self.size,
offset,
(rawmode, ((self.size[0]*bits+31)>>3)&(~3), direction))]
self.info["compression"] = compression
def _open(self):
# HEAD
s = self.fp.read(14)
if s[:2] != "BM":
raise SyntaxError("Not a BMP file")
offset = i32(s[10:])
self._bitmap(offset=offset)
class DibImageFile(BmpImageFile):
format = "DIB"
format_description = "Windows Bitmap"
def _open(self):
self._bitmap()
#
# --------------------------------------------------------------------
# Write BMP file
def o16(i):
return chr(i&255) + chr(i>>8&255)
def o32(i):
return chr(i&255) + chr(i>>8&255) + chr(i>>16&255) + chr(i>>24&255)
SAVE = {
"1": ("1", 1, 2),
"L": ("L", 8, 256),
"P": ("P", 8, 256),
"RGB": ("BGR", 24, 0),
}
def _save(im, fp, filename, check=0):
try:
rawmode, bits, colors = SAVE[im.mode]
except KeyError:
raise IOError("cannot write mode %s as BMP" % im.mode)
if check:
return check
stride = ((im.size[0]*bits+7)/8+3)&(~3)
header = 40 # or 64 for OS/2 version 2
offset = 14 + header + colors * 4
image = stride * im.size[1]
# bitmap header
fp.write("BM" + # file type (magic)
o32(offset+image) + # file size
o32(0) + # reserved
o32(offset)) # image data offset
# bitmap info header
fp.write(o32(header) + # info header size
o32(im.size[0]) + # width
o32(im.size[1]) + # height
o16(1) + # planes
o16(bits) + # depth
o32(0) + # compression (0=uncompressed)
o32(image) + # size of bitmap
o32(1) + o32(1) + # resolution
o32(colors) + # colors used
o32(colors)) # colors important
fp.write("\000" * (header - 40)) # padding (for OS/2 format)
if im.mode == "1":
for i in (0, 255):
fp.write(chr(i) * 4)
elif im.mode == "L":
for i in range(256):
fp.write(chr(i) * 4)
elif im.mode == "P":
fp.write(im.im.getpalette("RGB", "BGRX"))
ImageFile._save(im, fp, [("raw", (0,0)+im.size, 0, (rawmode, stride, -1))])
#
# --------------------------------------------------------------------
# Registry
Image.register_open(BmpImageFile.format, BmpImageFile, _accept)
Image.register_save(BmpImageFile.format, _save)
Image.register_extension(BmpImageFile.format, ".bmp")

View File

@ -0,0 +1,68 @@
#
# The Python Imaging Library
# $Id$
#
# BUFR stub adapter
#
# Copyright (c) 1996-2003 by Fredrik Lundh
#
# See the README file for information on usage and redistribution.
#
import Image, ImageFile
_handler = None
##
# Install application-specific BUFR image handler.
#
# @param handler Handler object.
def register_handler(handler):
global _handler
_handler = handler
# --------------------------------------------------------------------
# Image adapter
def _accept(prefix):
return prefix[:4] == "BUFR" or prefix[:4] == "ZCZC"
class BufrStubImageFile(ImageFile.StubImageFile):
format = "BUFR"
format_description = "BUFR"
def _open(self):
offset = self.fp.tell()
if not _accept(self.fp.read(8)):
raise SyntaxError("Not a BUFR file")
self.fp.seek(offset)
# make something up
self.mode = "F"
self.size = 1, 1
loader = self._load()
if loader:
loader.open(self)
def _load(self):
return _handler
def _save(im, fp, filename):
if _handler is None or not hasattr("_handler", "save"):
raise IOError("BUFR save handler not installed")
_handler.save(im, fp, filename)
# --------------------------------------------------------------------
# Registry
Image.register_open(BufrStubImageFile.format, BufrStubImageFile, _accept)
Image.register_save(BufrStubImageFile.format, _save)
Image.register_extension(BufrStubImageFile.format, ".bufr")

116
PIL/ContainerIO.py Normal file
View File

@ -0,0 +1,116 @@
#
# The Python Imaging Library.
# $Id$
#
# a class to read from a container file
#
# History:
# 1995-06-18 fl Created
# 1995-09-07 fl Added readline(), readlines()
#
# Copyright (c) 1997-2001 by Secret Labs AB
# Copyright (c) 1995 by Fredrik Lundh
#
# See the README file for information on usage and redistribution.
#
##
# A file object that provides read access to a part of an existing
# file (for example a TAR file).
class ContainerIO:
##
# Create file object.
#
# @param file Existing file.
# @param offset Start of region, in bytes.
# @param length Size of region, in bytes.
def __init__(self, file, offset, length):
self.fh = file
self.pos = 0
self.offset = offset
self.length = length
self.fh.seek(offset)
##
# Always false.
def isatty(self):
return 0
##
# Move file pointer.
#
# @param offset Offset in bytes.
# @param mode Starting position. Use 0 for beginning of region, 1
# for current offset, and 2 for end of region. You cannot move
# the pointer outside the defined region.
def seek(self, offset, mode = 0):
if mode == 1:
self.pos = self.pos + offset
elif mode == 2:
self.pos = self.length + offset
else:
self.pos = offset
# clamp
self.pos = max(0, min(self.pos, self.length))
self.fh.seek(self.offset + self.pos)
##
# Get current file pointer.
#
# @return Offset from start of region, in bytes.
def tell(self):
return self.pos
##
# Read data.
#
# @def read(bytes=0)
# @param bytes Number of bytes to read. If omitted or zero,
# read until end of region.
# @return An 8-bit string.
def read(self, n = 0):
if n:
n = min(n, self.length - self.pos)
else:
n = self.length - self.pos
if not n: # EOF
return ""
self.pos = self.pos + n
return self.fh.read(n)
##
# Read a line of text.
#
# @return An 8-bit string.
def readline(self):
s = ""
while 1:
c = self.read(1)
if not c:
break
s = s + c
if c == "\n":
break
return s
##
# Read multiple lines of text.
#
# @return A list of 8-bit strings.
def readlines(self):
l = []
while 1:
s = self.readline()
if not s:
break
l.append(s)
return l

88
PIL/CurImagePlugin.py Normal file
View File

@ -0,0 +1,88 @@
#
# The Python Imaging Library.
# $Id$
#
# Windows Cursor support for PIL
#
# notes:
# uses BmpImagePlugin.py to read the bitmap data.
#
# history:
# 96-05-27 fl Created
#
# Copyright (c) Secret Labs AB 1997.
# Copyright (c) Fredrik Lundh 1996.
#
# See the README file for information on usage and redistribution.
#
__version__ = "0.1"
import Image, BmpImagePlugin
#
# --------------------------------------------------------------------
def i16(c):
return ord(c[0]) + (ord(c[1])<<8)
def i32(c):
return ord(c[0]) + (ord(c[1])<<8) + (ord(c[2])<<16) + (ord(c[3])<<24)
def _accept(prefix):
return prefix[:4] == "\0\0\2\0"
##
# Image plugin for Windows Cursor files.
class CurImageFile(BmpImagePlugin.BmpImageFile):
format = "CUR"
format_description = "Windows Cursor"
def _open(self):
offset = self.fp.tell()
# check magic
s = self.fp.read(6)
if not _accept(s):
raise SyntaxError, "not an CUR file"
# pick the largest cursor in the file
m = ""
for i in range(i16(s[4:])):
s = self.fp.read(16)
if not m:
m = s
elif ord(s[0]) > ord(m[0]) and ord(s[1]) > ord(m[1]):
m = s
#print "width", ord(s[0])
#print "height", ord(s[1])
#print "colors", ord(s[2])
#print "reserved", ord(s[3])
#print "hotspot x", i16(s[4:])
#print "hotspot y", i16(s[6:])
#print "bytes", i32(s[8:])
#print "offset", i32(s[12:])
# load as bitmap
self._bitmap(i32(m[12:]) + offset)
# patch up the bitmap height
self.size = self.size[0], self.size[1]/2
d, e, o, a = self.tile[0]
self.tile[0] = d, (0,0)+self.size, o, a
return
#
# --------------------------------------------------------------------
Image.register_open("CUR", CurImageFile, _accept)
Image.register_extension("CUR", ".cur")

78
PIL/DcxImagePlugin.py Normal file
View File

@ -0,0 +1,78 @@
#
# The Python Imaging Library.
# $Id$
#
# DCX file handling
#
# DCX is a container file format defined by Intel, commonly used
# for fax applications. Each DCX file consists of a directory
# (a list of file offsets) followed by a set of (usually 1-bit)
# PCX files.
#
# History:
# 1995-09-09 fl Created
# 1996-03-20 fl Properly derived from PcxImageFile.
# 1998-07-15 fl Renamed offset attribute to avoid name clash
# 2002-07-30 fl Fixed file handling
#
# Copyright (c) 1997-98 by Secret Labs AB.
# Copyright (c) 1995-96 by Fredrik Lundh.
#
# See the README file for information on usage and redistribution.
#
__version__ = "0.2"
import Image
from PcxImagePlugin import PcxImageFile
MAGIC = 0x3ADE68B1 # QUIZ: what's this value, then?
def i32(c):
return ord(c[0]) + (ord(c[1])<<8) + (ord(c[2])<<16) + (ord(c[3])<<24)
def _accept(prefix):
return i32(prefix) == MAGIC
##
# Image plugin for the Intel DCX format.
class DcxImageFile(PcxImageFile):
format = "DCX"
format_description = "Intel DCX"
def _open(self):
# Header
s = self.fp.read(4)
if i32(s) != MAGIC:
raise SyntaxError, "not a DCX file"
# Component directory
self._offset = []
for i in range(1024):
offset = i32(self.fp.read(4))
if not offset:
break
self._offset.append(offset)
self.__fp = self.fp
self.seek(0)
def seek(self, frame):
if frame >= len(self._offset):
raise EOFError("attempt to seek outside DCX directory")
self.frame = frame
self.fp = self.__fp
self.fp.seek(self._offset[frame])
PcxImageFile._open(self)
def tell(self):
return self.frame
Image.register_open("DCX", DcxImageFile, _accept)
Image.register_extension("DCX", ".dcx")

349
PIL/EpsImagePlugin.py Normal file
View File

@ -0,0 +1,349 @@
#
# The Python Imaging Library.
# $Id$
#
# EPS file handling
#
# History:
# 1995-09-01 fl Created (0.1)
# 1996-05-18 fl Don't choke on "atend" fields, Ghostscript interface (0.2)
# 1996-08-22 fl Don't choke on floating point BoundingBox values
# 1996-08-23 fl Handle files from Macintosh (0.3)
# 2001-02-17 fl Use 're' instead of 'regex' (Python 2.1) (0.4)
# 2003-09-07 fl Check gs.close status (from Federico Di Gregorio) (0.5)
#
# Copyright (c) 1997-2003 by Secret Labs AB.
# Copyright (c) 1995-2003 by Fredrik Lundh
#
# See the README file for information on usage and redistribution.
#
__version__ = "0.5"
import re, string
import Image, ImageFile
#
# --------------------------------------------------------------------
def i32(c):
return ord(c[0]) + (ord(c[1])<<8) + (ord(c[2])<<16) + (ord(c[3])<<24)
def o32(i):
return chr(i&255) + chr(i>>8&255) + chr(i>>16&255) + chr(i>>24&255)
split = re.compile(r"^%%([^:]*):[ \t]*(.*)[ \t]*$")
field = re.compile(r"^%[%!\w]([^:]*)[ \t]*$")
def Ghostscript(tile, size, fp):
"""Render an image using Ghostscript (Unix only)"""
# Unpack decoder tile
decoder, tile, offset, data = tile[0]
length, bbox = data
import tempfile, os
file = tempfile.mktemp()
# Build ghostscript command
command = ["gs",
"-q", # quite mode
"-g%dx%d" % size, # set output geometry (pixels)
"-dNOPAUSE -dSAFER", # don't pause between pages, safe mode
"-sDEVICE=ppmraw", # ppm driver
"-sOutputFile=%s" % file,# output file
"- >/dev/null 2>/dev/null"]
command = string.join(command)
# push data through ghostscript
try:
gs = os.popen(command, "w")
# adjust for image origin
if bbox[0] != 0 or bbox[1] != 0:
gs.write("%d %d translate\n" % (-bbox[0], -bbox[1]))
fp.seek(offset)
while length > 0:
s = fp.read(8192)
if not s:
break
length = length - len(s)
gs.write(s)
status = gs.close()
if status:
raise IOError("gs failed (status %d)" % status)
im = Image.core.open_ppm(file)
finally:
try: os.unlink(file)
except: pass
return im
class PSFile:
"""Wrapper that treats either CR or LF as end of line."""
def __init__(self, fp):
self.fp = fp
self.char = None
def __getattr__(self, id):
v = getattr(self.fp, id)
setattr(self, id, v)
return v
def seek(self, offset, whence=0):
self.char = None
self.fp.seek(offset, whence)
def tell(self):
pos = self.fp.tell()
if self.char:
pos = pos - 1
return pos
def readline(self):
s = ""
if self.char:
c = self.char
self.char = None
else:
c = self.fp.read(1)
while c not in "\r\n":
s = s + c
c = self.fp.read(1)
if c == "\r":
self.char = self.fp.read(1)
if self.char == "\n":
self.char = None
return s + "\n"
def _accept(prefix):
return prefix[:4] == "%!PS" or i32(prefix) == 0xC6D3D0C5L
##
# Image plugin for Encapsulated Postscript. This plugin supports only
# a few variants of this format.
class EpsImageFile(ImageFile.ImageFile):
"""EPS File Parser for the Python Imaging Library"""
format = "EPS"
format_description = "Encapsulated Postscript"
def _open(self):
# FIXME: should check the first 512 bytes to see if this
# really is necessary (platform-dependent, though...)
fp = PSFile(self.fp)
# HEAD
s = fp.read(512)
if s[:4] == "%!PS":
offset = 0
fp.seek(0, 2)
length = fp.tell()
elif i32(s) == 0xC6D3D0C5L:
offset = i32(s[4:])
length = i32(s[8:])
fp.seek(offset)
else:
raise SyntaxError, "not an EPS file"
fp.seek(offset)
box = None
self.mode = "RGB"
self.size = 1, 1 # FIXME: huh?
#
# Load EPS header
s = fp.readline()
while s:
if len(s) > 255:
raise SyntaxError, "not an EPS file"
if s[-2:] == '\r\n':
s = s[:-2]
elif s[-1:] == '\n':
s = s[:-1]
try:
m = split.match(s)
except re.error, v:
raise SyntaxError, "not an EPS file"
if m:
k, v = m.group(1, 2)
self.info[k] = v
if k == "BoundingBox":
try:
# Note: The DSC spec says that BoundingBox
# fields should be integers, but some drivers
# put floating point values there anyway.
box = map(int, map(float, string.split(v)))
self.size = box[2] - box[0], box[3] - box[1]
self.tile = [("eps", (0,0) + self.size, offset,
(length, box))]
except:
pass
else:
m = field.match(s)
if m:
k = m.group(1)
if k == "EndComments":
break
if k[:8] == "PS-Adobe":
self.info[k[:8]] = k[9:]
else:
self.info[k] = ""
else:
raise IOError, "bad EPS header"
s = fp.readline()
if s[:1] != "%":
break
#
# Scan for an "ImageData" descriptor
while s[0] == "%":
if len(s) > 255:
raise SyntaxError, "not an EPS file"
if s[-2:] == '\r\n':
s = s[:-2]
elif s[-1:] == '\n':
s = s[:-1]
if s[:11] == "%ImageData:":
[x, y, bi, mo, z3, z4, en, id] =\
string.split(s[11:], maxsplit=7)
x = int(x); y = int(y)
bi = int(bi)
mo = int(mo)
en = int(en)
if en == 1:
decoder = "eps_binary"
elif en == 2:
decoder = "eps_hex"
else:
break
if bi != 8:
break
if mo == 1:
self.mode = "L"
elif mo == 2:
self.mode = "LAB"
elif mo == 3:
self.mode = "RGB"
else:
break
if id[:1] == id[-1:] == '"':
id = id[1:-1]
# Scan forward to the actual image data
while 1:
s = fp.readline()
if not s:
break
if s[:len(id)] == id:
self.size = x, y
self.tile2 = [(decoder,
(0, 0, x, y),
fp.tell(),
0)]
return
s = fp.readline()
if not s:
break
if not box:
raise IOError, "cannot determine EPS bounding box"
def load(self):
# Load EPS via Ghostscript
if not self.tile:
return
self.im = Ghostscript(self.tile, self.size, self.fp)
self.mode = self.im.mode
self.size = self.im.size
self.tile = []
#
# --------------------------------------------------------------------
def _save(im, fp, filename, eps=1):
"""EPS Writer for the Python Imaging Library."""
#
# make sure image data is available
im.load()
#
# determine postscript image mode
if im.mode == "L":
operator = (8, 1, "image")
elif im.mode == "RGB":
operator = (8, 3, "false 3 colorimage")
elif im.mode == "CMYK":
operator = (8, 4, "false 4 colorimage")
else:
raise ValueError, "image mode is not supported"
if eps:
#
# write EPS header
fp.write("%!PS-Adobe-3.0 EPSF-3.0\n")
fp.write("%%Creator: PIL 0.1 EpsEncode\n")
#fp.write("%%CreationDate: %s"...)
fp.write("%%%%BoundingBox: 0 0 %d %d\n" % im.size)
fp.write("%%Pages: 1\n")
fp.write("%%EndComments\n")
fp.write("%%Page: 1 1\n")
fp.write("%%ImageData: %d %d " % im.size)
fp.write("%d %d 0 1 1 \"%s\"\n" % operator)
#
# image header
fp.write("gsave\n")
fp.write("10 dict begin\n")
fp.write("/buf %d string def\n" % (im.size[0] * operator[1]))
fp.write("%d %d scale\n" % im.size)
fp.write("%d %d 8\n" % im.size) # <= bits
fp.write("[%d 0 0 -%d 0 %d]\n" % (im.size[0], im.size[1], im.size[1]))
fp.write("{ currentfile buf readhexstring pop } bind\n")
fp.write("%s\n" % operator[2])
ImageFile._save(im, fp, [("eps", (0,0)+im.size, 0, None)])
fp.write("\n%%%%EndBinary\n")
fp.write("grestore end\n")
fp.flush()
#
# --------------------------------------------------------------------
Image.register_open(EpsImageFile.format, EpsImageFile, _accept)
Image.register_save(EpsImageFile.format, _save)
Image.register_extension(EpsImageFile.format, ".ps")
Image.register_extension(EpsImageFile.format, ".eps")
Image.register_mime(EpsImageFile.format, "application/postscript")

157
PIL/ExifTags.py Normal file
View File

@ -0,0 +1,157 @@
#
# The Python Imaging Library.
# $Id$
#
# EXIF tags
#
# Copyright (c) 2003 by Secret Labs AB
#
# See the README file for information on usage and redistribution.
#
##
# This module provides constants and clear-text names for various
# well-known EXIF tags.
##
##
# Maps EXIF tags to tag names.
TAGS = {
# possibly incomplete
0x0100: "ImageWidth",
0x0101: "ImageLength",
0x0102: "BitsPerSample",
0x0103: "Compression",
0x0106: "PhotometricInterpretation",
0x010e: "ImageDescription",
0x010f: "Make",
0x0110: "Model",
0x0111: "StripOffsets",
0x0112: "Orientation",
0x0115: "SamplesPerPixel",
0x0116: "RowsPerStrip",
0x0117: "StripByteConunts",
0x011a: "XResolution",
0x011a: "XResolution",
0x011b: "YResolution",
0x011b: "YResolution",
0x011c: "PlanarConfiguration",
0x0128: "ResolutionUnit",
0x0128: "ResolutionUnit",
0x012d: "TransferFunction",
0x0131: "Software",
0x0132: "DateTime",
0x013b: "Artist",
0x013e: "WhitePoint",
0x013f: "PrimaryChromaticities",
0x0201: "JpegIFOffset",
0x0202: "JpegIFByteCount",
0x0211: "YCbCrCoefficients",
0x0211: "YCbCrCoefficients",
0x0212: "YCbCrSubSampling",
0x0213: "YCbCrPositioning",
0x0213: "YCbCrPositioning",
0x0214: "ReferenceBlackWhite",
0x0214: "ReferenceBlackWhite",
0x1000: "RelatedImageFileFormat",
0x1001: "RelatedImageLength",
0x1001: "RelatedImageWidth",
0x828d: "CFARepeatPatternDim",
0x828e: "CFAPattern",
0x828f: "BatteryLevel",
0x8298: "Copyright",
0x829a: "ExposureTime",
0x829d: "FNumber",
0x8769: "ExifOffset",
0x8773: "InterColorProfile",
0x8822: "ExposureProgram",
0x8824: "SpectralSensitivity",
0x8825: "GPSInfo",
0x8827: "ISOSpeedRatings",
0x8828: "OECF",
0x8829: "Interlace",
0x882a: "TimeZoneOffset",
0x882b: "SelfTimerMode",
0x9000: "ExifVersion",
0x9003: "DateTimeOriginal",
0x9004: "DateTimeDigitized",
0x9101: "ComponentsConfiguration",
0x9102: "CompressedBitsPerPixel",
0x9201: "ShutterSpeedValue",
0x9202: "ApertureValue",
0x9203: "BrightnessValue",
0x9204: "ExposureBiasValue",
0x9205: "MaxApertureValue",
0x9206: "SubjectDistance",
0x9207: "MeteringMode",
0x9208: "LightSource",
0x9209: "Flash",
0x920a: "FocalLength",
0x920b: "FlashEnergy",
0x920c: "SpatialFrequencyResponse",
0x920d: "Noise",
0x9211: "ImageNumber",
0x9212: "SecurityClassification",
0x9213: "ImageHistory",
0x9214: "SubjectLocation",
0x9215: "ExposureIndex",
0x9216: "TIFF/EPStandardID",
0x927c: "MakerNote",
0x9286: "UserComment",
0x9290: "SubsecTime",
0x9291: "SubsecTimeOriginal",
0x9292: "SubsecTimeDigitized",
0xa000: "FlashPixVersion",
0xa001: "ColorSpace",
0xa002: "ExifImageWidth",
0xa003: "ExifImageHeight",
0xa004: "RelatedSoundFile",
0xa005: "ExifInteroperabilityOffset",
0xa20b: "FlashEnergy",
0xa20c: "SpatialFrequencyResponse",
0xa20e: "FocalPlaneXResolution",
0xa20f: "FocalPlaneYResolution",
0xa210: "FocalPlaneResolutionUnit",
0xa214: "SubjectLocation",
0xa215: "ExposureIndex",
0xa217: "SensingMethod",
0xa300: "FileSource",
0xa301: "SceneType",
0xa302: "CFAPattern",
}
##
# Maps EXIF GSP tags to tag names.
GPSTAGS = {
0: "GPSVersionID",
1: "GPSLatitudeRef",
2: "GPSLatitude",
3: "GPSLongitudeRef",
4: "GPSLongitude",
5: "GPSAltitudeRef",
6: "GPSAltitude",
7: "GPSTimeStamp",
8: "GPSSatellites",
9: "GPSStatus",
10: "GPSMeasureMode",
11: "GPSDOP",
12: "GPSSpeedRef",
13: "GPSSpeed",
14: "GPSTrackRef",
15: "GPSTrack",
16: "GPSImgDirectionRef",
17: "GPSImgDirection",
18: "GPSMapDatum",
19: "GPSDestLatitudeRef",
20: "GPSDestLatitude",
21: "GPSDestLongitudeRef",
22: "GPSDestLongitude",
23: "GPSDestBearingRef",
24: "GPSDestBearing",
25: "GPSDestDistanceRef",
26: "GPSDestDistance"
}

Some files were not shown because too many files have changed in this diff Show More