📄 cdibstandardfilters.pas
字号:
(*long EdgeGrow [] = { 10, 9, -4, 9, 10, -9, 4, -9, -10 }; *)
with AddedFilter('New wave', 'Edge grow') do
begin
Data[0] := 10;
Data[1] := 9;
Data[2] := -4;
Data[3] := 9;
Data[4] := 10;
Data[5] := -9;
Data[6] := 4;
Data[7] := -9;
Data[8] := 10;
Factor := 10;
end;
//Drawing
(*long Drawing [] = { 2, 5, 2, 5,-28, 5, 2, 5, 2 }; *)
with AddedFilter('New wave', 'Drawing') do
begin
Data[0] := 2;
Data[1] := 5;
Data[2] := 2;
Data[3] := 5;
Data[4] := -28;
Data[5] := 5;
Data[6] := 2;
Data[7] := 5;
Data[8] := 2;
Factor := 1;
end;
//Crayon
(*long Crayon [] = { 5, 5, -5, 10, 0,-20, 5, 5, -5 }; *)
with AddedFilter('New wave', 'Crayon') do
begin
Data[0] := 5;
Data[1] := 5;
Data[2] := -5;
Data[3] := 10;
Data[4] := 0;
Data[5] := -20;
Data[6] := 5;
Data[7] := 5;
Data[8] := -5;
Factor := 1;
end;
//Big sharpen
(*long BigSharpen [] = { 1, 2, 1, 2, 4, 2, 1, 2, 1 }; *)
with AddedFilter('New wave', 'Big sharpen') do
begin
Data[0] := 1;
Data[1] := 2;
Data[2] := 1;
Data[3] := 2;
Data[4] := 4;
Data[5] := 2;
Data[6] := 1;
Data[7] := 2;
Data[8] := 1;
Factor := 0;
end;
//Blur
(*long Blur [] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 }; *)
with AddedFilter('New wave', 'Blur') do
begin
Data[0] := 1;
Data[1] := 1;
Data[2] := 1;
Data[3] := 1;
Data[4] := 1;
Data[5] := 1;
Data[6] := 1;
Data[7] := 1;
Data[8] := 1;
Factor := 0;
end;
//East
(*long East [] = { -1, 1, 1, -1, -1, 1, -1, 1, 1 }; *)
with AddedFilter('New wave', 'East') do
begin
Data[0] := -1;
Data[1] := 1;
Data[2] := 1;
Data[3] := -1;
Data[4] := -1;
Data[5] := 1;
Data[6] := -1;
Data[7] := 1;
Data[8] := 1;
Factor := 0;
end;
//Horizontal
(*long Horizontal [] = { -1, -1, -1, 2, 3, 2, -1, -1, -1 }; *)
with AddedFilter('New wave', 'Horizontal') do
begin
Data[0] := -1;
Data[1] := -1;
Data[2] := -1;
Data[3] := 2;
Data[4] := 3;
Data[5] := 2;
Data[6] := -1;
Data[7] := -1;
Data[8] := -1;
Factor := 0;
end;
//Laplacian
(*long Laplacian [] = { -1, -1, -1, -1, 8, -1, -1, -1, -1 }; *)
with AddedFilter('New wave', 'Laplacian') do
begin
Data[0] := -1;
Data[1] := -1;
Data[2] := -1;
Data[3] := -1;
Data[4] := 8;
Data[5] := -1;
Data[6] := -1;
Data[7] := -1;
Data[8] := -1;
Factor := 0;
end;
//Left right
(*long LR [] = { -1, -1, 2, -1, 3, -1, 2, -1, -1 }; *)
with AddedFilter('New wave', 'Left right') do
begin
Data[0] := -1;
Data[1] := -1;
Data[2] := 2;
Data[3] := -1;
Data[4] := 3;
Data[5] := -1;
Data[6] := 2;
Data[7] := -1;
Data[8] := -1;
Factor := 0;
end;
//North
(*long North [] = { 1, 1, 1, 1, -1, 1, -1, -1, -1 }; *)
with AddedFilter('New wave', 'North') do
begin
Data[0] := 1;
Data[1] := 1;
Data[2] := 1;
Data[3] := 1;
Data[4] := -1;
Data[5] := 1;
Data[6] := -1;
Data[7] := -1;
Data[8] := -1;
Factor := 0;
end;
//North East
(*long NorthEast [] = { 1, 1, 1, -1, -1, 1, -1, -1, 1 }; *)
with AddedFilter('New wave', 'North East') do
begin
Data[0] := 1;
Data[1] := 1;
Data[2] := 1;
Data[3] := 1;
Data[4] := -1;
Data[5] := -1;
Data[6] := -1;
Data[7] := -1;
Data[8] := 1;
Factor := 0;
end;
//North West
(*long NorthWest [] = { 1, 1, 1, 1, -1, -1, 1, -1, -1 }; *)
with AddedFilter('New wave', 'North West') do
begin
Data[0] := 1;
Data[1] := 1;
Data[2] := 1;
Data[3] := 1;
Data[4] := -1;
Data[5] := -1;
Data[6] := 1;
Data[7] := -1;
Data[8] := -1;
Factor := 0;
end;
//Right left
(*long RL [] = { 2, -1, -1, -1, 3, -1, -1, -1, 2 }; *)
with AddedFilter('New wave', 'Right left') do
begin
Data[0] := 2;
Data[1] := -1;
Data[2] := -1;
Data[3] := -1;
Data[4] := 3;
Data[5] := -1;
Data[6] := -1;
Data[7] := -1;
Data[8] := 2;
Factor := 0;
end;
//Sharpen medium
(*long SharpenMedium[] = { -1, -1, -1, -1, 9, -1 -1, -1, -1 }; *)
with AddedFilter('New wave', 'Sharpen medium') do
begin
Data[0] := -1;
Data[1] := -1;
Data[2] := -1;
Data[3] := -1;
Data[4] := 9;
Data[5] := -1;
Data[6] := -1;
Data[7] := -1;
Data[8] := -1;
Factor := 0;
end;
//Sharpen small
(*long SharpenSmall [] = { 0, -1, 0, -1, 5, -1, 0, -1, 0 }; *)
with AddedFilter('New wave', 'Sharpen small') do
begin
Data[0] := 0;
Data[1] := -1;
Data[2] := 0;
Data[3] := -1;
Data[4] := 5;
Data[5] := -1;
Data[6] := 0;
Data[7] := -1;
Data[8] := 0;
Factor := 0;
end;
//Sharpen huge
(*long SharpenHuge [] = { -1, -2, -1, -2, 16, -2, -1, -2, -1 }; *)
with AddedFilter('New wave', 'Sharpen huge') do
begin
Data[0] := -1;
Data[1] := -2;
Data[2] := -1;
Data[3] := -2;
Data[4] := 16;
Data[5] := -2;
Data[6] := -1;
Data[7] := -2;
Data[8] := -1;
Factor := 0;
end;
//South
(*long South [] = { -1, -1, -1, 1, -1, 1, 1, 1, 1 }; *)
with AddedFilter('New wave', 'South') do
begin
Data[0] := -1;
Data[1] := -1;
Data[2] := -1;
Data[3] := 1;
Data[4] := -1;
Data[5] := -1;
Data[6] := 1;
Data[7] := 1;
Data[8] := 1;
Factor := 0;
end;
//South East
(*long SouthEast [] = { -1, -1, 1, -1, -1, 1, 1, 1, 1 }; *)
with AddedFilter('New wave', 'South East') do
begin
Data[0] := -1;
Data[1] := -1;
Data[2] := 1;
Data[3] := -1;
Data[4] := -1;
Data[5] := 1;
Data[6] := 1;
Data[7] := 1;
Data[8] := 1;
Factor := 0;
end;
//South West
(*long SouthWest [] = { 1, -1, -1, 1, -1, -1, 1, 1, 1 }; *)
with AddedFilter('New wave', 'South West') do
begin
Data[0] := 1;
Data[1] := -1;
Data[2] := -1;
Data[3] := 1;
Data[4] := -1;
Data[5] := -1;
Data[6] := 1;
Data[7] := 1;
Data[8] := 1;
Factor := 0;
end;
//Speckle
(*long Speckle [] = { 1, -2, 1, -2, 5, -2, 1, -2, 1 }; *)
with AddedFilter('New wave', 'Speckle') do
begin
Data[0] := 1;
Data[1] := -2;
Data[2] := 1;
Data[3] := -2;
Data[4] := 5;
Data[5] := -2;
Data[6] := 1;
Data[7] := -2;
Data[8] := 1;
Factor := 0;
end;
//Vertical
(*long Vertical [] = { -1, 2, -1, -1, 3, -1, -1, 2, -1 }; *)
with AddedFilter('New wave', 'Vertical') do
begin
Data[0] := -1;
Data[1] := 2;
Data[2] := -1;
Data[3] := -1;
Data[4] := 3;
Data[5] := -1;
Data[6] := -1;
Data[7] := 2;
Data[8] := -1;
Factor := 0;
end;
//West
(*long West [] = { 1, 1, -1, 1, -1, -1, 1, 1, 1 }; *)
with AddedFilter('New wave', 'West') do
begin
Data[0] := 1;
Data[1] := 1;
Data[2] := -1;
Data[3] := 1;
Data[4] := -1;
Data[5] := -1;
Data[6] := 1;
Data[7] := 1;
Data[8] := 1;
Factor := 0;
end;
//Woodcut
(*long WoodCut [] = { -2, 0, 0, 0, 5, 0, 0, 0, -2 }; *)
with AddedFilter('New wave', 'Woodcut') do
begin
Data[0] := -2;
Data[1] := 0;
Data[2] := 0;
Data[3] := 0;
Data[4] := 5;
Data[5] := 0;
Data[6] := 0;
Data[7] := 0;
Data[8] := -2;
Factor := 0;
end;
finalization
DIBStandardFilters.Free;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -