ImageResizer
3.4.0
|
Not for external use. Inherit from BuilderExtension instead. Dual-purpose base class for both ImageBuilder and BuilderExtension Extensions can inherit and override certain methods. ImageBuilder inherits this method to utilize its extension invocation code. Each method of AbstractImageProcessor loops through all extensions and executes the same method on each. Provides a sort of multiple-inheritance mechanisim. More...
Public Member Functions | |
AbstractImageProcessor () | |
Creates a new AbstractImageProcessor with no extensions More... | |
AbstractImageProcessor (IEnumerable< BuilderExtension > extensions) | |
Creates a new AbstractImageProcessor which will run the specified extensions with each method call. More... | |
virtual Bitmap | DecodeStreamFailed (Stream s, ResizeSettings settings, string optionalPath) |
Extensions are executed until one extension returns a non-null value. This is taken to mean that the error has been resolved. Extensions should not throw an exception unless they wish to cause subsequent extensions to not execute. If extensions throw an ArgumentException or ExternalException, it will be wrapped in an ImageCorruptedException instance. If the Bitmap class is used for decoding, read gdi-bugs.txt and make sure you set b.Tag to new BitmapTag(optionalPath,stream); More... | |
virtual Bitmap | DecodeStream (Stream s, ResizeSettings settings, string optionalPath) |
Extend this to support alternate image source formats. If the Bitmap class is used for decoding, read gdi-bugs.txt and make sure you set b.Tag to new BitmapTag(optionalPath,stream); More... | |
Protected Member Functions | |
virtual void | PreLoadImage (ref object source, ref string path, ref bool disposeSource, ref ResizeSettings settings) |
Extend this to allow additional types of source objects to be accepted by transforming them into Bitmap instances. More... | |
virtual Stream | GetStream (object source, ResizeSettings settings, ref bool disposeStream, out string path, out bool restoreStreamPosition) |
Extend this to allow additional types of source objects to be accepted by transforming them into Stream instances. First plugin to return a Stream wins. More... | |
virtual RequestedAction | PostDecodeStream (ref Bitmap img, ResizeSettings settings) |
Extend this to modify the Bitmap instance after it has been decoded by DecodeStream or DecodeStreamFailed More... | |
virtual void | PreAcquireStream (ref object dest, ResizeSettings settings) |
Extend this to allow additional types of destination objects to be accepted by transforming them into a stream. More... | |
virtual RequestedAction | BuildJob (ImageResizer.ImageJob job) |
The method to override if you want to replace the entire pipeline. All Build() calls call this method first. Does nothing in ImageBuilder More... | |
virtual RequestedAction | buildToStream (Bitmap source, Stream dest, ResizeSettings settings) |
Called for Build() calls that want the result encoded. (Not for Bitmap Build(source,settings) calls. Only override this method if you need to replace the behavior of image encoding and image processing together, such as adding support for resizing multi-page TIFF files or animated GIFs. More... | |
virtual Bitmap | buildToBitmap (Bitmap source, ResizeSettings settings, bool transparencySupported) |
Most calls funnel through here. Default behavior configures an ImageState instance and calls Process(imageState); Shouldn't be overriden for any reason I can think of - use the appropriate virtual method under Process(). If an extension returns a Bitmap instance, it will be used instead of the default behavior. Does NOT dispose of 'source' or 'source's underlying stream. More... | |
virtual RequestedAction | OnProcess (ImageState s) |
Process.0 First step of the Process() method. Can replace the entire Process method if RequestAction.Cancel is returned. Can be used to add points to translate (for image maps), and also to modify the settings More... | |
virtual RequestedAction | PrepareSourceBitmap (ImageState s) |
Process.1 Switches the bitmap to the correct frame or page, and applies source flipping commands. More... | |
virtual RequestedAction | PostPrepareSourceBitmap (ImageState s) |
Process.2 Extend this to apply any pre-processing to the source bitmap that needs to occur before Layout begins More... | |
virtual RequestedAction | Layout (ImageState s) |
Process.3(Layout).0: This is the last point at which points to translate should be added. Only return RequestedAction.Cancel if you wish to replace the entire Layout sequence logic. More... | |
virtual RequestedAction | FlipExistingPoints (ImageState s) |
Process.3(Layout).1: This is where the points in the layout are flipped the same way the source bitmap was flipped (unless their flags specify otherwise) More... | |
virtual RequestedAction | LayoutImage (ImageState s) |
Process.3(Layout).2: Rings 'image' and 'imageArea' are added to the layout. More... | |
virtual RequestedAction | PostLayoutImage (ImageState s) |
Process.3(Layout).3: Add rings here to insert them between the image area and the padding More... | |
virtual RequestedAction | LayoutPadding (ImageState s) |
Process.3(Layout).4: Ring "padding" is added to the layout More... | |
virtual RequestedAction | PostLayoutPadding (ImageState s) |
Process.3(Layout).5: Add rings here to insert them between the padding and the border More... | |
virtual RequestedAction | LayoutBorder (ImageState s) |
Process.3(Layout).6: Ring "border" is added to the layout More... | |
virtual RequestedAction | PostLayoutBorder (ImageState s) |
Process.3(Layout).7: Add rings here to insert them between the border and the effect rings More... | |
virtual RequestedAction | LayoutEffects (ImageState s) |
Process.3(Layout).8: Effects such as 'shadow' are added here. More... | |
virtual RequestedAction | PostLayoutEffects (ImageState s) |
Process.3(Layout).9: Add rings here to insert them between the effects and the margin More... | |
virtual RequestedAction | LayoutMargin (ImageState s) |
Process.3(Layout).10: Margins are added to the layout More... | |
virtual RequestedAction | PostLayoutMargin (ImageState s) |
Process.3(Layout).11: Add rings here to insert them around the margin. Rings will be outermost More... | |
virtual RequestedAction | LayoutRotate (ImageState s) |
Process.3(Layout).anytime: Occurs when the layout is rotated. May be called anytime during Layout() More... | |
virtual RequestedAction | PostLayoutRotate (ImageState s) |
Process.3(Layout).anytime: Occurs after the layout is rotated. May be called anytime during Layout() More... | |
virtual RequestedAction | LayoutNormalize (ImageState s) |
Process.3(Layout).anytime: Occurs when the layout is normalized to 0,0. May be called anytime during Layout() More... | |
virtual RequestedAction | PostLayoutNormalize (ImageState s) |
Process.3(Layout).anytime: Occurs after the layout is normalized. May be called anytime during Layout() More... | |
virtual RequestedAction | LayoutRound (ImageState s) |
Process.3(Layout).anytime: Occurs when the layout point values are rounded to integers. May be called anytime during Layout() More... | |
virtual RequestedAction | PostLayoutRound (ImageState s) |
Process.3(Layout).anytime: Occurs after the layout point values are rounded to integers. May be called anytime during Layout() More... | |
virtual RequestedAction | EndLayout (ImageState s) |
Process.3(Layout).12: Occurs once layout has finished. No more changes should occur to points or rings in the layout after this method. destSize is calculated here. More... | |
virtual RequestedAction | PrepareDestinationBitmap (ImageState s) |
Process.4: The destination bitmap is created and sized based destSize. A graphics object is initialized for rendering. More... | |
virtual RequestedAction | Render (ImageState s) |
Process.5(Render) Rendering. Do not return RequestedAction.Cancel unless you want to replace the entire rendering system. More... | |
virtual RequestedAction | RenderBackground (ImageState s) |
Process.5(Render).1 The background color is rendered More... | |
virtual RequestedAction | PostRenderBackground (ImageState s) |
Process.5(Render).2 After the background color is rendered More... | |
virtual RequestedAction | RenderEffects (ImageState s) |
Process.5(Render).3 Effects (such as a drop shadow or outer glow) are rendered More... | |
virtual RequestedAction | PostRenderEffects (ImageState s) |
Process.5(Render).4 After outer effects are rendered More... | |
virtual RequestedAction | RenderPadding (ImageState s) |
Process.5(Render).5 Image padding is drawn More... | |
virtual RequestedAction | PostRenderPadding (ImageState s) |
Process.5(Render).6 After image padding is drawn More... | |
virtual RequestedAction | CreateImageAttribues (ImageState s) |
Process.5(Render).7: An ImageAttributes instance is created if it doesn't already exist. More... | |
virtual RequestedAction | PostCreateImageAttributes (ImageState s) |
Process.5(Render).8: The ImageAttributes instance exists and can be modified or replaced. More... | |
virtual RequestedAction | PreRenderImage (ImageState s) |
Process.5(Render).9: Plugins have a chance to pre-process the source image before it gets rendered, and save it to s.preRenderBitmap More... | |
virtual RequestedAction | RenderImage (ImageState s) |
Process.5(Render).10: The image is copied to the destination parallelogram specified by ring 'image'. More... | |
virtual RequestedAction | PostRenderImage (ImageState s) |
Process.5(Render).11: After the image is drawn More... | |
virtual RequestedAction | RenderBorder (ImageState s) |
Process.5(Render).12: The border is rendered More... | |
virtual RequestedAction | PostRenderBorder (ImageState s) |
Process.5(Render).13: After the border is drawn More... | |
virtual RequestedAction | PreRenderOverlays (ImageState s) |
Process.5(Render).14: Any last-minute changes before watermarking or overlays are applied More... | |
virtual RequestedAction | RenderOverlays (ImageState s) |
Process.5(Render).15: Watermarks can be rendered here. All image processing should be done More... | |
virtual RequestedAction | PreFlushChanges (ImageState s) |
Process.5(Render).16: Called before changes are flushed and the graphics object is destroyed. More... | |
virtual RequestedAction | FlushChanges (ImageState s) |
Process.5(Render).17: Changes are flushed to the bitmap here and the graphics object is destroyed. More... | |
virtual RequestedAction | PostFlushChanges (ImageState s) |
Process.5(Render).18: Changes have been flushed to the bitmap, but the final bitmap has not been flipped yet. More... | |
virtual RequestedAction | ProcessFinalBitmap (ImageState s) |
Process.6: Non-rendering changes to the bitmap object occur here, such as flipping. The graphics object is unavailable. More... | |
virtual RequestedAction | EndProcess (ImageState s) |
Process.7: Layout and rendering are both complete. More... | |
Protected Attributes | |
volatile IEnumerable < BuilderExtension > | exts |
Contains the set of extensions that are called for every method. More... | |
Not for external use. Inherit from BuilderExtension instead. Dual-purpose base class for both ImageBuilder and BuilderExtension Extensions can inherit and override certain methods. ImageBuilder inherits this method to utilize its extension invocation code. Each method of AbstractImageProcessor loops through all extensions and executes the same method on each. Provides a sort of multiple-inheritance mechanisim.
Definition at line 31 of file AbstractImageProcessor.cs.
|
inline |
Creates a new AbstractImageProcessor with no extensions
Definition at line 35 of file AbstractImageProcessor.cs.
|
inline |
Creates a new AbstractImageProcessor which will run the specified extensions with each method call.
extensions |
Definition at line 42 of file AbstractImageProcessor.cs.
|
inlineprotectedvirtual |
The method to override if you want to replace the entire pipeline. All Build() calls call this method first. Does nothing in ImageBuilder
job |
Definition at line 151 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.BuildJob().
|
inlineprotectedvirtual |
Most calls funnel through here. Default behavior configures an ImageState instance and calls Process(imageState); Shouldn't be overriden for any reason I can think of - use the appropriate virtual method under Process(). If an extension returns a Bitmap instance, it will be used instead of the default behavior. Does NOT dispose of 'source' or 'source's underlying stream.
source | |
settings | |
transparencySupported |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 188 of file AbstractImageProcessor.cs.
|
inlineprotectedvirtual |
Called for Build() calls that want the result encoded. (Not for Bitmap Build(source,settings) calls. Only override this method if you need to replace the behavior of image encoding and image processing together, such as adding support for resizing multi-page TIFF files or animated GIFs.
Does NOT dispose of 'source' or 'source's underlying stream.
source | |
dest | |
settings |
Reimplemented in ImageResizer.ImageBuilder, and ImageResizer.Plugins.AnimatedGifs.AnimatedGifs.
Definition at line 171 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.buildToStream().
|
inlineprotectedvirtual |
Process.5(Render).7: An ImageAttributes instance is created if it doesn't already exist.
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 531 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.CreateImageAttribues().
|
inlinevirtual |
Extend this to support alternate image source formats. If the Bitmap class is used for decoding, read gdi-bugs.txt and make sure you set b.Tag to new BitmapTag(optionalPath,stream);
s | |
settings | |
optionalPath |
Reimplemented in ImageResizer.ImageBuilder, ImageResizer.Plugins.PdfRenderer.PdfRendererPlugin, ImageResizer.Plugins.PsdReader.PsdReader, and ImageResizer.Plugins.WebPDecoder.WebPDecoderPlugin.
Definition at line 114 of file AbstractImageProcessor.cs.
|
inlinevirtual |
Extensions are executed until one extension returns a non-null value. This is taken to mean that the error has been resolved. Extensions should not throw an exception unless they wish to cause subsequent extensions to not execute. If extensions throw an ArgumentException or ExternalException, it will be wrapped in an ImageCorruptedException instance. If the Bitmap class is used for decoding, read gdi-bugs.txt and make sure you set b.Tag to new BitmapTag(optionalPath,stream);
Reimplemented in ImageResizer.Plugins.PsdReader.PsdReader, and ImageResizer.Plugins.WebPDecoder.WebPDecoderPlugin.
Definition at line 95 of file AbstractImageProcessor.cs.
|
inlineprotectedvirtual |
Process.3(Layout).12: Occurs once layout has finished. No more changes should occur to points or rings in the layout after this method. destSize is calculated here.
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 431 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.EndLayout().
|
inlineprotectedvirtual |
Process.7: Layout and rendering are both complete.
s |
Definition at line 682 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.EndProcess().
|
inlineprotectedvirtual |
Process.3(Layout).1: This is where the points in the layout are flipped the same way the source bitmap was flipped (unless their flags specify otherwise)
s |
Definition at line 239 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.FlipExistingPoints().
|
inlineprotectedvirtual |
Process.5(Render).17: Changes are flushed to the bitmap here and the graphics object is destroyed.
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 646 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.FlushChanges().
|
inlineprotectedvirtual |
Extend this to allow additional types of source objects to be accepted by transforming them into Stream instances. First plugin to return a Stream wins.
source | |
settings | |
disposeStream | |
path | |
restoreStreamPosition |
Reimplemented in ImageResizer.Plugins.RemoteReader.RemoteReaderPlugin.
Definition at line 72 of file AbstractImageProcessor.cs.
|
inlineprotectedvirtual |
Process.3(Layout).0: This is the last point at which points to translate should be added. Only return RequestedAction.Cancel if you wish to replace the entire Layout sequence logic.
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 230 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.Layout().
|
inlineprotectedvirtual |
Process.3(Layout).6: Ring "border" is added to the layout
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 287 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutBorder().
|
inlineprotectedvirtual |
Process.3(Layout).8: Effects such as 'shadow' are added here.
s |
Reimplemented in ImageResizer.Plugins.Basic.DropShadow.
Definition at line 311 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutEffects().
|
inlineprotectedvirtual |
Process.3(Layout).2: Rings 'image' and 'imageArea' are added to the layout.
s |
Reimplemented in ImageResizer.ImageBuilder, ImageResizer.Plugins.WpfBuilder.WpfBuilderPlugin, ImageResizer.Plugins.SeamCarving.SeamCarvingPlugin, ImageResizer.Plugins.CropAround.CropAroundPlugin, and ImageResizer.Plugins.WhitespaceTrimmer.WhitespaceTrimmerPlugin.
Definition at line 248 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutImage().
|
inlineprotectedvirtual |
Process.3(Layout).10: Margins are added to the layout
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 335 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutMargin().
|
inlineprotectedvirtual |
Process.3(Layout).anytime: Occurs when the layout is normalized to 0,0. May be called anytime during Layout()
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 383 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutNormalize().
|
inlineprotectedvirtual |
Process.3(Layout).4: Ring "padding" is added to the layout
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 266 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutPadding().
|
inlineprotectedvirtual |
Process.3(Layout).anytime: Occurs when the layout is rotated. May be called anytime during Layout()
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 359 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutRotate().
|
inlineprotectedvirtual |
Process.3(Layout).anytime: Occurs when the layout point values are rounded to integers. May be called anytime during Layout()
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 407 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.LayoutRound().
|
inlineprotectedvirtual |
Process.0 First step of the Process() method. Can replace the entire Process method if RequestAction.Cancel is returned. Can be used to add points to translate (for image maps), and also to modify the settings
s |
Definition at line 203 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.OnProcess().
|
inlineprotectedvirtual |
Process.5(Render).8: The ImageAttributes instance exists and can be modified or replaced.
s |
Reimplemented in ImageResizer.Plugins.SimpleFilters.SimpleFilters.
Definition at line 542 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostCreateImageAttributes().
|
inlineprotectedvirtual |
Extend this to modify the Bitmap instance after it has been decoded by DecodeStream or DecodeStreamFailed
Reimplemented in ImageResizer.Plugins.Basic.AutoRotate.
Definition at line 127 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostDecodeStream().
|
inlineprotectedvirtual |
Process.5(Render).18: Changes have been flushed to the bitmap, but the final bitmap has not been flipped yet.
s |
Definition at line 658 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostFlushChanges().
|
inlineprotectedvirtual |
Process.3(Layout).7: Add rings here to insert them between the border and the effect rings
s |
Definition at line 299 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutBorder().
|
inlineprotectedvirtual |
Process.3(Layout).9: Add rings here to insert them between the effects and the margin
s |
Definition at line 323 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutEffects().
|
inlineprotectedvirtual |
Process.3(Layout).3: Add rings here to insert them between the image area and the padding
s |
Reimplemented in ImageResizer.Plugins.SeamCarving.SeamCarvingPlugin, ImageResizer.Plugins.WhitespaceTrimmer.WhitespaceTrimmerPlugin, and ImageResizer.Plugins.Basic.SizeLimiting.
Definition at line 257 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutImage().
|
inlineprotectedvirtual |
Process.3(Layout).11: Add rings here to insert them around the margin. Rings will be outermost
s |
Definition at line 347 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutMargin().
|
inlineprotectedvirtual |
Process.3(Layout).anytime: Occurs after the layout is normalized. May be called anytime during Layout()
s |
Definition at line 395 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutNormalize().
|
inlineprotectedvirtual |
Process.3(Layout).5: Add rings here to insert them between the padding and the border
s |
Definition at line 275 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutPadding().
|
inlineprotectedvirtual |
Process.3(Layout).anytime: Occurs after the layout is rotated. May be called anytime during Layout()
s |
Definition at line 371 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutRotate().
|
inlineprotectedvirtual |
Process.3(Layout).anytime: Occurs after the layout point values are rounded to integers. May be called anytime during Layout()
s |
Definition at line 419 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostLayoutRound().
|
inlineprotectedvirtual |
Process.2 Extend this to apply any pre-processing to the source bitmap that needs to occur before Layout begins
s |
Reimplemented in ImageResizer.Plugins.Faces.FacesPlugin.
Definition at line 220 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostPrepareSourceBitmap().
|
inlineprotectedvirtual |
Process.5(Render).2 After the background color is rendered
s |
Reimplemented in ImageResizer.Plugins.Watermark.WatermarkPlugin.
Definition at line 475 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostRenderBackground().
|
inlineprotectedvirtual |
Process.5(Render).13: After the border is drawn
s |
Definition at line 599 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostRenderBorder().
|
inlineprotectedvirtual |
Process.5(Render).4 After outer effects are rendered
s |
Definition at line 498 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostRenderEffects().
|
inlineprotectedvirtual |
Process.5(Render).11: After the image is drawn
s |
Reimplemented in ImageResizer.Plugins.SimpleFilters.SimpleFilters, ImageResizer.Plugins.Faces.FacesPlugin, ImageResizer.Plugins.RedEye.RedEyePlugin, and ImageResizer.Plugins.AdvancedFilters.AdvancedFilters.
Definition at line 577 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostRenderImage().
|
inlineprotectedvirtual |
Process.5(Render).6 After image padding is drawn
s |
Definition at line 520 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PostRenderPadding().
|
inlineprotectedvirtual |
Extend this to allow additional types of destination objects to be accepted by transforming them into a stream.
dest | |
settings |
Definition at line 140 of file AbstractImageProcessor.cs.
|
inlineprotectedvirtual |
Process.5(Render).16: Called before changes are flushed and the graphics object is destroyed.
s |
Reimplemented in ImageResizer.Plugins.Basic.Trial.
Definition at line 634 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PreFlushChanges().
|
inlineprotectedvirtual |
Extend this to allow additional types of source objects to be accepted by transforming them into Bitmap instances.
source | |
path | |
disposeSource | |
settings |
Definition at line 59 of file AbstractImageProcessor.cs.
|
inlineprotectedvirtual |
Process.4: The destination bitmap is created and sized based destSize. A graphics object is initialized for rendering.
s |
Reimplemented in ImageResizer.ImageBuilder, and ImageResizer.Plugins.Basic.SizeLimiting.
Definition at line 442 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PrepareDestinationBitmap().
|
inlineprotectedvirtual |
Process.1 Switches the bitmap to the correct frame or page, and applies source flipping commands.
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 212 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PrepareSourceBitmap().
|
inlineprotectedvirtual |
Process.5(Render).9: Plugins have a chance to pre-process the source image before it gets rendered, and save it to s.preRenderBitmap
s |
Reimplemented in ImageResizer.Plugins.SeamCarving.SeamCarvingPlugin, ImageResizer.Plugins.AdvancedFilters.AdvancedFilters, ImageResizer.Plugins.FreeImageScaling.FreeImageScalingPlugin, and ImageResizer.Plugins.SimpleFilters.SimpleFilters.
Definition at line 554 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PreRenderImage().
|
inlineprotectedvirtual |
Process.5(Render).14: Any last-minute changes before watermarking or overlays are applied
s |
Definition at line 611 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.PreRenderOverlays().
|
inlineprotectedvirtual |
Process.6: Non-rendering changes to the bitmap object occur here, such as flipping. The graphics object is unavailable.
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 670 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.ProcessFinalBitmap().
|
inlineprotectedvirtual |
Process.5(Render) Rendering. Do not return RequestedAction.Cancel unless you want to replace the entire rendering system.
s |
Reimplemented in ImageResizer.ImageBuilder, ImageResizer.Plugins.Faces.FacesPlugin, and ImageResizer.Plugins.RedEye.RedEyePlugin.
Definition at line 453 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.Render().
|
inlineprotectedvirtual |
Process.5(Render).1 The background color is rendered
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 464 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.RenderBackground().
|
inlineprotectedvirtual |
Process.5(Render).12: The border is rendered
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 588 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.RenderBorder().
|
inlineprotectedvirtual |
Process.5(Render).3 Effects (such as a drop shadow or outer glow) are rendered
s |
Reimplemented in ImageResizer.Plugins.Basic.DropShadow.
Definition at line 487 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.RenderEffects().
|
inlineprotectedvirtual |
Process.5(Render).10: The image is copied to the destination parallelogram specified by ring 'image'.
s |
Reimplemented in ImageResizer.ImageBuilder, and ImageResizer.Plugins.Basic.SpeedOrQuality.
Definition at line 566 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.RenderImage().
|
inlineprotectedvirtual |
Process.5(Render).15: Watermarks can be rendered here. All image processing should be done
s |
Reimplemented in ImageResizer.Plugins.Watermark.WatermarkPlugin.
Definition at line 623 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.RenderOverlays().
|
inlineprotectedvirtual |
Process.5(Render).5 Image padding is drawn
s |
Reimplemented in ImageResizer.ImageBuilder.
Definition at line 509 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.Resizing.AbstractImageProcessor.RenderPadding().
|
protected |
Contains the set of extensions that are called for every method.
Definition at line 50 of file AbstractImageProcessor.cs.
Referenced by ImageResizer.ImageBuilder.Copy().