# Anti-aliasing a image after resize using bitmap smoothing and the JPGEncoder class

**URL:** <https://forum.kirupa.com/t/anti-aliasing-a-image-after-resize-using-bitmap-smoothing-and-the-jpgencoder-class/245740>\
**Category:** Uncategorized\
**Created:** [December 3, 2007, 4:49pm UTC](https://forum.kirupa.com/t/anti-aliasing-a-image-after-resize-using-bitmap-smoothing-and-the-jpgencoder-class/245740 "2007-12-03T16:49:38Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![joshchernoff](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/joshchernoff/32/1852_2.png) [@joshchernoff](https://forum.kirupa.com/u/joshchernoff)\
**Post date:** [December 3, 2007, 4:49pm UTC](https://forum.kirupa.com/t/anti-aliasing-a-image-after-resize-using-bitmap-smoothing-and-the-jpgencoder-class/245740/1 "2007-12-03T16:49:38Z")

</div>

I’m trying to find a way to remove aliasing from an Image I’m shrinking to 25% of it’s original size. I’m trying to use the JPGEncoder class from the Adobe lib package and Bitmap smoothing but it looks like it’s just making an image from a sceenshot of the aliased image retaining all of it’s distortions

heres what I got so far

any ideas?

PS. I’m using the caurina tweener class to rescale the image.

ActionScript Code:  
[FONT=Courier New][LEFT][COLOR=#0000FF]import[/COLOR] com.[COLOR=#000080]adobe[/COLOR].[COLOR=#000080]images[/COLOR].[COLOR=#000080]JPGEncoder[/COLOR];  
[COLOR=#0000FF]import[/COLOR] caurina.[COLOR=#000080]transitions[/COLOR].[COLOR=#000080]Tweener[/COLOR];  
[COLOR=#0000FF]import[/COLOR] flash.[COLOR=#0000FF]system[/COLOR].[COLOR=#000080]LoaderContext[/COLOR];

[COLOR=#000000] **var** [/COLOR] image:Sprite = [COLOR=#000000] **new** [/COLOR] SpriteCOLOR=#000000[/COLOR];  
addChildCOLOR=#000000[/COLOR];

[COLOR=#000000] **var** [/COLOR] loader:Loader = [COLOR=#000000] **new** [/COLOR] LoaderCOLOR=#000000[/COLOR];  
[COLOR=#000000] **var** [/COLOR] bitmap:Bitmap;  
[COLOR=#000000] **var** [/COLOR] context:LoaderContext = [COLOR=#000000] **new** [/COLOR] LoaderContextCOLOR=#000000[/COLOR];

loader.[COLOR=#0000FF]load[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000] **new** [/COLOR] URLRequestCOLOR=#000000[/COLOR], context[COLOR=#000000])[/COLOR];  
loader.[COLOR=#000080]contentLoaderInfo[/COLOR].[COLOR=#000080]addEventListener[/COLOR][COLOR=#000000]([/COLOR]Event.[COLOR=#000080]COMPLETE[/COLOR], playImage[COLOR=#000000])[/COLOR];  
image.[COLOR=#000080]addChild[/COLOR]COLOR=#000000[/COLOR];

[COLOR=#000000] **function** [/COLOR] playImageCOLOR=#000000[/COLOR]:[COLOR=#0000FF]void[/COLOR][COLOR=#000000]{[/COLOR]  
bitmap = BitmapCOLOR=#000000[/COLOR];  
bitmap.[COLOR=#0000FF]smoothing[/COLOR] = [COLOR=#000000] **true** [/COLOR];  
image.[COLOR=#000080]addChild[/COLOR]COLOR=#000000[/COLOR];  
Tweener.[COLOR=#000080]addTween[/COLOR][COLOR=#000000]([/COLOR]image, [COLOR=#000000]{[/COLOR]scaleX:.[COLOR=#000080]25[/COLOR], scaleY:.[COLOR=#000080]25[/COLOR], [COLOR=#0000FF]time[/COLOR]:[COLOR=#000080]1[/COLOR], delay:[COLOR=#000080]1[/COLOR], transition:[COLOR=#FF0000]“easeout”[/COLOR], onComplete:snapIcon[COLOR=#000000]}[/COLOR][COLOR=#000000])[/COLOR];  
loader.[COLOR=#000080]contentLoaderInfo[/COLOR].[COLOR=#000080]removeEventListener[/COLOR][COLOR=#000000]([/COLOR]Event.[COLOR=#000080]COMPLETE[/COLOR], playImage[COLOR=#000000])[/COLOR];  
[COLOR=#000000]}[/COLOR]

[COLOR=#000000] **function** [/COLOR] snapIconCOLOR=#000000[/COLOR]:[COLOR=#0000FF]void[/COLOR][COLOR=#000000]{[/COLOR]

```
[COLOR=#0000FF]trace[/COLOR][COLOR=#000000]([/COLOR]image.[COLOR=#0000FF]height[/COLOR], image.[COLOR=#0000FF]width[/COLOR][COLOR=#000000])[/COLOR];
[COLOR=#000000] **var** [/COLOR] bmd:BitmapData = [COLOR=#000000] **new** [/COLOR] BitmapData[COLOR=#000000]([/COLOR]image.[COLOR=#0000FF]width[/COLOR], image.[COLOR=#0000FF]height[/COLOR][COLOR=#000000])[/COLOR];
bmd.[COLOR=#000080]draw[/COLOR][COLOR=#000000]([/COLOR]image[COLOR=#000000])[/COLOR];
[COLOR=#000000] **var** [/COLOR] myEncoder:JPGEncoder = [COLOR=#000000] **new** [/COLOR] JPGEncoder[COLOR=#000000]([/COLOR][COLOR=#000080]100[/COLOR][COLOR=#000000])[/COLOR];
[COLOR=#000000] **var** [/COLOR] myCapStream:ByteArray = myEncoder.[COLOR=#000080]encode[/COLOR] [COLOR=#000000]([/COLOR]bmd[COLOR=#000000])[/COLOR];
[COLOR=#000000] **var** [/COLOR] nloader:Loader = [COLOR=#000000] **new** [/COLOR] Loader[COLOR=#000000]([/COLOR][COLOR=#000000])[/COLOR];
nloader.[COLOR=#000080]loadBytes[/COLOR][COLOR=#000000]([/COLOR]myCapStream[COLOR=#000000])[/COLOR];
loader.[COLOR=#000080]scaleX[/COLOR] = [COLOR=#000080]1[/COLOR];
loader.[COLOR=#000080]scaleY[/COLOR] = [COLOR=#000080]1[/COLOR];
image.[COLOR=#000080]addChild[/COLOR][COLOR=#000000]([/COLOR]nloader[COLOR=#000000])[/COLOR];

```

[COLOR=#000000]}[/COLOR]  
[/LEFT]  
[/FONT]
