Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old

GMImage.Trim

Trim edges that are the background color from the image.

Component Version macOS Windows Linux Server iOS SDK
GraphicsMagick 2.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
MBS( "GMImage.Trim"; ImageRef )   More

Parameters

Parameter Description Example
ImageRef The image reference number. 1

Result

Returns "OK" on success.

Description

Trim edges that are the background color from the image.
Use GMImage.SetColorFuzz to set the fuzzy level.

Trim looks on what pixel colors the edges have and checks if there is a smaller rectangle where all pixel outside have same color. See GMImage.BoundingBox for the bounding box of content.

Examples

Trim a picture:

Set Variable [$BigImageRef; Value:MBS("GMImage.NewFromContainer"; Test::BigImage)]
Set Variable [$Result; Value:MBS( "GMImage.SetColorFuzz"; $BigImageRef; 100 )]
Set Variable [$Result; Value:MBS("GMImage.Trim"; $BigImageRef)]
Set Field [Test::Result; MBS( "GMImage.WriteToJPEGContainer"; $BigImageRef )]
Set Variable [$Error; Value:MBS("GMImage.Release";$BigImageRef)]

Trim white around picture:

Set Variable [$BigImageRef; Value:MBS("GMImage.NewFromContainer"; Test::BigImage)]
#set one white pixel to make sure it trims only white
Set Variable [$Result; Value:MBS( "GMImage.SetPixelColor"; $BigImageRef; 0; 0; "white" )]
#allows up to 5 away into gray for comparing to white
Set Variable [$Result; Value:MBS( "GMImage.SetColorFuzz"; $BigImageRef; 5 )]
Set Variable [$Result; Value:MBS("GMImage.Trim"; $BigImageRef)]
Set Field [Test::Result; MBS( "GMImage.WriteToJPEGContainer"; $BigImageRef )]
Set Variable [$Error; Value:MBS("GMImage.Release";$BigImageRef)]

Trims space around image and make transparent:

Set Variable [$BigImageRef; Value:MBS("GMImage.NewFromContainer"; Test::BigImage)]
Set Variable [$Result; Value:MBS( "GMImage.SetBackgroundColor"; $BigImageRef; "RGB 1 0 0" )]
Set Variable [$Result; Value:MBS("GMImage.Trim"; $BigImageRef)]
Set Variable [$Result; Value:MBS( "GMImage.SetColorFuzz"; $BigImageRef; 5 )]
Set Variable [$Result; Value:MBS( "GMImage.SetMatte"; $BigImageRef; 1 )]
Set Variable [$farbe; Value:MBS( "GMImage.GetPixelColor"; $BigImageRef; 0; 0 )]
Set Variable [$Result; Value:MBS( "GMImage.ReplaceColor"; $BigImageRef; $farbe; "RGB 1 1 1 1"; 5)]
Set Field [Test::Result; MBS( "GMImage.WriteToPNGContainer"; $BigImageRef )]
Set Variable [$Error; Value:MBS("GMImage.Release";$BigImageRef)]

See also

Example Databases

This function checks for a license.

Created 18th August 2014, last changed 21st December 2018


GMImage.Transparent - GMImage.Unsharpmask