pdf viewer in asp net c# : Adding a jpg to a pdf SDK application project winforms windows html UWP PowerGREP8-part3064

76 
In PowerGREP, a ´split filesµ action can put search matches from one file into different target files. It can 
also put search matches from different files into the same target file. In our example, all matches from old 
logs 1 and 2 (with 1,000 entries each) are saved into new log number 1. The first 500 matches from old log 
number 3 are saved into new log number 1, and the remaining 500 are saved into old log number 2. 
The ´order of collected matchesµ drop-down list determines the order in which matches (log entries in this 
case) from different files are written when a ´split filesµ action calculates the same target file path from 
matches from multiple files. This is important if you want your log entries in the combined file to have the 
same order as in the original files. If your original log files put the log entries in order if you sort the files 
alphabetically by name, then choose "sort files Alphabetically A..Z". If the time stamp on the log files puts 
the files in the correct order (e.g. the time stamp on each log file is the time the last entry was written) then 
you can choose ´oldest file to newest fileµ. 
Adding a jpg to a pdf - insert images into PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Sample C# code to add image, picture, logo or digital photo into PDF document page using PDF page editor control
add image to pdf in preview; how to add an image to a pdf in acrobat
Adding a jpg to a pdf - VB.NET PDF insert image library: insert images into PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide VB.NET Programmers How to Add Images in PDF Document
add photo to pdf online; add image field to pdf form
77 
40. Split Database Dumps 
Database dumps often produce extremely large files that are difficult to deal with outside your database 
software. PowerGREP can easily split the dump for an entire server into separate dumps for each database, 
or the dump for an entire database into separate dumps for each table. This gives you smaller files that you 
can work with in applications like text editors. 
1.
Mark the SQL files with your database dumps in the File Selector. 
2.
Start with a fresh action. 
3.
Set the action type to ´split filesµ. 
4.
Enter «
^CREATE DATABASE[^`'";]*[`'"](\w+)[`'"].*?(?=^CREATE DATABASE|\z)
» into 
the Search box. 
5.
Enter a path like ´
c:\\output\\$1.sql
µ into the Target File box. 
6.
Turn on ´dot matches newlinesµ to allow the regex matches to span across lines. 
7.
Click the Quick Split button to execute the action. 
You want to use the Quick Split button rather than the Split Files button so that PowerGREP will not waste 
time and memory to try to display your entire database dump on the Results panel. When the action 
completes, you’ll have one file database_name.sql for each database that was in your dump files. 
The regular expression needs to match the entire block of SQL for one database in your dump. The above 
regex assume the block begins with a CREATE DATABASE statement at the start of a line. This is matched 
with «
^CREATE DATABASE[^`'";]*[`'"](\w+)[`'"]
», which also captures the name of the database. 
The regex also assumes that the block ends just before the next CREATE DATABASE statement or at the 
end of the file. This position is matched with «
(?=^CREATE DATABASE|\z)
». Between that «
.*?
» matches 
anything. 
If your dump  contains the tables for  a  single database, you can  use the  regular expression «
^CREATE 
TABLE[^`'";]*[`'"](\w+)[`'"].*?(?=^CREATE TABLE|\z)
» to split it into separate files for each 
table. 
If your dumps don’t start with CREATE DATABASE or CREATE TABLE, then you may need to use 
different regexes entirely. For example, mysqldump begins each database dump with a comment: 
-- 
-- Current Database: `database_name` 
-- 
If you split these dumps with the regex from the steps above then the split files will have the comment for 
the next database in the log at the bottom of the file. To make sure you get the correct comment at the top of 
the file you can use this regex: 
^-- 
-- 
Current 
Database: 
`(\w+)`.*?(?=^-- 
-- Current Database: `|\z)
This regex contains two literal line breaks. In PowerGREP, when ´search typeµ is set to ´regular expressionµ 
(as opposed to ´free-spacing regular expressionµ), a literal line break in a regex matches a line break of any 
style. So by using literal line breaks in this regex you can make sure that it will work correctly regardless of 
whether your database dump uses UNIX or Windows line breaks. 
JPG to Word Converter | Convert JPEG to Word, Convert Word to JPG
What's more, using filters, adding morphing effects, watermarks, and do some color Open JPEG to Word Converter first; Load JPG images from local folders in
add a picture to a pdf file; how to add a jpeg to a pdf
C# Create PDF Library SDK to convert PDF from other file formats
Gratis control for creating PDF from multiple image formats such as tiff, jpg, png, gif Besides, using this PDF document metadata adding control, you
adding image to pdf file; add picture to pdf
78 
The ´
$1
µ in the target file path is replaced with the contents of the first capturing group. In this case that’s 
the name of the database or table. If you’re splitting multiple dump files that may contain dumps for 
databases with the same name, then the above Target File setting will create only one file for each unique 
name that contains the dump for all the databases with the same name. If you want to separate those too you 
can use a target path like ´
c:\\output\\%FILENAMENOEXT%_$1.sql
µ to add the names of the original 
dump files to those of the split files. 
VB.NET Imaging - Generate Barcode Image in VB.NET
as common image files such as png and jpg. quality PLANET postal barcode images in PDF, Word and VB.NET barcode generator component for adding POSTNET barcode
how to add image to pdf acrobat; add png to pdf acrobat
C# Word - Insert Image to Word Page in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB It's a demo code for adding image to word page using C# 0); REImage image = new REImage(@"C:\logo2.jpg"); page.AddImage
add image to pdf acrobat; add a picture to a pdf document
79 
41. Compile Indices of Files 
By using path placeholders in a collect data action, you can easily index files with PowerGREP. Let’s say you 
have a large number of HTML files saved into a particular folder. Now you want to compile a single index of 
those files. 
1.
Select the files you want to index in the File Selector.  
2.
Set the action type to ´collect dataµ.  
3.
Turn on ´group results for all filesµ and ´group identical matchesµ. Since each file has only one 
TITLE tag, and we include the name of the file in the text to be collected, each text to be collected 
will be different. This means ´group identical matchesµ won’t really group anything, but it does allow 
matches to be sorted alphabetically.  
4.
In the Search box, enter the regular expression «
<TITLE>(.*?)</TITLE>
» and make sure to leave 
´case sensitive searchµ off. This regex will match an HTML title tag, and store its contents into the 
first backreference.  
5.
In  the  Collect  box,  enter  ´
<P><A  HREF="%FILENAME%">\1</A></P>
µ  The  path 
placeholder %FILENAME% will be replaced with the name of the file in which the HTML title tag 
was found, and \1 will be replaced with the contents of the title tag.  
6.
Select to sort collected matches alphabetically, and set the minimum number of occurrences to one.  
7.
Select ´save results into a single fileµ in the target file creation list.  
8.
Click the ellipsis (...) button next to ´target file locationµ, and select the name of the file you want to 
save your HTML index into.  
9.
Leave ´between collected textµ set to ´line breakµ so each index entry we collect appears on its own 
line.  
10.
Turn on the ´collect headers and footersµ checkbox.  
11.
In the list that appears, click on ´target file headerµ. In the edit box next to that list, paste:  
12.
<html><head><title>HTML Index</title></head> 
<body><h1>HTML Index</h1> 
13.
Select ´target file footerµ in the list and type in 
</body></html>
. These two steps make sure we 
collect a valid HTML file.  
14.
Click the Collect button to run the action.  
This action is available in the PowerGREP.pgl library as ´Indexing HTML filesµ. 
How much information you can include in the index is up to your imagination. The above example is very 
minimal, to make it easy to understand. If you also want to include the first paragraph in each HTML file, you 
could search for: 
«
<TITLE>(.*?)</TITLE>.*?<P[^>]+>(.*?)</P>
» 
and collect: 
<P><A HREF="%FILENAME%">\1</A></P> 
<UL>\2</UL> 
This action is available in the PowerGREP.pgl library as ´Indexing HTML files with first paragraphµ. 
C# Image: How to Draw Text on Images within Rasteredge .NET Image
to make this image text adding application work LoadImage = new Bitmap("C:\\1.jpg"); Graphic Text powerful & profession imaging controls, PDF document, tiff
adding image to pdf form; add an image to a pdf acrobat
VB.NET Image: Visual Basic .NET Guide to Draw Text on Image in .
is the Visual Basic .NET method for adding text on Dim LoadImage As New Bitmap("C:\1.jpg") Dim Text powerful & profession imaging controls, PDF document,
add image pdf document; adding image to pdf
80 
42. Make Sections and Their Contents Consistent 
This example illustrates how you can use named capturing groups to carry over regex matches from the file 
sectioning to the main part of the action. 
Suppose you have a number of HTML files, with headings such as <h1>heading 4</h1> that you want to 
make consistent. The 4 should be changed into a 1. 
PowerGREP makes this easy. Use file sectioning to match the header tag and its contents. Then make the 
main action search-and-replace through the header, replacing numbers in the header’s contents with the 
header’s nesting level carried over from the file sectioning. 
You  can  find  this  action  in  the  PowerGREP.pgl  library  as  ´Make  numbers  in  HTML  heading  tags 
consistentµ. 
1.
Select the files you want to search through in the File Selector.  
2.
Start with a fresh action.  
3.
Set the action type to ´search-and-replaceµ.  
4.
Select ´search and collect sectionsµ from the ´file sectioningµ list. Leave the section search type as 
´regular expressionµ.  
5.
In  the  Section  Search  box,  enter  the  regular  expression  «
<h(?'headerlevel'[1-
6])>(?'tag'.*?)</h\k'headerlevel'>
» and make sure to leave ´case sensitive searchµ off. 
This regular expression contains two named capturing groups, ´headerlevelµ and ´tagµ.  
6.
In the Section Collect box, enter the named backreference ´
${tag}
µ to restrict the main action to 
the contents of the tag.  
7.
In the Search box in the main part of the action, enter the regular expression «
\d+
» to match any 
number.  
8.
In the Replace box, enter the named backreference ´
${headerlevel}
µ  
9.
Set the target and backup file options as you like them.  
10.
Click the Preview button to run a test.  
11.
If all looks well, click the Replace button to update the headers.  
When PowerGREP executes this action, the following happens for each file: 
1.
The sectioning regex matches a heading tag in the file, e.g. „
<h1>heading 4</h1>
µ. The heading 
tag’s number „
1
µ is stored in the named group ´headerlevelµ, and the tag’s contents „
heading 4
µ 
are stored in the named group ´tagµ.  
2.
Because the section collect is set to a reference to the named capturing group ´tagµ, the main action 
will search only through the contents of the heading tag.  
3.
The main action matches the first number „
4
µ in the heading tag’s contents.  
4.
The main action replaces the matched number with the contents of the backreference ´headerlevelµ: 
´
1
µ  
5.
The main action repeats steps 3 and 4 until all numbers have been replaced. In the example, the 
section after substitution becomes ´
<h1>heading 1</h1>
µ  
6.
PowerGREP repeats steps 1 through 5 for all heading tags in the file.  
C# PowerPoint - Insert Image to PowerPoint File Page in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel, VB.NET pptx"); BasePage page = doc.GetPage(0); REImage image = new REImage(@"C:\logo2.jpg"); page.AddImage
add photo to pdf for; add image to pdf reader
VB.NET Image: Create Image from Stream; Stream to Image Converter
image sharpening and old photo effect adding, resize source TIF encoder, GIF encoder and JPG encoder powerful & profession imaging controls, PDF document, tiff
adding an image to a pdf; add jpeg to pdf
81 
Updating the Heading Tags Themselves 
Doing the opposite, updating a heading tag to make it consistent with numbers in the tag’s contents, is almost 
as easy. What we’ll do is replace <h1>heading 4</h1> with <h4>heading 4</h4> 
You can find this action in the PowerGREP.pgl library as ´Make HTML heading tags consistent with their 
contentsµ. 
1.
Select the files you want to search through in the File Selector.  
2.
Start with a fresh action.  
3.
Set the action type to ´search-and-replaceµ.  
4.
Select ´search for sectionsµ from the ´file sectioningµ list. Leave the section search type as ´regular 
expressionµ.  
5.
In  the  Section  Search  box,  enter  the  regular  expression  «
<h(?'headerlevel'[1-
6])>(?'tag'.*?)</h\k'headerlevel'>
» and make sure to leave ´case sensitive searchµ off. 
This regular expression contains two named capturing groups, ´headerlevelµ and ´tagµ.  
6.
Turn on the option "collect/replace whole sections".  
7.
In the Search box in the main part of the action, enter the regular expression «
\b[1-6]\b
» to match 
a number between 1 and 6. The word boundaries also make sure we don’t match the number in the 
heading tag itself.  
8.
In the Replace box, enter ´
<h\0>${tag}</h\0>
µ  
9.
Set the target and backup file options as you like them.  
10.
Click the Preview button to run a test.  
11.
If all looks well, click the Replace button to update the headers.  
When PowerGREP executes this action, the following happens for each file: 
1.
The sectioning regex matches a heading tag in the file, e.g. „
<h1>heading 4</h1>
µ. The heading 
tag’s number „
1
µ is stored in the named group ´headerlevelµ, and the tag’s contents „
heading 4
µ 
are stored in the named group ´tagµ.  
2.
The main action searches through the entire section, i.e. tag with contents.  
3.
The main action matches the first number „
4
µ in the heading tag. Because of the word boundaries in 
our regular expression, the ´
1
µ in ´
h1
µ is not matched.  
4.
The backreference 
\0
in the replacement text is substituted with the regex match „
4
µ and the named 
backreference ´tagµ is substituted with „
heading 4
µ captured by the file sectioning. The result is 
´
<h4>heading 4</h4>
µ  
5.
Since we turned on "collect/replace whole sections", the whole  section is substituted with the 
replacement, and the main action is done with this section.  
6.
PowerGREP repeats steps 1 through 5 for all heading tags in the file.  
82 
43. Generate a PHP Navigation Bar 
Using path placeholders in collect data actions, you can easily compile indices of files. 
Let’s say you are developing a web site in PHP. You keep all the main PHP files in a separate folder. Now, 
you want to create a navigation bar in PHP. While you could do this by hand, automating this in PowerGREP 
will save you a lot of time, certainly if pages are frequently added and removed. Though I am using PHP in 
this example, the same principles apply to any other web scripting language. 
The final PHP file should look like this, with the complete if statement repeated for every main page on the 
site: 
function navbar($mainpage) { 
if (’currentpage’ == $mainpage) { 
print ’<B>currentpagetitle</B><BR>’; 
} else { 
print ’<A HREF=“currentpage”>currentpagetitle</A><BR>’; 
Obviously a very simple navigation bar, but good enough to illustrate the idea. 
1.
Select the files you want to add to the navigation bar in the File Selector.  
2.
Start with a fresh action.  
3.
Set the action type to ´collect dataµ. Leave the search type as ´regular expressionµ.  
4.
In the Search box, enter the regular expression «
<title>(.*?)</title>
» and make sure to leave 
´case sensitive searchµ off. This regular expression matches an HTML title tag, capturing the title 
into the first backreference.  
5.
In the Collect box, enter the following six lines of text. 
6.
# \1 
7.
if (’%FILENAME%’ == $mainpage) { 
8.
print ’<B>\1</B><BR>’; 
9.
} else { 
10.
print ’<A HREF="%FILENAME%">\1</A><BR>’; 
11.
Select ´save results into a single fileµ in the target file creation list.  
12.
Click the ellipsis (...) button next to ´target file locationµ, and select the name of the file you want to 
save your PHP navigation bar into.  
13.
Leave ´between collected textµ set to ´line breakµ.  
14.
Turn on the ´collect headers and footersµ checkbox.  
15.
In the list that appears, click on ´target file headerµ. In the edit box next to that list, paste 
<? 
function navbar($mainpage) {
and press Enter to add a line break after the 
{
.  
16.
Select ´target file footerµ in the list and type in 
} ?>
. These two steps make sure we collect a valid 
PHP file.  
17.
Click the Collect button to run the action to create a complete navigation bar.  
Two techniques make this action work. The regular expression that searches for the title tag captures its 
contents into a backreference 
\1
which we use to insert the title into the collected data three times. The path 
placeholder %FILENAME% inserts the name of the file being searched through into the collected data. This 
example assumes that  all HTML  files  are in the same folder. If  not, you’ll need  to  use  another  path 
83 
placeholder. The finishing touch is to use the headers and footers option in PowerGREP to wrap our PHP 
code into a complete PHP function. 
You can find this action in the PowerGREP.pgl standard library as ´Generate a PHP navigation barµ. 
All that is left to do now is to include a reference to the navigation bar in each of the web pages, something 
you can also easily do with PowerGREP. 
84 
44. Include a PHP Navigation Bar 
The previous example showed you how to generate a php navigation bar. This example shows you how to 
include a reference to the navigation bar in each of the PHP files. 
1.
Unless you still have the files for creating the navigation bar marked in the File Selector, mark the 
files you want to add the navigation bar to.  
2.
Start with a fresh action.  
3.
Set the action type to ´search-and-replaceµ. Leave the search type as ´regular expressionµ.  
4.
In the Search box, enter the regular expression «
</h1>
» and make sure to leave ´case sensitive 
searchµ off.  
5.
Enter ´
\0<? requires('navbar.php'); navbar('%FILENAME%'); ?>
µ as the replacement 
text. You  will probably also  want  to  press  Enter after  the \0 to insert a  line break into the 
replacement text, so the navbar stuff ends up on its own line, rather than after the </H1>.  
6.
Set the target and backup file options as you like them.  
7.
Click the Preview button to run a test.  
8.
If all looks well, click the Replace button to add the navigation bar reference to each file.  
When  PowerGREP find a  match in  c:\web\source\index.php, then the replacement text will become 
´
<H1><? requires('navbar.php'); navbar('index.html'); ?>
µ. Whether your site consists of 
just a dozen or thousands of pages, inserting the reference with PowerGREP is easy and saves you a lot of 
time. Not to mention the potential errors if you have to type in the file names manually into each file. 
You can find this action in the PowerGREP.pgl standard library as ´Include a PHP navigation barµ. 
Part 3 
PowerGREP Reference 
Documents you may be interested
Documents you may be interested