telerik pdf viewer mvc : Convert multi page pdf to jpg Library control component asp.net azure windows mvc Enterprise-Development-with-Flex47-part746

Figure 9-3. Creating a self-signed certificate
Figure 9-4. Installing the AIR application
Hello World in AIR R | | 447
Convert multi page pdf to jpg - Convert PDF to JPEG images in C#.net, ASP.NET MVC, WinForms, WPF project
How to convert PDF to JPEG using C#.NET PDF to JPEG conversion / converter library control SDK
change pdf to jpg image; convert pdf to high quality jpg
Convert multi page pdf to jpg - VB.NET PDF Convert to Jpeg SDK: Convert PDF to JPEG images in vb.net, ASP.NET MVC, WinForms, WPF project
Online Tutorial for PDF to JPEG (JPG) Conversion in VB.NET Image Application
convert pdf picture to jpg; bulk pdf to jpg converter online
Because you used a self-signed certificate, the AIR installer warns the user that the
publisher’s identity is unknown. The fact that you’ve entered your name as a publisher
is not good enough; some trustworthy agent has to confirm that you are who you say
you are. Besides identifying the publisher of the application, digital certificates guar-
antee that the binary content of the application has not been modified after signing (the
checksum mechanism is being used there). Using the .air file is one of the ways to install
an AIR application.
You can allow users to install your AIR application from a web page
without saving the .air file. Flex SDK has a badge.swf file that supports
such seamless installation (of both AIR itself and your application). For
details, refer to the Adobe documentation.
The installer extracts the application name from the descriptor, and the installer also
has a mechanism to ensure that you won’t replace an AIR application with its older
version.
Assuming your user knows the publisher of this application (you), and clicks Install,
the installation process continues, and HelloWorld will take its honorable place among
other applications installed on the user’s computer. For example, if no settings are
changed, on Windows a new HelloWorld.exe application will be installed in the folder
C:\Program Files\HelloWorld, as shown in Figure 9-5. Double-click on the .air file after
this application was installed (the ID and the version were compared), and you’ll see a
screen offering to either uninstall the application or run it.
Figure 9-5. AIR application folders
448 | | Chapter 9: Working with Adobe AIR
C# TIFF: C#.NET Code to Convert JPEG Images to TIFF
Gif, and REImage object to single or multi-page Tiff image Use C# Code to Convert Jpeg to Tiff. string[] imagePaths = { @"C:\demo1.jpg", @"C:\demo2.jpg", @"C
convert pdf images to jpg; .net pdf to jpg
C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net
Using this .NET PDF to TIFF conversion control, C# developers can render and convert PDF document to TIFF image Both single page and multi-page Tiff image
change pdf to jpg on; change file from pdf to jpg on
Native Windows
The root tag of any AIR application is 
<mx:WindowedApplication>
, which is all it takes
to make the application look like a native window of the OS where it runs. For example,
install and run the same HelloWorld.air application on Mac OS, and, instead of looking
like Figure 9-2, the window looks like Figure 9-6.
You can have only one 
<mx:WindowedApplication>
tag per application, however. If you
need to instantiate other windows, you need to use the 
<mx:Window>
component. With
it, you can specify multiple windows that may or may not look like a native window
based on the chrome you specify. The 
Window
class contains an important property called
nativeWindow
of type 
flash.display.NativeWindow
, which is the class you would use to
create new windows if you were developing a plain Flash (no Flex) application.
Figure 9-6. HelloWorld on MAC OS
If you need to open a new native window, create a custom component called
HelloWindow with 
<mx:Window>
as the root tag:
<?xml version="1.0" encoding="utf-8"?>
<mx:Window xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" width="400" height="300">
<mx:Button label="Close me" click="close()"/>
</mx:Window>
The following application instantiates and opens this native window:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical">
<mx:Label text="Hello World" />
Native Windows s | | 449
C# Word - Convert Word to JPEG in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel component toolkit, C# developers can easily and quickly convert a large-size multi-page Word document
convert .pdf to .jpg; to jpeg
C# powerpoint - Convert PowerPoint to JPEG in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET component toolkit, C# developers can easily and quickly convert a large-size multi-page PowerPoint document
convert pdf to jpg converter; convert pdf to jpg
<mx:Button  label="Open Native Window" click="openMyWindow()" />
<mx:Script>
<![CDATA[
import mx.core.Window;
private function openMyWindow():void{
var helloNativeWindow:Window=new HelloWindow();
helloNativeWindow.open();
}
]]>
</mx:Script>
</mx:WindowedApplication>
You can change the chrome and transparency of the 
<mx:Window>
component by using
its properties 
systemChrome
and 
transparent
, respectively.
You can’t set the 
systemChrome
and 
transparent
properties of
<mx:WindowedApplication>
programmatically, but you can do it in the
application descriptor file.
Working with Files
The class 
flash.filesystem.File
is a means of getting access to the files and directories
on the user’s computer. This class enables you to create, move, copy, or delete files. It
also comes with generic constants that resolve the path to the user, desktop, or docu-
ment directories and offer a unified cross-platform way to access application resource
files. For read/write operations, use the class 
FileStream
from the package
flash.filesystem
.
AIR supports working with files in two modes: synchronous and asynchronous. Syn-
chronous mode forces the application to block (wait) until this I/O operation is com-
plete. In asynchronous mode, the user can continue working with the application while
it works with files, and an event notification mechanism monitors the progress of the
I/O. Those methods that work asynchronously have the suffix Async in their names—
for example, 
File.copyToAsync()
or 
FileStream.openAsync()
. Using the asynchronous
versions of I/O requires a bit more coding, but it should be your first choice when you
need to process files of substantial sizes.
Commonly Used Directories
Because AIR is a cross-platform runtime, it shields the user from knowing specifics of
the structure of the native filesystem by introducing predefined alias names for certain
directories.
The 
app:/
alias refers to your application’s root read-only directory, where all files (both
code and assets) that you packaged with your application are located. For example, if
your application includes an images directory, which holds the file cafeLogo.jpg, you
450 | | Chapter 9: Working with Adobe AIR
JPG to PNG Converter | Convert JPEG to PNG, Convert PNG to JPG
& pixel depth; Ability to convert single-page images between Select "Convert to PNG"; Select "Start" to start JPEG to PNG Converter first; Load JPG images from
convert pdf to gif or jpg; change pdf to jpg online
C# Excel - Convert Excel to JPEG in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel component toolkit, C# developers can easily and quickly convert a large-size multi-page Excel document
convert pdf into jpg online; conversion pdf to jpg
would create an instance of a 
File
pointing to this image (regardless of where this
application is installed) as follows:
var cafeLogo: File= new File("app:/images/cafeLogo.jpg");
Similar to Java, in AIR the fact that you’ve created an instance of a
File
providing a path to a specific file or directory doesn’t mean that it
exists and is in good health. By instantiating a 
File
object, you are just
preparing a utility object capable of working with a file at a given loca-
tion. Don’t forget to provide error processing while performing I/O op-
erations on this file.
Alternatively, you could use a static property 
File.applicationDirectory
:
var cafeLogo: File=
File.applicationDirectory.resolvePath("images/cafeLogo.jpg")
The 
resolvePath()
method enables you to write the file access code without worrying
about differences of native file path notation in Windows, Mac OS, and Linux. On the
other hand, you are still allowed to reference a file by its absolute path, as in this code:
var cafeLogo: File= new File(
This notation has an obvious disadvantage: it works only on Windows machines. If
you want to specify the path starting from a root directory of the user’s hard disk but
in a cross-platform fashion, use the alias 
file:/
.
The application shown in Example 9-2 will allow the user to enter the filename and
any text in the left text box. When the user clicks the “Write” button, the entered text
will be asynchronously written into the file with the specified name. When the user
clicks the “Read” button, the content of this file will be read in synchronous mode.
The 
app-storage:/
alias is used to work with an automatically created directory for
persisting offline data. Each AIR application has its own storage directory, and the
sample application shown in Example 9-2 will save the files there.
Alternatively, you can use the 
applicationStorageDirectory
property of the class 
File
.
The class 
File
has some more static constants for commonly used directories:
desktopDirectory
documentsDirectory
, and 
userDirectory
. The following code frag-
ment, for example, creates a directory testDir specifically for the application Working-
WithFiles:
var myDir:File=new File("app-storage:/testDir")
if (!myDir.exists){
myDir.createDirectory();
}
The actual location of this directory depends on the OS, and in Windows XP you can
find it here (make sure that Windows Explorer is set to show hidden files):
Working with Files s | | 451
JPEG to PDF Converter | Convert JPEG to PDF, Convert PDF to JPEG
Convert JPEG (JPG) Images to, from PDF Images on Windows. Features and Benefits. Powerful image converter to convert images of JPG, JPEG formats to PDF files;
changing pdf to jpg file; best way to convert pdf to jpg
C# Imaging - Planet Barcode Generation Guide
bar codes on documents such as PDF, Office Word, Excel, PowerPoint and multi-page TIFF. BarcodeHeight = 200; barcode.AutoResize = true; //convert barcode to
convert pdf to jpg 300 dpi; change from pdf to jpg
C:\Documents 
and 
Settings\Administrator\Application 
Data\
WorkingWithFiles\LocalStore\testDir
In Mac OS X, the same code will create the directory:
/Users/yourUserID/Library/Preferences/WorkingWithFiles/Local Store/testDir
Reading and Writing to Files
After finding a file, you may want to work with it. Example 9-2, which lists the source
code of the application WorkingWithFiles, illustrates the reading, writing, and deleting
of the file with the hardcoded name MyTextFile.txtFigure 9-7 shows the results. The
user can type any text in the box on the left, click the button “Write asynchronously,”
and the file myTextFile.txt will be saved in the directory testDir. Clicking the button
“Read synchronously” will read this file into the text box on the right.
Figure 9-7. Reading/writing into files
If the user clicks the “delete file” button and then clicks “Read synchronously,” the
application will try to read MyTextFile.txt and display the error message shown in
Figure 9-8.
Example 9-2 contains the source code of the WorkingWithFiles application. For illus-
tration purposes, it includes both asynchronous and synchronous modes for file I/O
operations performed by the methods of the class 
FileStream
; the stream is opened
452 | | Chapter 9: Working with Adobe AIR
JPG to GIF Converter | Convert JPEG to GIF, Convert GIF to JPG
Converter. Convert JPEG (JPG) Images to, from GIF Images on Windows. JPEG to GIF Converter can directly convert GIF files to JPG files.
convert multipage pdf to jpg; changing pdf file to jpg
either by 
openAsync()
or 
open()
, respectively. The functions 
writeFile()
readFile()
,
and 
deleteFile()
use 
try/catch
blocks to report I/O errors, if there are any. Don’t forget
to close opened streams as is done in the 
finally
clause.
Figure 9-8. I/O Error message
Example 9-2. WorkingWithFiles.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" width="530"  fontSize="16">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import flash.filesystem.File;
import flash.filesystem.FileStream;
var myDir:File=new File("app-storage:/testDir")
var myFile:File = myDir.resolvePath("MyTextFile.txt");
var myFileStream4Write: FileStream = new FileStream();
var myFileStream4Read: FileStream = new FileStream();
private function writeFile():void{
if (!myDir.exists){
myDir.createDirectory();
}
Working with Files s | | 453
try {
myFileStream4Write.openAsync(myFile,FileMode.WRITE);
} catch(error:IOError){
Alert.show("Writing to file failed:" + error.message);
} finally {
myFileStream4Write.close();
}
}
private function completeHandler (event:Event):void{
Alert.show("File MyFile.txt has been written successfully");
}
private function  readFile():void{
try {
myFileStream4Read.open(myFile,FileMode.READ);
textRead.text=
myFileStream4Read.readMultiByte(
} catch(error:IOError){
} finally {
myFileStream4Read.close();
}
}
private function deleteFile():void{
try{
myFile.deleteFile();
} catch(error:IOError){
}
}
]]>
</mx:Script>
fontWeight="bold" width="508" height="48" />
<mx:TextArea id="textToWrite" x="10" y="10" height="201" width="239"
borderStyle="inset"/>
<mx:TextArea id="textRead" x="279" y="10" height="201" width="239"
borderStyle="inset"/>
</mx:WindowedApplication>
454 | | Chapter 9: Working with Adobe AIR
Working with Local Databases
Flex applications can save data on local filesystems using the class 
SharedObject
. This
is a useful feature for storing user preferences or serializing other memory objects on
the disk. The API for working with 
SharedObject
allows the application to write an
instance of the object to disk and re-create the instance afterward, on the next run.
AIR offers a more sophisticated API, as it comes with an embedded relational DBMS
called SQLite. The application can create and work with the data using SQL syntax on
the user’s machine. Such data is often referred as a local cache. The data stored in the
local cache can be encrypted, if needed. You can see it in action in a sample Sales-
builder application at http://tinyurl.com/bbq4dj.
There are three main uses of the local cache:
• Create an independent desktop application with its own local database.
• Allow the AIR application to remain operational even when there is no network
connection. In this case, a local database may have a number of tables (i.e., Cus-
tomers and Orders) that will be synchronized with the central database as soon as
the network connection becomes available.
• Offload large chunks of intermediate application data to lower memory utilization.
A SQLite database is stored in a single file, and an understanding of the basics of the
File API covered in the previous section is helpful.
Creating a database file
To create a new SQLite database, you need to pass an instance of the 
File
object to the
class 
flash.data.SQLConnection
. The latter can open the connection to the given 
File
instance in either synchronous or asynchronous modes (similar to performing I/O with
files). If the physical file does not exist, it’ll be created; otherwise, the 
SQLConnection
object will just open the database file.
If you open the connection in synchronous mode, do it inside the 
try/catch
block to
perform error processing if something goes wrong (Example 9-3).
Example 9-3. Connecting to the local database
var connection:SQLConnection = new SQLConnection();
try{
connection.open(dbFile);
} catch(err:SQLError){
Alert.show(err.details,
"Can't connect to the local database");
}
Working with Files s | | 455
The function 
open()
can be used with a number of arguments, and one of them can
specify an encryption key, which will be used for encrypting data in the specified da-
tabase file.
In the case of an asynchronous connection, you’ll add 
SQLEvent.OPEN
and
SQLEvent.ERROR
listeners and write the success and error processing code in separate
event handlers.
Although using a synchronous connection prevents the user from working with the UI
until the database operation completes, this mode allows you to program several op-
erations as one transaction that can be either committed or rolled back in its entirety:
try{
connection.begin();
// several SQL statements can go here
connection.commit();
} catch(err:SQLError){
connection.rollback()
...
 finally  {
connection.close()
}
To create a table or execute any other SQL statements, you need to create an instance
of the 
SQLStatement
object, assign a SQL statement to its property text, pass it an in-
stance of an opened 
SQLConnection
, and call the function 
execute
. For instance, Exam-
ple 9-4 creates a table called visit_schedule; for illustration purposes, the code uses an
asynchronous mode with event listeners.
Example 9-4. Creating a table in the local database
var ddl: SQLStatement = new SQLStatement();
ddl.sqlConnection=connection;
ddl.text="CREATE  TABLE IF NOT EXISTS visit_schedule (" +
"id INTEGER PRIMARY KEY AUTOINCREMENT,"+
"salesman_id INTEGER,"+
"address_id INTEGER,"+
"scheduled_date DATE ) ";
ddl.addEventListener(SQLEvent.RESULT, onTableCreated);
ddl.addEventListener(SQLErrorEvent.ERROR, onSQLFault);
try{
ddl.execute();
} catch(err:SQLError){
Alert.show(err.details,"Can't create table visit_schedule");
}
private function onTableCreated(event:SQLEvent):void{
Alert.show("Table visits created", "Success");
}
private function onSQLFault(event:SQLEvent):void{
Alert.show("SQL failed: ");
}
456 | | Chapter 9: Working with Adobe AIR
Documents you may be interested
Documents you may be interested