Platforms to show: All Mac Windows Linux Cross-Platform
Back to PictureMBS class.
PictureMBS.AlphaChannel as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 8.7 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Returns nil if this channel does not exist.
No copy is made of the actual pixel data. Modifying the channel picture will modify the original picture.
Use this function to access the pixels of the channel directly.
The resulting PictureMBS object is a grayscale picture.
Some examples using this method:
PictureMBS.ApplyMatrix(dest as PictureMBS, MatrixDimension as Integer, matrix() as Integer) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
MatrixDimension: Size of the matrix: 1 to 50. This is the width and height of the matrix.
matrix: The matrix array must contain exactly MatrixDimension*MatrixDimension values. (ubound(matrix)=MatrixDimension*MatrixDimension-1)
delta: Optional value. Default is 0.
ScaleFactor: Optional value. Default is 1.0.
if dest is nil, the picture factory is used to create a new picture.
On success dest or the new picture is returned.
If dest is not nil, it must match the size of the original picture.
For each pixel in the dest image the following operation is done:
- Make sum of all source pixels multiplied with their matrix entry.
- add to the sum the delta value
- multiply the sum by ScaleFactor
See the example project for several example matrices.
A matrix value of 255 or more leaves the dest pixel away from the sum.
Works with Gray, RGB and CMYK pictures and supports alpha channel.
See also:
- ApplyMatrix(dest as PictureMBS, MatrixDimension as Integer, matrix() as Integer, delta as Integer) as PictureMBS
- ApplyMatrix(dest as PictureMBS, MatrixDimension as Integer, matrix() as Integer, delta as Integer, ScaleFactor as Double) as PictureMBS
Some examples using this method:
PictureMBS.ApplyMatrix(dest as PictureMBS, MatrixDimension as Integer, matrix() as Integer, delta as Integer) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
MatrixDimension: Size of the matrix: 1 to 50. This is the width and height of the matrix.
matrix: The matrix array must contain exactly MatrixDimension*MatrixDimension values. (ubound(matrix)=MatrixDimension*MatrixDimension-1)
delta: Optional value. Default is 0.
ScaleFactor: Optional value. Default is 1.0.
if dest is nil, the picture factory is used to create a new picture.
On success dest or the new picture is returned.
If dest is not nil, it must match the size of the original picture.
For each pixel in the dest image the following operation is done:
- Make sum of all source pixels multiplied with their matrix entry.
- add to the sum the delta value
- multiply the sum by ScaleFactor
See the example project for several example matrices.
A matrix value of 255 or more leaves the dest pixel away from the sum.
Works with Gray, RGB and CMYK pictures and supports alpha channel.
See also:
PictureMBS.ApplyMatrix(dest as PictureMBS, MatrixDimension as Integer, matrix() as Integer, delta as Integer, ScaleFactor as Double) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
MatrixDimension: Size of the matrix: 1 to 50. This is the width and height of the matrix.
matrix: The matrix array must contain exactly MatrixDimension*MatrixDimension values. (ubound(matrix)=MatrixDimension*MatrixDimension-1)
delta: Optional value. Default is 0.
ScaleFactor: Optional value. Default is 1.0.
if dest is nil, the picture factory is used to create a new picture.
On success dest or the new picture is returned.
If dest is not nil, it must match the size of the original picture.
For each pixel in the dest image the following operation is done:
- Make sum of all source pixels multiplied with their matrix entry.
- add to the sum the delta value
- multiply the sum by ScaleFactor
See the example project for several example matrices.
A matrix value of 255 or more leaves the dest pixel away from the sum.
Works with Gray, RGB and CMYK pictures and supports alpha channel.
See also:
PictureMBS.AutoLevel as boolean
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
The histogram is built, white and back points are searched and all pixels adjusted.
Returns true on success and false on any error.
Works only with RGB pictures.
See also:
PictureMBS.AutoLevel(x as Integer, y as Integer, w as Integer, h as Integer) as boolean
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
The histogram is built, white and back points are searched and all pixels adjusted.
Returns true on success and false on any error.
Works only with RGB pictures.
See also:
PictureMBS.BlackChannel as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 11.0 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Returns nil if this channel does not exist.
No copy is made of the actual pixel data. Modifying the channel picture will modify the original picture.
Use this function to access the pixels of the channel directly.
The resulting PictureMBS object is a grayscale picture.
PictureMBS.BlueChannel as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 8.7 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Returns nil if this channel does not exist.
No copy is made of the actual pixel data. Modifying the channel picture will modify the original picture.
Use this function to access the pixels of the channel directly.
The resulting PictureMBS object is a grayscale picture.
PictureMBS.BoxBlurFilter(dest as PictureMBS, Radius as Double, Iterations as Integer, Vertical as boolean = true, Horizontal as boolean = true) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.3 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
if dest is nil, the picture factory is used to create a new picture.
On success dest or the new picture is returned.
If dest is not nil, it must match the size of the original picture.
Vertical and Horizontal define whether effect is applied horizontal and/or vertical.
Returns nil on any error.
Works with Gray, RGB and CMYK pictures and supports alpha channel.
See also:
Some examples using this method:
PictureMBS.BoxBlurFilter(dest as PictureMBS, Radius as Double, Vertical as boolean = true, Horizontal as boolean = true) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.3 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
if dest is nil, the picture factory is used to create a new picture.
On success dest or the new picture is returned.
If dest is not nil, it must match the size of the original picture.
Vertical and Horizontal define whether effect is applied horizontal and/or vertical.
Returns nil on any error.
Works with Gray, RGB and CMYK pictures and supports alpha channel.
See also:
PictureMBS.BoxBlurFractionalFilter(dest as PictureMBS, Radius as Double) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 9.3 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
If you call BoxBlurFilter and BoxBlurFractionalFilter with a radius of 3.5 the BoxBlurFilter does the 3.0 and BoxBlurFractionalFilter does the 0.5.
if dest is nil, the picture factory is used to create a new picture.
On success dest or the new picture is returned.
If dest is not nil, it must match the size of the original picture.
Returns nil on any error.
Some examples using this method:
PictureMBS.Channel(index as Integer) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 11.0 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Returns nil on any error. May raise an out of bounds exception on invalid index. Index is zero based.
No copy is made of the actual pixel data. Modifying the channel picture will modify the original picture.
Use this function to access the pixels of the channel directly.
The resulting PictureMBS object is a grayscale picture.
See also:
PictureMBS.ChannelOffset(index as integer) as integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 20.2 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
For RGB the red channel has offset 0, the green channel has offset 1 and the blue channel has offset 2.
PictureMBS.Channels as String()
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 18.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 18.0 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
If target of this PictureMBS is a Xojo picture, this method clears the Xojo cache for the picture to make sure it recognizes changes.
Does nothing if there is no target picture or there is no cache.
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 8.7 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Writes zeros over all pixels and all channels.
Works with Gray, RGB and CMYK pictures and supports alpha channel.
See also:
PictureMBS.ClearRect(x as Integer, y as Integer, width as Integer, height as Integer)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 8.7 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Writes zeros over all pixels and all channels.
Works with Gray, RGB and CMYK pictures and supports alpha channel.
See also:
PictureMBS.ClipImage as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 10.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This may be useful if you need a second PictureMBS object. For example if two threads work on different rows.
See also:
Some examples using this method:
PictureMBS.ClipImage(x as Integer, y as Integer, width as Integer, height as Integer) as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 8.7 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This may be useful to apply an effect only on a portion of an existing image.
See also:
PictureMBS.Clone as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 8.7 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Does not work for pictures using virtual memory.
(Fails if IsMapping=True)
Copies the whole picture even if you clone just one channel.
Returns nil on low memory.
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 8.7 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
This calls the destructor internally.
PictureMBS.CMYKChannels as PictureMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 11.0 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Returns nil if the image is not a CMYK picture.
No copy is made of the actual pixel data. Modifying the channel picture will modify the original picture.
Use this function to access the CMYK pixels directly without modifying an alpha channel
The resulting PictureMBS object is a CMYK picture.
PictureMBS.Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean) as boolean
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 10.3 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Returns true on success and false on failure.
This function has 4 behaviors depending on the parameters:
1. If mask is nil and no ForeColour and MaskColour values are passed, the pixels a copied to the destination picture.
2. But if there is a mask, the pixels are copied with applying the mask.
3. If the mask color is not defined, the the pixels are filled with the fore color applying the mask.
4. As the last variation the pixels are copied and the forecolor, the mask color or black is used with the image as the mask. If UseColours parameter is false black is used for this.
Parameters:
Image: the source picture, must not be nil.
PreMultipliedSource: Optional parameter. If true the image must be premultiplied. Default is false.
Mask: the mask picture, can be nil.
DestX: destination position
DestY: destination position
SourceX: source position
SourceY: source position
Width: width of the area to copy
Height: height of the area to copy
UseColours: whether to use the mask colour.
ForeColour: the fore colour, optional, can be integer or color
MaskColour: the mask color, optional, can be integer or color
This function is 5 times in the plugin defined to implement having the last two parameters optional and either integer or color. You can pass a negative number for MaskColour or ForeColour to disable this parameter.
The images you use can be Gray, RGB with or without alpha channels. But most variants here ignore alpha channels. To make sure the alpha channel is not touched, use the PictureMBS.RGBChannels function and pass that new PictureMBS.
See also:
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color) as boolean
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color, MaskColour As color) as boolean
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer) as boolean
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer, MaskColour as Integer) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color, MaskColour As color) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer, MaskColour as Integer) as boolean
- Combine(Mask As PictureMBS, X as Integer, Y as Integer, Width as Integer, Height as Integer, BackColour As color) as boolean
PictureMBS.Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color) as boolean
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Large Picture | MBS Images Plugin | 10.3 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | All |
Returns true on success and false on failure.
This function has 4 behaviors depending on the parameters:
1. If mask is nil and no ForeColour and MaskColour values are passed, the pixels a copied to the destination picture.
2. But if there is a mask, the pixels are copied with applying the mask.
3. If the mask color is not defined, the the pixels are filled with the fore color applying the mask.
4. As the last variation the pixels are copied and the forecolor, the mask color or black is used with the image as the mask. If UseColours parameter is false black is used for this.
Parameters:
Image: the source picture, must not be nil.
PreMultipliedSource: Optional parameter. If true the image must be premultiplied. Default is false.
Mask: the mask picture, can be nil.
DestX: destination position
DestY: destination position
SourceX: source position
SourceY: source position
Width: width of the area to copy
Height: height of the area to copy
UseColours: whether to use the mask colour.
ForeColour: the fore colour, optional, can be integer or color
MaskColour: the mask color, optional, can be integer or color
This function is 5 times in the plugin defined to implement having the last two parameters optional and either integer or color. You can pass a negative number for MaskColour or ForeColour to disable this parameter.
The images you use can be Gray, RGB with or without alpha channels. But most variants here ignore alpha channels. To make sure the alpha channel is not touched, use the PictureMBS.RGBChannels function and pass that new PictureMBS.
See also:
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean) as boolean
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color, MaskColour As color) as boolean
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer) as boolean
- Combine(Image As PictureMBS, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer, MaskColour as Integer) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour As color, MaskColour As color) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer) as boolean
- Combine(Image As PictureMBS, PreMultipliedSource as boolean, Mask As PictureMBS, DestX as Integer, DestY as Integer, SourceX as Integer, SourceY as Integer, Width as Integer, Height as Integer, UseColours As Boolean, ForeColour as Integer, MaskColour as Integer) as boolean
- Combine(Mask As PictureMBS, X as Integer, Y as Integer, Width as Integer, Height as Integer, BackColour As color) as boolean
The items on this page are in the following plugins: MBS Images Plugin.