c# itextsharp convert pdf to image : Password on pdf file application Library utility azure asp.net winforms visual studio cips2ed45-part126

F.5. CODE LISTINGS FOR CHAPTER 5
429
/* masks for sobel operator */
short sobel_mask_0[3][3] = {
{ 1, 2, 1},
{ 0, 0, 0},
{-1, -2, -1} };
short sobel_mask_1[3][3] = {
{ 2, 1, 0},
{ 1, 0, -1},
{ 0, -1, -2} };
short sobel_mask_2[3][3] = {
{ 1, 0, -1},
{ 2, 0, -2},
{ 1, 0, -1} };
short sobel_mask_3[3][3] = {
{ 0, -1, -2},
{ 1, 0, -1},
{ 2, 1, 0} };
short sobel_mask_4[3][3] = {
{-1, -2, -1},
{ 0, 0, 0},
{ 1, 2, 1} };
short sobel_mask_5[3][3] = {
{-2, -1, 0},
{-1, 0, 1},
{ 0, 1, 2} };
short sobel_mask_6[3][3] = {
{-1, 0, 1},
{-2, 0, 2},
{-1, 0, 1} };
short sobel_mask_7[3][3] = {
{ 0, 1, 2},
{-1, 0, 1},
{-2, -1, 0} };
Password on pdf file - C# PDF Password Library: add, remove, edit PDF file password in C#.net, ASP.NET, MVC, WinForms, WPF
Help to Improve the Security of Your PDF Document by Setting Password
annotate protected pdf; advanced pdf password remover
Password on pdf file - VB.NET PDF Password Library: add, remove, edit PDF file password in vb.net, ASP.NET, MVC, WinForms, WPF
Help to Improve the Security of Your PDF Document by Setting Password
pdf protected mode; pdf password security
430
APPENDIX F. SOURCE CODE LISTINGS
/**************************************************
*
*
detect_edges(...
*
*
This function detects edges in an area of one
*
image and sends the result to another image
*
on disk. It reads the input image from disk,
*
calls a convolution function, and then writes
*
the result out to disk. If needed, it
*
allocates space on disk for the output image.
*
***************************************************/
detect_edges(the_image, out_image,
detect_type, threshold, high,
rows, cols, bits_per_pixel)
int
detect_type, high, threshold;
long
rows, cols, bits_per_pixel;
short **the_image, **out_image;
{
perform_convolution(the_image, out_image,
detect_type, threshold,
rows, cols,
bits_per_pixel,
high);
fix_edges(out_image, 1, rows, cols);
} /* ends detect_edges */
/**********************************************************
*
*
perform_convolution(...
*
*
This function performs convolution between the input
*
image and 8 3x3 masks. The result is placed in
Online Remove password from protected PDF file
Online Remove Password from Protected PDF file. Download Free Trial. Remove password from protected PDF file. Find your password-protected PDF and upload it.
break a pdf password; create pdf password
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Also able to uncompress PDF file in VB.NET programs. Offer flexible and royalty-free developing library license for VB.NET programmers to compress PDF file.
pdf open password; open password protected pdf
F.5. CODE LISTINGS FOR CHAPTER 5
431
*
the out_image.
*
********************************************************/
perform_convolution(image, out_image,
detect_type, threshold,
rows, cols, bits_per_pixel, high)
short **image,
**out_image;
int
detect_type, high, threshold;
long rows, cols, bits_per_pixel;
{
char response[80];
int a,
b,
i,
is_present,
j,
sum;
short mask_0[3][3],
mask_1[3][3],
mask_2[3][3],
mask_3[3][3],
mask_4[3][3],
mask_5[3][3],
mask_6[3][3],
mask_7[3][3],
max,
min,
new_hi,
new_low;
setup_masks(detect_type, mask_0, mask_1,
mask_2, mask_3, mask_4, mask_5,
mask_6, mask_7);
new_hi = 250;
new_low = 16;
if(bits_per_pixel == 4){
new_hi = 10;
new_low = 3;
}
C# PDF File Split Library: Split, seperate PDF into multiple files
Application. Best and professional adobe PDF file splitting SDK for Visual Studio .NET. outputOps); Divide PDF File into Two Using C#.
adding a password to a pdf using reader; add password to pdf file with reader
VB.NET PDF File Merge Library: Merge, append PDF files in vb.net
Professional VB.NET PDF file merging SDK support Visual Studio .NET. Merge PDF without size limitation. Append one PDF file to the end of another one in VB.NET.
password protected pdf; copy protecting pdf files
432
APPENDIX F. SOURCE CODE LISTINGS
min = 0;
max = 255;
if(bits_per_pixel == 4)
max = 16;
/* clear output image array */
for(i=0; i<rows; i++)
for(j=0; j<cols; j++)
out_image[i][j] = 0;
printf("\n ");
for(i=1; i<rows-1; i++){
if( (i%10) == 0){ printf("%4d", i); }
for(j=1; j<cols-1; j++){
/* Convolve for all 8 directions */
/* 0 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] *
mask_0[a+1][b+1];
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
/* 1 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] * mask_1[a+1][b+1];
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
Professional C#.NET PDF SDK for merging PDF file merging in Visual Studio .NET. Append one PDF file to the end of another and save to a single PDF file.
adding password to pdf file; add password to pdf file
VB.NET PDF File Split Library: Split, seperate PDF into multiple
Professional VB.NET PDF file splitting SDK for Visual Studio and .NET framework 2.0. Split PDF file into two or multiple files in ASP.NET webpage online.
convert password protected pdf to word; create password protected pdf online
F.5. CODE LISTINGS FOR CHAPTER 5
433
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
/* 2 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] * mask_2[a+1][b+1];
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
/* 3 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] * mask_3[a+1][b+1];
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
C# PDF File Compress Library: Compress reduce PDF size in C#.net
Reduce image resources: Since images are usually or large size, images size reducing can help to reduce PDF file size effectively.
add password to pdf; pdf document password
C# PDF File Permission Library: add, remove, update PDF file
Barcode Read. Barcode Create. OCR. Twain. Password: Set File Permissions. |. Home ›› XDoc.PDF ›› C# PDF: Set File Permissions. You maybe interested:
convert password protected pdf to word online; adding a password to a pdf file
434
APPENDIX F. SOURCE CODE LISTINGS
/* 4 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] * mask_4[a+1][b+1];
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
/* 5 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] * mask_5[a+1][b+1];
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
/* 6 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] * mask_6[a+1][b+1];
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
F.5. CODE LISTINGS FOR CHAPTER 5
435
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
/* 7 direction */
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum + image[i+a][j+b] * mask_7[a+1][b+1];
}
}
if(sum > max) sum = max;
if(sum < 0)
sum = 0;
/* Correction 12-27-92
see file header for
details. */
if(sum > out_image[i][j])
out_image[i][j]
= sum;
} /* ends loop over j */
} /* ends loop over i */
/* if desired, threshold the output image */
if(threshold == 1){
for(i=0; i<rows; i++){
for(j=0; j<cols; j++){
if(out_image[i][j] > high){
out_image[i][j] = new_hi;
}
else{
out_image[i][j] = new_low;
}
}
}
} /* ends if threshold == 1 */
} /* ends perform_convolution */
436
APPENDIX F. SOURCE CODE LISTINGS
/*******************************************
*
*
quick_edge(...
*
*
This function finds edges by using
*
a single 3x3 mask.
*
*******************************************/
quick_edge(the_image, out_image,
threshold, high, rows, cols, bits_per_pixel)
int
high, threshold;
long
rows, cols, bits_per_pixel;
short **the_image, **out_image;
{
short a, b, i, j, k,
length, max, new_hi, new_low,
sum, width;
new_hi = 250;
new_low = 16;
if(bits_per_pixel == 4){
new_hi = 10;
new_low = 3;
}
max = 255;
if(bits_per_pixel == 4)
max = 16;
/* Do convolution over image array */
printf("\n");
for(i=1; i<rows-1; i++){
if( (i%10) == 0) printf("%d ", i);
for(j=1; j<cols-1; j++){
sum = 0;
for(a=-1; a<2; a++){
for(b=-1; b<2; b++){
sum = sum +
the_image[i+a][j+b] *
F.5. CODE LISTINGS FOR CHAPTER 5
437
quick_mask[a+1][b+1];
}
}
if(sum < 0)
sum = 0;
if(sum > max) sum = max;
out_image[i][j]
= sum;
} /* ends loop over j */
} /* ends loop over i */
/* if desired, threshold the output image */
if(threshold == 1){
for(i=0; i<rows; i++){
for(j=0; j<cols; j++){
if(out_image[i][j] > high){
out_image[i][j] = new_hi;
}
else{
out_image[i][j] = new_low;
}
}
}
} /* ends if threshold == 1 */
fix_edges(out_image, 1,
rows-1, cols-1);
} /* ends quick_edge */
/***********************************************
*
*
setup_masks(...
*
*
This function copies the mask values defined
*
at the top of this file into the mask
*
arrays mask_0 through mask_7.
*
***********************************************/
438
APPENDIX F. SOURCE CODE LISTINGS
setup_masks(detect_type, mask_0, mask_1, mask_2, mask_3,
mask_4, mask_5, mask_6, mask_7)
int
detect_type;
short mask_0[3][3],
mask_1[3][3],
mask_2[3][3],
mask_3[3][3],
mask_4[3][3],
mask_5[3][3],
mask_6[3][3],
mask_7[3][3];
{
int i, j;
if(detect_type == KIRSCH){
for(i=0; i<3; i++){
for(j=0; j<3; j++){
mask_0[i][j] = kirsch_mask_0[i][j];
mask_1[i][j] = kirsch_mask_1[i][j];
mask_2[i][j] = kirsch_mask_2[i][j];
mask_3[i][j] = kirsch_mask_3[i][j];
mask_4[i][j] = kirsch_mask_4[i][j];
mask_5[i][j] = kirsch_mask_5[i][j];
mask_6[i][j] = kirsch_mask_6[i][j];
mask_7[i][j] = kirsch_mask_7[i][j];
}
}
} /* ends if detect_type == KIRSCH */
if(detect_type == PREWITT){
for(i=0; i<3; i++){
for(j=0; j<3; j++){
mask_0[i][j] = prewitt_mask_0[i][j];
mask_1[i][j] = prewitt_mask_1[i][j];
mask_2[i][j] = prewitt_mask_2[i][j];
mask_3[i][j] = prewitt_mask_3[i][j];
mask_4[i][j] = prewitt_mask_4[i][j];
mask_5[i][j] = prewitt_mask_5[i][j];
mask_6[i][j] = prewitt_mask_6[i][j];
mask_7[i][j] = prewitt_mask_7[i][j];
}
Documents you may be interested
Documents you may be interested