Foreword | p. xiii |
About the Author | p. xv |
About the Technical Reviewer | p. xvii |
Acknowledgments | p. xix |
Introduction | p. xxi |
Installing and Configuring ImageMagick | p. 1 |
Installing Precompiled Versions | p. 1 |
Debian and Ubuntu Linux | p. 1 |
Red Hat Linux | p. 2 |
Older ImageMagick Versions | p. 2 |
Microsoft Windows | p. 2 |
Installing from Source | p. 9 |
Introducing Dependencies | p. 9 |
Compiling on Unix Operating Systems | p. 10 |
Installing Using FreeBSD Ports | p. 14 |
Compiling ImageMagick on Microsoft Windows | p. 15 |
Exploring the Architecture of ImageMagick | p. 22 |
Using Configuration Files | p. 23 |
Using Environment Variables | p. 25 |
Limiting Resource Usage on the Command Line | p. 25 |
Determining What Is Configured | p. 25 |
Using ImageMagick | p. 27 |
Online Help | p. 27 |
Debug Output | p. 28 |
Verbose Output | p. 28 |
What Version of ImageMagick Is Installed? | p. 29 |
Conclusion | p. 29 |
Performing Basic Image Manipulation | p. 31 |
Introducing Imaging Theory | p. 31 |
Vector Images | p. 32 |
Raster Images | p. 33 |
Invoking convert | p. 35 |
Changing the Size of an Image | p. 35 |
Making an Image Smaller | p. 35 |
Making an Image Smaller Without Specifying Dimensions | p. 43 |
Understanding Geometries | p. 46 |
Making an Image Larger | p. 47 |
Processing Many Images at Once | p. 49 |
Conclusion | p. 49 |
Introducing Compression and Other Metadata | p. 51 |
Compressing Images | p. 51 |
Lossy Compression vs. Lossless Compression | p. 51 |
Which Format Is Right for You? | p. 57 |
Introducing Common File Formats | p. 58 |
Introducing LZW Compression | p. 59 |
Comparing File Sizes | p. 59 |
Manipulating Compression Options with ImageMagick | p. 61 |
Introducing Image Metadata | p. 66 |
Altering How Pixels Are Stored | p. 71 |
Introducing Gamma Correction | p. 73 |
Setting Color Intent and Profiles | p. 74 |
Handling Images That Don't Specify Dimensions | p. 74 |
Setting Image Resolution | p. 74 |
Transparency with GIF | p. 75 |
Storing Multiple Image Formats | p. 75 |
Adding, Removing, and Swapping Images | p. 76 |
Creating Multiple Image Files | p. 76 |
Decrypting Encrypted PDFs | p. 76 |
Manipulating Animated Images | p. 77 |
Changing the Frame Rate | p. 77 |
Morphing Two Images | p. 77 |
Creating Looping GIF Animations | p. 77 |
Using GIF Disposal | p. 78 |
Harnessing Disposal Methods | p. 78 |
Conclusion | p. 78 |
Using Other ImageMagick Tools | p. 79 |
Using the Command-Line Tools | p. 79 |
Compare | p. 79 |
Composite | p. 83 |
Conjure | p. 95 |
Convert | p. 95 |
Identify | p. 95 |
Import | p. 98 |
Mogrify | p. 100 |
Montage | p. 100 |
Using the Graphical Tools | p. 112 |
Animate | p. 112 |
Display | p. 114 |
Conclusion | p. 116 |
Performing Artistic Transformations | p. 119 |
Blur | p. 119 |
Charcoal | p. 120 |
Colorize | p. 121 |
Implode | p. 124 |
Noise | p. 125 |
Paint | p. 128 |
Radial-blur | p. 129 |
Raise | p. 130 |
Segment | p. 132 |
Sepia-tone | p. 133 |
Shade | p. 134 |
Sharpen | p. 135 |
Solarize | p. 136 |
Spread | p. 137 |
Swirl | p. 138 |
Threshold | p. 139 |
Unsharp | p. 140 |
Wave | p. 144 |
Virtual-pixel | p. 145 |
Conclusion | p. 146 |
Performing Other Image Transformations | p. 147 |
Performing Transformations on One Image | p. 147 |
Adding Borders to an Image | p. 147 |
Rotating an Image | p. 149 |
Manipulating Contrast | p. 152 |
Dithering an Image | p. 155 |
Equalizing an Image | p. 157 |
Flipping an Image | p. 159 |
Tinting an Image | p. 160 |
Negating an Image | p. 161 |
Normalizing, Enhancing, and Modulating an Image | p. 165 |
Shearing an Image | p. 172 |
Rolling an Image | p. 175 |
Turning Multiple Images into One Image | p. 176 |
Appending Images | p. 176 |
Averaging Images | p. 181 |
Flattening Images | p. 183 |
Conclusion | p. 183 |
Using the Drawing Commands | p. 185 |
Specifying Colors | p. 185 |
Using Named Colors | p. 185 |
Using HTML-Style Color Strings | p. 186 |
Using RGB Tuples | p. 194 |
Specifying a Page Size | p. 195 |
Specifying a Background Color | p. 195 |
Specifying the Fill Color and Stroke Color | p. 196 |
Setting Gravity | p. 198 |
Annotating an Image with Text | p. 199 |
Drawing Simple Shapes | p. 210 |
Drawing a Single Point | p. 211 |
Drawing a Straight Line | p. 211 |
Drawing a Rectangle | p. 212 |
Drawing a Rectangle with Rounded Corners | p. 213 |
Drawing a Circle | p. 214 |
Drawing an Arc | p. 215 |
Drawing an Ellipse | p. 216 |
Drawing a Polyline | p. 216 |
Drawing a Polygon | p. 217 |
Drawing a Bezier | p. 217 |
Drawing Text | p. 218 |
Performing Color Operations That Take a Point and a Method | p. 218 |
Transforming Your Drawings | p. 220 |
Compositing Images with the draw Command | p. 230 |
Using the Over Operator | p. 232 |
Using the In Operator | p. 233 |
Using the Out Operator | p. 233 |
Using the Atop Operator | p. 234 |
Using the Xor Operator | p. 235 |
Using the Plus Operator | p. 236 |
Using the Minus Operator | p. 237 |
Using the Difference Operator | p. 238 |
Using the Multiply Operator | p. 242 |
Using the Bumpmap Operator | p. 243 |
Performing Other Tasks with These Composition Operators | p. 244 |
Antialiasing Your Images | p. 245 |
Framing an Image | p. 247 |
Writing Each Step of the Way | p. 252 |
Applying Affine Matrices | p. 255 |
Conclusion | p. 262 |
PerlMagick: ImageMagick Programming with Perl | p. 263 |
Presenting the Problem | p. 263 |
Introducing the Format for This Chapter | p. 264 |
Introducing the Code Structure | p. 264 |
Using PhotoMagick.pm | p. 264 |
Introducing photomagick | p. 266 |
Introducing pmpublish | p. 281 |
Using the Templates | p. 288 |
Using the Index Template | p. 288 |
Using the Image Template | p. 289 |
Using the Thumbnail Template | p. 290 |
Conclusion | p. 290 |
Implementing Your Own Delegate with C | p. 291 |
How Delegates Are Configured | p. 291 |
Writing a Simple Delegate in C | p. 293 |
Conclusion | p. 299 |
RMagick: ImageMagick Programming with Ruby | p. 301 |
Presenting the Code | p. 301 |
Seeing the Helper Application in Action | p. 306 |
Conclusion | p. 310 |
MagickWand: ImageMagick Programming with PHP | p. 311 |
Presenting the Problem | p. 311 |
Presenting the Implementation | p. 311 |
Creating a Background Image | p. 313 |
Creating the Bar Images | p. 313 |
Presenting the Code | p. 314 |
Conclusion | p. 317 |
Where to Go from Here | p. 319 |
Where Do You Find Help Online? | p. 319 |
What If You Find a Bug in ImageMagick? | p. 320 |
Conclusion | p. 320 |
Index | p. 321 |
Table of Contents provided by Ingram. All Rights Reserved. |