asp.net open pdf file in web browser using c# vb.net : Best way to compress pdf file Library control class asp.net web page .net ajax InData2UserGuide12-part445

«fields prod_id, quantity, price¶
«--theput statement defines a variable: see chapter 10¶
«put "Chess Backgammon Checkers" into games¶
«word prod_id of games» Sets:
=>
$«price * quantity».00¶
output:
Backgammon Sets:
$100.00
Checkers Sets:
$150.00
Chess Sets:
$145.00
Within character string expressions, words are normally delimited by spaces,
tabs, line feeds, carriage returns, and so on. Multiple delimiters in a row do not
define additional words, but rather are carried along with the preceding word
when multiple words are extracted:
EXPRESSION
RESULT
«a»
The big      bad wolf.
«word 2 to 3 of a»
big    bad
You can change the word delimiters using the 
set worddelimiters
statement. For
example, this prototype statement sets the word delimiter set to a comma and
a semicolon:
EXPRESSION
RESULT
«a»
yes,no;maybe more words
«word 1 to 2 of a»
yes,no;maybe more
«set worddelimiters to ",;"»
«word 1 to 2 of a»
yes,no
Note that if you change the word delimiters in the middle of your prototype after
having relied on their default values, you will need to set them back to the
defaults afterward (e.g. at the end of the prototype) so that they will be set prop-
erly the next time through the prototype.
The 
set wordcharacters
statement provides another way of customizing the 
word
functionality. This statement specifies the characters that are considered part
of words. 
Extracting Lines
The 
line
operatorsimilarly extracts lines from within an expression (where lines
are separated by 
ASCII
carriage return characters). It has this general format:
line n[to m] of expression
Here are some examples (assume that the field 
song
holds the four lines of the
song, “Row, Row, Row Your Boat”—we hope you know this one):
Manipulating Incoming Data
Extracting Words and Lines from Expressions
InData User’s Guide
109
Best way to compress pdf file - Compress reduce PDF size in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
C# Code & .NET API to Compress & Decompress PDF Document
reader compress pdf; best pdf compression tool
Best way to compress pdf file - VB.NET PDF File Compress Library: Compress reduce PDF size in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET PDF Document Compression and Decompression Control SDK
best online pdf compressor; pdf change page size
EXAMPLE
RESULT
line 2 of song
Gently down the stream,
line 4 to 100 of song
Life is but a dream.
You can also use the 
the number of linesin expression
statement to determine the
total number of lines in an expression:
line 2 to the number of lines in song of song
Extracting Arbitrary Items
The 
item
operatormay be used to extract arbitrary items from fields and general
strings. Its format is very similar to 
word
’s:
item n[to m] of expression
where nis the index of the first item you want (or an expression evaluating to a
whole number), and mis the index of the final item you want (the 
tom
part is
optional if you only want to extract one item). Item indices begin at 1. Within the
expression, items are normally separated by commas, although you can specify a
different (single) delimiter with the 
set itemdelimiter
statement.
Here are some examples:
EXAMPLE
RESULT
«a»
He was born, he assumed, on 5/2/97.
«item 1 of a»
He was born
«item 2 to 3 of a»
he assumed, on 5/2/97.
«set itemdelimiter to "/"»
«item 1 of a»
He was born, he assumed, on 5
«item 2 to 3 of a»
2/97.
Note that consecutive items are separated by the item delimiter when they are
output.
Determining the Number of Chunks
The following prototype statements may be used to determine the number of
characters, words, lines, or items within the specified expression:
the number of chars in expression
Equivalent to length(expression).
the number of words in expression
the number of lines in expression
the number of itemsin expression
Extracting Words and Lines from Expressions
Chapter 7:
110
InData User’s Guide
C# PDF File Split Library: Split, seperate PDF into multiple files
Best and professional adobe PDF file splitting SDK for C# PDF document splitting library control, XDoc.PDF, provides an advanced C# programming way to split
best way to compress pdf; change paper size in pdf
C# PDF Text Redact Library: select, redact text content from PDF
File: Compress PDF. Page: Create Thumbnails. Page: Insert PDF Pages. Page: Delete Existing PDF Pages. Provide a best and easy way to darken text in PDF
compress pdf; best pdf compressor
Handling Repeating Fields
InData can handle repeating fields—fields which can hold more than one value
in the same record—in data exported from FileMaker Proand other databases
supporting this feature, via InData’s 
subfield
operator (abbreviable to 
sfld
). The
subfield
operatorextracts one subfield from a repeating field; for example,
«sub-
field 2 of k»
extracts the second subfield of field 
k
, for example.
Consider the following completed invoice:
The structure of the invoice—the locations of the text frames, their header text
and shading, and so on—are created on the document’s master page. The proto-
type is placed as usual in the text frames on page one of the document.
The address part of the invoice consists of normal prototype statements like the
ones we’ve looked at so far; each line contains one or more field placeholders, and
some lines include if statements for conditional importing. This section of the pro-
totype consumes the first eight fields in each record, and it ends with a new frame
character to force the next field into the main item list text frame (below the
header line starting with 
QUANTITY
).
The prototype for the item list extracts data from four repeating fields in the
data. Here are the prototype statements in the item list area of the invoice:
«repeat with num = 1 to 40¶
«if subfield num of i is empty»«exit repeat¶
«sfld num of i»
«sfld num of j»
«sfld num of k»
«sfld num of l»¶
«end repeat»
This prototype is based around a 
repeat
loop indexed by the variable 
num
. This
loop allows up to 40 subfields to be processed for each repeating field. Our pro-
totype processes four repeating fields in parallel. The third line extracts the suc-
cessive subfields from fields 
i
through 
l
and places them into the invoice. The
»
»
»
»
Manipulating Incoming Data
Handling Repeating Fields
InData User’s Guide
111
C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
Best C#.NET PDF converter SDK for converting PDF to high-fidelity PDF to TIFF conversion in an easy way. C# developers can render and convert PDF document to
pdf change font size in textbox; change font size pdf document
VB.NET Create PDF Library SDK to convert PDF from other file
Best VB.NET component to convert Microsoft Office Word, Excel and Creating a PDF document is a good way to share you can make sure that the PDF file cannot be
pdf compressor; .pdf printing in thumbnail size
fourth prototype line ends with a new frame character, forcing the remainder of
the prototype into the total area of the invoice, where each record’s final three
fields are entered into the formatted invoice.
If desired, the subfield delimiter character may be defined via the 
InData
=>
Preferences
=>
Data…
menu item. The default is set correctly for FileMaker Pro.
String Conversion Functions
InData provides several functions for transforming character expressions:
FUNCTION
DESCRIPTION
trim(expr)
Removes leading and trailing spaces in expr.
trim(expr1,expr2)
Removes all characters found in expr2 from the
beginning and end of expr1.
upcase(expr)
Translates exprto uppercase.
downcase(expr)
Translates exprto lowercase.
wordcase(expr)
Capitalizes the first character of each word to upper-
case (based upon current word delimiters), and con-
verts all other characters to lowercase.
dec2frac(expr)
Returns the whole number plus fraction equivalent
(as a string) of its argument interpreted as a decimal
number.
numtochar(integer-expr)
Interprets an integer as an 
ASCII
value and converts
it to the corresponding 
ASCII
character (as a single
character string).
chartonum(char-expr)
Converts a single characterto its integer 
ASCII
value.
We will now consider some examples (assume that 
a
holds
“  It was a VERY Good
year!  ”
and 
b
holds 
“   Some text here.  ”
): 
EXAMPLE
RESULT
«trim(a)»
It was a VERYGood year!
«trim (a,"! rI")»
t was a VERYGood yea
«trim (a,"!")»
It was a VERY GOOD year!  
«trim(b," .")»
Some text here
«trim(b,"Some text.")»
her
«upcase(a)»
ITWASAVERYGOODYEAR!  
«downcase(trim(a))»
it was a very good year!
«wordcase(word 1 to 4 of a)»
It Was A Very
«dec2frac("1.5")»
1 1/2
«dec2frac("500.125")»
500 1/8
«dec2frac("400.3456")»
400 34/100
«dec2frac("1  XYZ  .375")»
1
Handling Repeating Fields
Chapter 7:
112
InData User’s Guide
C# WPF PDF Viewer SDK to annotate PDF document in C#.NET
Best WPF PDF Viewer control for PDF annotating in .NET WPF class. Click to underline selected PDF text. 3. Click to add way underline under selected PDF text. 4.
pdf paper size; change font size on pdf text box
C# Image: Zoom Image and Document Page in C#.NET Web Viewer
gif, bmp (bitmap), tiff / multi-page tiff, PDF, etc This "Best Fit" function will help developers and users view & To put it in another way, after you activate
best pdf compressor online; change font size pdf form
Here is a prototype that sets the fractions resulting from 
dec2frac()
in a more aes-
thetically pleasing way (we have broken the prototype into lines for readability,
but there are not paragraph breaks anywhere within it):
«set itemdelimiter to "/"»
«put dec2frac(a) into frac
«if the number of words in frac = 2»
«word 1 of frac»
«item 1 of word 2 of frac»
/
«item 2 of word 2 of frac»
«else if frac contains "/"»
«item 1  of frac»
/
«item 2 of frac»
«else»
«frac»
«endif»
If 
dec2frac(a)
results in 2 words, then there is both a whole number and a fraction;
if it returns only one word, then we test for the presence of a slash to see if the
result is a whole number or a fraction (having set the 
itemdelimiter
to a slash at
the beginning of the prototype).
When we find a fraction, we use the 
item
operator to extract the numerator and
denominator separately. We set both in smaller type, raising the baseline for the
numerator, and we replace the slash with a virgule character from the PostScript
Symbolfont (Option-6 or Alt-0164).
Here are some sample formatted records: 
1
1
/
2
500
1
/
8
400
34
/
100
We haven’t bothered to kern the characters in the fraction. Note that if you want
to kern a single-character denominator, you’ll need to add a space before the clos-
ing chevron to avoid an InData error. 
Here are some examples of 
numtochar
and 
chartonum
:
EXAMPLE
RESULT
«numtochar(65)»
A
«numtochar(999)»
empty string
«chartonum("B")»
66
The 
chartonum
functioncan be used to determine whether a character is lower-
case or not. The following prototype statement will determine whether the first
character of the contents of field 
a
is lowercase or not (with a true condition indi-
cating a lowercase letter):
«if chartonum(char 1 of a) >= chartonum("a") and 
chartonum(char 1 of a) <= chartonum("z")» …
Manipulating Incoming Data
String Conversion Functions
InData User’s Guide
113
VB.NET PDF - Annotate PDF with WPF PDF Viewer for VB.NET
Best WPF PDF Viewer control as well as an advanced PDF annotating Click to underline selected PDF text. 3. Click to add way underline under selected PDF text. 4.
adjust size of pdf file; change pdf page size
VB.NET PowerPoint: Merge and Split PowerPoint Document(s) with PPT
Then the best way to reach this target is to use a PowerPoint documents and save the created new file in the If you want to see more PDF processing functions
pdf change font size; pdf compression settings
Note that non-letters (e.g. numbers) are considered non-lowercase by this test.
Here is a prototype which will test whether there are any non-lowercase letters
within 
a
, leaving the result in the variable 
is_lc
(the value 
true
means 
a
is entire-
ly composed of lowercase letters):
«put true into is_lc¶
«repeat with ind = 1 to length(a)¶
«if not(chartonum(char ind of a) >= chartonum("a") and chartonum(char ind of a)
<= chartonum("z"))¶
«put false into is_lc¶
«endif¶
«end repeat¶
«if is_lc» …
Determining the Current Record or Page Number
We’ve already seen the 
recordnumber
functionin action. Here we discuss it for-
mally and also introduce the 
pageinfo
function.
The 
recordnumber
function returns the record number of the current record with-
in the data. It returns its absolute number if 
recordnumber
’s argument is 
false
,
counting the first record in the data as record 1; it returns its position with
respect to the number of processed records if 
recordnumber
’s argument is 
true
,
defining as record 1 the first record imported after skipping records in accord
with the settings in the
Record Range to Import
dialog.
For example, the following prototype statement uses 
recordnumber
to place some
text into the output every fifty records:
«if recordnumber(true) mod 50 = 0»some text
«endif¶
The 
pageinfo
function returns information about the insertion point location in
the document during importing. It has the following forms:
FORM
RESULT
pageinfo(1)
Absolute page number in document.
pageinfo(2)
Absolute spread number in document.
pageinfo(3)
Relative page number within the
current section of the document.
pageinfo(4)
Page location within the current
spread (left page=1, right page=2).
pageinfo(5)
Name of the master page applied at this point.
Page and spread numbering within the document and page numbering within
each document section always begins at 1 (regardless of the 
Page Numbering
set-
tings in the 
Page
=>
Section…
dialog).
String Conversion Functions
Chapter 7:
114
InData User’s Guide
C# PDF Page Move Library: re-order PDF pages in C#.net, ASP.NET
Best Visual Studio .NET PDF file edit SDK for in an extremely easy and quick way using C# RootPath + "\\" Output.pdf"; // load the PDF file PDFDocument doc
change paper size pdf; pdf reduce file size
C# PDF Text Box Edit Library: add, delete, update PDF text box in
A best PDF annotator for Visual Studio .NET supports to add text Ability to change text size in PDF text box. Adding text box is another way to add text to PDF
batch pdf compression; adjust pdf size
For example, if you wanted to have a name be flush right on recto (right-hand)
pages, and flush left on verso (left-hand) pages, you might use a prototype like
this one:
«first» «last»«if pageinfo(1) mod 2 is 1»¶
«else»¶
«endif¶
where the first paragraph is flush right, and the second is flush left; what hap-
pens is that either the first paragraph mark (and its right justification) takes
effect, or the second (and its left justification), depending on whether the current
page number is odd or even.
Note that using 
pageinfo
at the start of a paragraph is error-prone, since the para-
graph, without any text in it, may well fit at the bottom of one page, but once you
add data, jump to the next. As you may surmise, it’s very trickyto use 
pageinfo
correctly and effectively, and data formatted using this function will obviously not
readjust its format if you edit the imported data.
Accessing Arbitrary Fields within Records
The function 
fieldvalue
may be used to obtain the value of any desired field with-
in the previous, current or next record. It has the general format:
fieldvalue(fnum [,which-rec])
where fnumis the number of the field whose contents are desired (field number
ing begins at 1). The second argument to 
fieldvalue
is optional. If included, which-
rec specifies whether the value from the previous, current, or next record's
fnum'th field is desired, corresponding to which-recvalues of 1, 2, and 3, respec-
tively. 
Fieldvalue
may be used to access the values of both named and unnamed fields
within the data records, though you must declare the maximum number of fields
you plan to use in your 
fields
statement.
For example, 
fieldvalue(1)
returns the value of the first field in the current record,
fieldvalue(25)
returns the value of the 25
th
field in the current record, and 
field-
value(2,3)
returns the value of the second field in the next (upcoming) record. 
Field-
value
returns an empty value if the requested field number is out of range or if
a value other than 1, 2 or 3 is given for which-rec.
The function 
fieldindex(field-name)
may be used to return the field index corre-
sponding to a named field (as defined in the prototype’s 
fields
statement). For
example, 
fieldindex(name)
returns the field index for the 
name
field, and 
fieldval-
ue(fieldindex(name),1)
returns the value in the 
name
field from the previous record.
Manipulating Incoming Data
Determining the Current Record or Page Number
InData User’s Guide
115
Similarly,
fieldvalue(fieldindex(name) - 1 + idx)
returns the value of theidx'th field
after the 
name
field in the current record. 
If the argument to 
fieldindex
isn't a bona fide field name, then 
fieldindex
returns
the value 0. 
Accessing Arbitrary Fields within Records
116
InData User’s Guide
8
Importing and Formatting Pictures
InData can import variable pictureelements along with text. Your input data
must contain a picture filename (or pathname), as a field, for each picture you
want to import, and the individual picture files must reside somewhere in the
accessible file system. Essentially, InData is performing an automatic InDesign
Place...command for each picture you import, with all that implies.
Importing Pictures
Picture importing involves the following:
u
including one or more anchored picture frames within the prototype;
u
indicating the source of the filename for each picture frame.
It may also include these steps:
u
specifying how pictures are to placed into their picture frames, both global-
ly and on a per-picture basis;
u
specifying where InData is to look for picture files;
u
specifying what to do if a requested picture file can’t be found.
You can include an anchored picture frame in any InData prototypeusing the fol-
lowing procedure (which is the standard InDesign method for anchoring graph-
ics within text):
1
Create a picture frame of the desired shape and size using one of the InDesign
picture frame tools.
2
Select the picture frame with the selection tool, and then cut it to the clipboard.
3
Select the content tool, then place the insertion point in the prototype where you
want the picture frame to go, and then choose 
Paste
from the 
Edit
menu.
Indata User’s Guide
117
The picture frame will now be within the prototype.
Here is a simple prototype containing a picture frame:
«fields last, first, picfile, title, addr, phone, fax, telex¶
«set filename of picture 1 to picfile¶
«first» «last»¶
«title»¶
«if addr»Business address: «addr»¶
«endif»«if phone»Telephone: «phone»¶
«endif»«if fax»Telefax: «fax»¶
«endif»«if telex»Telex: «telex»¶
«endif¶
The field 
picfile
holds the name of the picture file for each record. The prototype
statement:
«set filename of picture 1 to picfile¶
tells InData to use the contents of the 
picfile
field in each record as the filename
of the picture to put into the picture frame for that record. The picture number
indicates which picture frame within the prototype the statement refers to
(regardless of any conditional picture frame importing; see below). 
set filenameof
picture
may be abbrviated as 
set fn of pic
.
In InData 2.0, you can also import a page of a PDF fileas a picture, using the 
set
pictureimportpage
prototype statement. For example, these statements import the
page specified in the pagenum field of the PDF file specified in the 
picfile
field:
«set filename of picture 1 to picfile¶
«setpictureimportpage of picture 1 to pagenum¶
«set pictureimportcropof picture 1 to 2¶
The final prototype statement sets the croppingfor the imported page to the page
itself. See chapter 13 for more information about these prototype statements.
Templates and Imported Pictures
You can save documents with prototypes containing picture frames as InDesign
templates. However, when you generate a new document from the template, you
will need to save the document before pictures will import properly; generally, you
would save the new document to the same folder where the picture files are locat-
ed. Otherwise, InData will fail when trying to locate the pictures as records are
Importing Pictures
Chapter 8:
118
InData User’s Guide
Documents you may be interested
Documents you may be interested