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

GMImage.SetType

Sets the Image representation type.

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

Parameters

Parameter Description Example
ImageRef The image reference number. 1
Type UndefinedType = 0, BilevelType = 1, GrayscaleType = 2, GrayscaleMatteType = 3, PaletteType = 4, PaletteMatteType = 5, TrueColorType = 6, TrueColorMatteType = 7, ColorSeparationType = 8, ColorSeparationMatteType = 9, OptimizeType = 10 6

Result

Returns "OK" on success.

Description

Sets the Image representation type.
Changing the type from TrueColorType to GrayscaleType will convert a color picture to grayscale.

Examples

Change the picture to grayscale.

Let ( [
$Image = MBS("GMImage.NewFromContainer"; GraphicsMagick::image);
$Result = MBS("GMImage.SetType";$Image; 2);
$Result = MBS("GMImage.WriteToPNGContainer"; $Image);
$Error = MBS("GMImage.Release";$Image)
];
$Result)

Convert image to 1 bit TIFF:

# Load from container
Set Variable [ $Image ; Value: MBS("GMImage.NewFromContainer"; GraphicsMagick::image); ]

# make black and white with threshold
Set Variable [ $Result ; Value: MBS("GMImage.Threshold";$Image; 127); ]

# mark as monochrome image
Set Variable [ $Result ; Value: MBS("GMImage.SetMonochrome";$Image; 1); ]

# set type to 1 for black/white
Set Variable [ $Result ; Value: MBS("GMImage.SetType";$Image; 1); ]

# set to use TIFF for compression
Set Variable [ $Result ; Value: MBS("GMImage.SetMagick";$Image; "TIFF"); ]

# set to use CCITT 4 Fax compression
Set Variable [ $Result ; Value: MBS("GMImage.SetCompressType";$Image; 4); ]

# and write to a file
Set Variable [ $Result ; Value: MBS("GMImage.WriteToFile"; $Image; "/tmp/test.tif"); ]

# cleanup
Set Variable [ $Error ; Value: MBS("GMImage.Release";$Image) ]

Change picture to RGB:

MBS("GMImage.SetType"; $image; 6);

Replace white with transparent:

Set Variable [$BigImageRef; Value:MBS("GMImage.NewFromContainer"; Test::BigImage)]
# Set type to RGBA
Set Variable [$Result; Value:MBS("GMImage.SetType"; $BigImageRef; 7)]
# Replace white with transparent
Set Variable [$Result; Value:MBS("GMImage.ReplaceColor"; $BigImageRef; "white"; "transparent"; 10)]
# save as PNG
Set Field [Test::Result; MBS( "GMImage.WriteToPNGContainer"; $BigImageRef )]
Set Variable [$Error; Value:MBS("GMImage.Release";$BigImageRef)]

See also

Example Databases

Blog Entries

This function checks for a license.

Created 18th August 2014, last changed 25th February 2026


GMImage.SetTileName - GMImage.SetVerbose