[]
Image Filters Plugin. Adds the "Image Filters" button.
<script src="gcimageviewer.js"></script></head>
<script src="plugins/imageFilters.js"></script>
<script>
const viewer = new GcImageViewer("#root");
viewer.addPlugin(new ImageFiltersPlugin());
</script>
options: ImageFiltersPluginOptions;
Plugin options
filters: Record<string, ImageFilterDefinition>;
Gets available image filters.
// Create Image Filters plugin:
const imageFiltersPlugin = new ImageFiltersPlugin();
// Remove the default image filters, except for the "Invert" filter:
const filters = imageFiltersPlugin.filters;
for(const filterName in filters) {
if(filterName === "invert")
continue;
delete filters[filterName];
}
// Add custom Image Filter:
filters["lemon-effect"] = {
filterId: "lemon-effect",
toolbarKey: "lemon-effect",
title: "Apply Custom Lemon effect",
text: "Apply Lemon effect",
action: function(imageData) {
for (i = 0; i < imageData.data.length; i += 4) {
imageData.data[i + 1] = imageData.data[i] + 45; // increase green component
}
return imageData;
}
};
// Register Image Filters plugin:
viewer.addPlugin(imageFiltersPlugin);
paintLayer: ImageLayer;
Gets the paint layer containing the HTML canvas for drawing the image.
ImageFiltersPluginAPI.paintLayer
isReady: boolean;
Returns true if the image is loaded into the viewer and the image format is supported by the Image Filters plugin.
naturalSize: Size;
Natural image size.
ImageFiltersPluginAPI.naturalSize
id: PluginType;
Unique plug-in identifier.
confirmChanges(): boolean | void | Promise<boolean | void>;
Called when parent viewer requests confirm and apply changes, usually when the Ctrl+Enter or Enter key is pressed.
boolean | void | Promise<boolean | void>
ImageFiltersPluginAPI.confirmChanges
cancelChanges(): boolean | void | Promise<boolean | void>;
Called when parent viewer requests cancel changes, usually when the ESCAPE key is pressed.
boolean | void | Promise<boolean | void>
ImageFiltersPluginAPI.cancelChanges
undoTransactionStep(): boolean | void;
Undo viewer transaction step. Return true if undo operation is consumed.
boolean | void
ImageFiltersPluginAPI.undoTransactionStep
redoTransactionStep(): boolean | void;
Redo viewer transaction step. Return true if redo operation is consumed.
boolean | void
ImageFiltersPluginAPI.redoTransactionStep
applyFilter(filterName, intensity?): Promise<boolean>;
Apply image filter.
string
Filter name to apply.
number
Filter intensity.
Promise<boolean>
True if filter was applied successfully.
ImageFiltersPluginAPI.applyFilter
isImageFormatSupported(imageFormat, allowUnknown?): boolean;
Determines whether the specified image format is supported for modifications.
The image format to check, either as an enum value or string.
string | ImageFormatCode
boolean
If true, allows unknown formats (ImageFormatCode.Default) to be considered supported.
boolean
True if the format is supported for modifications, false otherwise.
The following formats are explicitly not supported:
// Check if PNG is supported
const supported = isImageFormatSupported(ImageFormatCode.PNG);
// Check if an unknown format is supported (returns false by default)
const supported = isImageFormatSupported('custom-format');
// Check if an unknown format is supported (returns true when allowUnknown is true)
const supported = isImageFormatSupported('custom-format', true);
ImageFiltersPluginAPI.isImageFormatSupported
dispose(): void;
Cleans up resources and disposes the plugin.
void
removePaintLayer(): void;
Removes and disposes the active paint layer. If no paint layer exists, this method does nothing.
void
ImageFiltersPluginAPI.removePaintLayer
initialize(viewer): void;
The method is called when the GcImageViewer component is initialized.
void