pdfsharp asp.net mvc example : Bulk pdf to jpg converter software SDK cloud windows .net wpf class iPhoneInAction10-part1703

76
C
HAPTER
Advanced WebKit and textual web apps
C
—either 0, 90, or –90. This modifies the 
orAnnounce <span>
, which is set to the 
starting value at startup 
D
. Changing a 
CSS
file or some other minor element would 
be equally easy. If you’d like to see a more attractive, graphical version of this, we 
point you toward the first example of chapter 7, where we use Dashcode to create a 
more attractive orientation reporter.
If you wanted to, you could do even more than some simple outputs or 
CSS
changes. 
The authors maintain a sample chat program at http://www.iphonewebdev.com/chat/ 
that totally redesigns itself. In portrait mode it shows only a chat window, but in land-
scape mode it also shows a list of users online. You can see a bit less of the conversation 
in landscape mode, but what’s there is equally readable thanks to the increased width 
of the screen.
Alternatively, you could use an orientation change as a standard user-input device. 
A drum machine, for example, could offer a beat whenever the phone is rotated.
The orientation event is the last major WebKit element at the time of this writing. 
There’s also some neat upcoming stuff that we want to highlight, since it may be avail-
able by the time this book sees publication.
4.7
Upcoming features: CSS gradients and masks
The WebKit is constantly growing, and in upcoming years you’ll be able to build an 
increasing number of great features into your iPhone web pages that won’t be avail-
able to non-WebKit browsers. It can sometimes take a while for new features to make it 
from the WebKit “nightly builds” into an actual release from Apple, however. 
This is the case with two interesting new graphical features that were announced in 
April 2008: gradients and masks. We have faith that both of these new 
CSS
properties 
will soon be available in Safari and on the iPhone, but as of this writing they’re not yet 
available. Therefore, we’re just going to cover them in passing, with no guarantees 
that the properties will be quite the same when they actually appear.
If you’d like to use either of these properties, you should check on the internet to 
see if they’ve yet made it into an Apple build, and if they’ve changed any since the 
early documents that we’ve referenced (which come from http://webkit.org/blog, 
the top resource for information on new and upcoming WebKit features).
4.7.1
CSS gradients
CSS
gradients will give you the opportunity to embed blended colors on your web 
page. This feature should be particularly useful on the iPhone, since gradients are 
already a part of the look and feel of iPhone home page icons, and will make individ-
ual programs feel more like native iPhone programs.
The Surfin’ Safari WebKit blog states that gradients will use the following syntax:
-webkit-gradient(<type>, <point> [, <radius>]?, <point> [, <radius>]? [, 
<stop>]*)
The type might be 
linear
or 
radial
, while the points define the two edges of the gra-
dient. Color stops then define where colors change, with each stop including a value 
from 0 to 1 and a color.
Licensed to Nick Wood <nwood888@yahoo.com>
Convert pdf document 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 file; convert pdf file to jpg file
Convert pdf document 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
.pdf to jpg converter online; best pdf to jpg converter online
77
Upcoming features: CSS gradients and masks
These gradients can currently be applied to 
background-image
border-image
list-style-image
, and 
content
properties.
The Surfin’ Safari blog also offers the following example of how a linear gradient 
should work:
.linear { 
background: -webkit-gradient(linear, left top, left bottom, 
from(#00abeb), to(#fff), color-stop(0.5, #fff), 
color-stop(0.5, #66cc00));
}
This particular example uses lots of shorthand to make gradients simpler. For example, 
the phrases 
left top
and 
left bottom
are shorthand for the endpoints of the gradient, 
and 
from
and 
to
are shorthand for color stops that use those same endpoints.
4.7.2
CSS masks
A mask is a black-and-white shape that you use to show only part of an image. In a 
mask, alpha values of 0 show nothing; alpha values of 1 display the image content. In 
other words, it’s a way to clip an image. 
WebKit masks can be used in a variety of ways. The properties: 
can all be used to mask an underlying image in different ways.
-webkit-mask-image
should provide the simplest masking:
<img src="yourimage.png" style="-webkit-mask-image: url(yourmask.png)">
-webkit-mask-box-image
can provide some interesting border masking, if used 
correctly:
<img src="yourpic.png" style="-webkit-mask-box-image: url(anothermask.png) 
75 stretch;">
Again, since this functionality has not yet made it into Apple builds, check online to 
find out how and when this functionality can be used.
4.7.3
The Canvas alternative
Although we can’t yet fully document these new features, we wanted to point them out 
as things that you should keep an eye on, because they should soon be available. 
Because we can’t predict when the features will become available in Safari, though, 
we’ll mention one alternative for these functions: Canvas.
We’ll be talking about Canvas in chapter 6. It’s a vector-based graphic design pro-
gram that can be used on a variety of browsers, including Safari and mobile Safari. 
Among Canvas’s features are gradients (which work almost identically to the gradients 
in the WebKit) and masks (which you create by drawing the masking paths by hand). 
If you must use gradients or masks in your iPhone web app, and mobile Safari doesn’t 
yet include them, consider Canvas as an alternative.
–webkit-mask
-webkit-mask-attachment
-webkit-mask-clip
-webkit-mask-origin
-webkit-mask-image
-webkit-mask-repeat
-webkit-mask-composite
–webkit-mask-box-image
Licensed to Nick Wood <nwood888@yahoo.com>
Online Convert PDF to Jpeg images. Best free online PDF JPEG
to make it as easy as possible to convert your PDF Your PDF and JPG files will be deleted from our XDoc.PDF for .NET) supports converting PDF document to JPEG
convert from pdf to jpg; pdf to jpg converter
Online Convert Jpeg to PDF file. Best free online export Jpg image
So, feel free to convert them too with our Download and try RasterEdge.XDoc.PDF for .NET with RasterEdge.com is professional provider of document, content and
bulk pdf to jpg converter online; convert pdf to jpg file
78
C
HAPTER
Advanced WebKit and textual web apps
The downside will be that you can’t integrate Canvas into a web page in quite the 
same way you can 
CSS
. It’s a separate element, built around the 
<canvas>
tag, rather 
than a 
CSS
property, which means you’ll need to use some layered positioning or 
something similar to work it into your web page. However, if you need the functional-
ity, then at least you have an alternative that will give you access to it.
4.8
Summary
The WebKit represents some of the quickest changing technology available for web 
development on any platform. It’s the basis for the iPhone’s Safari, and that means 
that you can expect web development on the iPhone to become an increasingly good 
option as time goes on, further adjusting the balance of development choices that we 
discussed in chapter 2. The fact that we couldn’t fully document some of its features 
just emphasizes how quickly things are changing.
As an iPhone developer, you’ll probably be most excited by the iPhone-specific fea-
tures that have been implemented. The touch and orientation event handlers provide 
Lessons for SDK developers
Engineers at Apple have been leading the charge in the design of the WebKit. It’s here 
that we really start to see commonalities between WebKit and SDK development pat-
terns. Sometimes they’re close enough to help you bridge the gap between the two 
styles of programming, and other times they’re far enough apart to cause confusion.
Database programming based on SQLite is the first feature that we’ll see repeated 
in the SDK. Whereas the WebKit’s abstraction for the database is already advanced, 
cleanly breaking out responses from input, the SDK still depends on SQLite’s native 
API; as a result, if anything, database programming is easier in the WebKit than in 
the SDK at the time of this writing. The SDK’s SQLite is covered in chapter 16.
The WebKit’s touch event handling is another element that we’ll see closely mirrored 
in the SDK. Both use the same architecture of calling handlers when touches start, 
change, or end. They group touches into events in slightly different ways: in particular, 
the fact that a 
touchend
event contains no touches in the WebKit will confuse a SDK 
programmer, since under the SDK an event will always contain the touches that trig-
gered it. The WebKit’s gesture abstraction saves programmers some time; it’s not 
available in the SDK, though SDK programmers will discover that they have access 
to a lot more information about how and when gestures occur. 
Despite these subtle differences, the big picture stays the same and will help pro-
grammers model similar user inputs in both web and native apps. The SDK’s event 
handlers are discussed in chapter 14.
We’ll see Apple programming patterns and methods two more times in the web part 
of the book: in chapter 6, when we look at Apple’s Canvas library, and in chapter 7, 
when we investigate their Dashcode developmental platform.
Licensed to Nick Wood <nwood888@yahoo.com>
C# Image Convert: How to Convert Adobe PDF to Jpeg, Png, Bmp, &
Adobe PDF document can be easily loaded into your C#.NET project and converted to C:\input.pdf"; String outputFilePath = @"C:\output.jpg"; // Convert PDF to jpg
change pdf to jpg on; .net pdf to jpg
C# Image Convert: How to Convert MS PowerPoint to Jpeg, Png, Bmp
RasterEdge.XDoc.PDF.dll. C:\input.pptx"; String outputDirectory = @"C:\output\"; // Convert PowerPoint to The second is for converting PPT document to Png image
convert pdf photo to jpg; change file from pdf to jpg on
79
Summary
direct access to some of the unique iPhone features that we’ve highlighted in this 
chapter. Some of the “normal” WebKit features are pretty great too. We think you 
should particularly consider how transitions and the built-in JavaScript database can 
change the way you program web pages.
When you’re building iPhone web apps with the WebKit features, you’re still very 
much building text-based web-centric applications. That’s not the only way to build 
iPhone web apps. As you’ll see over the next two chapters, there are two other models 
that you can use for your web app designs. Next up are iPhone-
UI
web apps, which 
look just like iPhone-native apps.
Licensed to Nick Wood <nwood888@yahoo.com>
C# Create PDF from images Library to convert Jpeg, png images to
C# Example: Convert More than Two Type Images to example shows how to build a PDF document with three new Bitmap(Program.RootPath + "\\" 1.jpg")); images.Add
convert pdf file to jpg format; best convert pdf to jpg
VB.NET PDF Convert to Images SDK: Convert PDF to png, gif images
Convert PDF to Jpg, Png, Bmp, Gif, Tiff and Bitmap in ASP.NET. Sometimes, to convert PDF document into BMP, GIF, JPEG and PNG raster images in Visual Basic .NET
convert pdf to jpg batch; convert pdf document to jpg
80
Using iUI for web apps
Creating web apps with the WebKit gives you a lot of power and allows for a lot of 
diversity. But it doesn’t address a real concern: what if you want to create web apps 
that have the same look and feel as native applications on the iPhone?
The reasons for doing so are obvious. You can take advantage of lessons that 
users have already learned by using Apple’s standard iPhone user interfaces. The 
question of how to do so, however, is slightly more complex.
Certainly you could do so using the WebKit’s extensions atop 
HTML
, and we’re 
going to give you the opportunity to do so here by dissecting what makes up the 
iPhone interface. Unless you have specific needs, however, creating your own inter-
face is probably overkill.
Fortunately, we have another solution to this problem: a third-party library 
exists that you can use to model the iPhone interface. It’s called i
UI
, and it’ll be the 
focus of much of this chapter. But before we get into i
UI
, let’s see what the iPhone 
interface looks like.
This chapter covers
Outlining iPhone web app paradigms
Using iUI to make web apps
Applying tips and tricks to iUI apps
Licensed to Nick Wood <nwood888@yahoo.com>
C# WPF PDF Viewer SDK to convert and export PDF document to other
document. 2. To TIFF. Export PDF to TIFF file format. 3. To TXT. Export and convert PDF to TXT file. 4. To Image. Convert PDF to image formats, such as PNG, JPG
c# pdf to jpg; convert pdf to jpg for
C# TIFF: C#.NET Code to Convert JPEG Images to TIFF
jpg", @"C:\demo2.jpg", @"C:\demo3.jpg" }; // Construct List new Exception("Fail to construct TIFF Document"); // Step3: Other Use C# Code to Convert Png to Tiff.
change pdf to jpg on; c# convert pdf to jpg
81
Creating your own iPhone UI
5.1
Creating your own iPhone UI
The iPhone 
UI
has quite a few 
unique (and distinctive) features. 
If you want to model its 
UI
inside a 
web app, you must consider all of 
them. We’ll provide some guid-
ance by highlighting the most im-
portant 
UI
features in this section.
We’ll start out by looking at the 
iPhone’s graphic interface, but 
the 
UI
goes far beyond that. The 
iPhone’s 
UI
also depends on a 
data-driven content paradigm and 
the usage of those unique design 
choices that we highlighted back 
in chapter 1.
5.1.1
The graphical interface
As shown in figure 5.1, the stan-
dard look of an iPhone applica-
tion is quite distinctive, and thus 
can be easily modeled in your own 
web pages.
What follows are a number of simple guidelines that suggest how to easily model 
the iPhone’s graphical interface. 
Match the look and feel —When you’re building your own iPhone-
UI
web apps, the 
best thing you can do is match the general look and feel of the built-in iPhone pro-
grams. This ap-proach has two benefits. First, it gives your users a leg up on using 
your program, because they’re already familiar with the interface. Second, it takes 
advantage of the work that Apple programmers have already done to figure out 
what works on the iPhone. The downside is that there isn’t a totally consistent 
interface on all the iPhone applications, a rarity for Apple. The core iPhone pro-
grams—the iPod, Mail, and the various phone accessories—do the best job of pre-
senting a consistent 
UI
, but some of the other programs look slightly different. 
You’ll ultimately need to decide how much of the look and feel you want to 
model, and how much you want to change it to match your own site’s branding, 
a topic we’ll return to toward the end of this chapter.
Use chrome —It’s most important to match the iPhone’s chrome. Put navigation 
and control bars to the top and the bottom of your App’s web pages. You might 
want to match the iPhone’s gray coloring, or you might want to match the col-
ors of the rest of your site.
Action Button
Back Button
Chrome
Separated
Choices
Figure 5.1 The iPhone has a unique look and feel 
that should be emulated in iPhone web apps.
Licensed to Nick Wood <nwood888@yahoo.com>
82
C
HAPTER
Using iUI for web apps
Put action buttons in your chrome —In the chrome, it’s not just the navigation 
that’s important, but the action buttons as well. For example, several applica-
tions put a “+” action in their chrome to generate new content. Safari also 
includes search and bookmark actions.
Create sliding menus —Menus of options should typically be display on subpages, 
not as a part of your web app’s main display. You might click an action button to 
pop up a menu. Alternatively, a list of options that fills the screen might each 
have a > symbol that leads to its own subpage, as with the iPod’s “more” pages. 
Though we call these sliding menus, for the way they animate on the iPhone, you 
probably won’t mimic that aspect in your web app (unless you use i
UI
).
Include back buttons —Whenever you slide in a subpage, make sure there’s an 
explicit, labeled button that will bring you back to the page that you left from. 
Note that the iPhone creates a history stack that could be several levels deep. No 
matter how deep you go in the structure, you can always return to the top level 
with back buttons. This is a topic that we’ll return to a few times in this chapter.
Separate your choices—Whenever you have a list of options, make sure they’re 
widely separated. The iPhone always includes both spaces and rules between 
options, giving “fat fingers” plenty of room to fit in.
Use the viewport —If you’re creating a web app specifically for the iPhone, you no 
longer have to worry about creating a full-sized web page that will look good 
elsewhere. Either set your viewport to 480, or (if you want to be fancy) use 
either the device-width feature or vary your viewport based on orientation.
Don’t be afraid to turn off zooming —Don’t be afraid to set 
minimum-scale
and 
maximum-scale
to 1 in your 
viewport
metatag. After all, if you’ve designed a 
page specifically for the iPhone, there should be no reason for users to mess 
with it.
About views
iPhone programs often include multiple pages of information that are all part of the 
same application. Apple calls these individual pages of content views (though the 
term is also used to refer to individual objects, or subviews, within a page). 
Many web apps will be built using the same concept, allowing pages to call up other 
pages using tab bars, navigational controllers, and other means. As you’ll see, the 
view model is well supported by various tools that you might use when creating 
iPhone web apps. iUI (which we’ll discuss in this chapter) supports it as part of its 
navigational methods, and Dashcode (which we’ll talk about in the next chapter) sup-
ports it using a 
stackLayout
object.
We’ll see even more complex view hierarchies when we begin using the SDK, which 
is the ultimate model that these other libraries are imitating.
Licensed to Nick Wood <nwood888@yahoo.com>
83
Creating your own iPhone UI
This advice is crucial for putting together an iPhone-
UI
web app, but it’s also primarily 
visual. When creating iPhone web apps, it’s important to think about the base para-
digm that underlies your web development. 
5.1.2
The iPhone data paradigm
We’ve already talked quite a bit about how the iPhone is technically different from 
last-generation mobile phones. We also believe that a core difference exists in the 
methods that people use to access information on the iPhone.
The desktop internet centers on the paradigm of browsing. Although users will 
sometimes go to a specific page for certain information, a lot of internet usage instead 
centers around idle viewing of interesting sites. Because browsing is so important, 
desktop-centric websites often center on immediately dumping unsorted piles of con-
tent on users, hoping to draw them further down into a site.
We believe that these priorities are reversed on the iPhone. You are less likely to 
attract casual browsers and more likely to attract users who already know what your 
site is and are visiting it to retrieve specific information. This more data-centric view of 
web usage has already been verified by the huge jumps that Google saw in iPhone 
searches. Likewise, some of our sample sites already reflect this paradigm, such as 
Facebook, which removed most of the information from their iPhone login page.
In other words, it’s all about the data.
When you’re building your iPhone-
UI
web apps, think about how the iPhone itself 
organizes data and try to mimic that. That means using trees of lists. Take a look at the 
iPod button on your iPhone if this concept isn’t immediately clear. When you push it, 
notice that you get no textual descriptions, just a set of options. When you click Com-
posers, you get another list of options. You can dig down from there to a list of songs, 
and then you can finally listen to a song.
A similar model for your web app will omit most of your website’s text and replace 
it with the core of your data, easily accessible via sliding menus. It’s a pretty big para-
digm change, and you may initially feel resistant to it, but we feel that it’ll give you best 
results, because it’s what iPhone users are used to and want.
5.1.3
Other iPhone design elements
Beyond the display 
UI
and the data paradigm, you should also think about the 
iPhone’s six unique design elements when creating any web app interface.
The always-on internet is a great benefit because it’s easy for you to access online 
pages and data. But your users may sometimes be accessing your pages via a 
slower web connection, thanks to 
EDGE
. This all suggests Ajax as a great tool for 
any web app usage because it requires constant access, but at the same time 
allows redrawing of pages in bits and pieces. When thinking about an always-on 
internet, also consider the methodology that Apple uses in native apps like 
Mail. These programs only load small sets of data—such as 25 messages at a 
time—waiting to load more until you request it.
Licensed to Nick Wood <nwood888@yahoo.com>
84
C
HAPTER
Using iUI for web apps
Power consciousness won’t be a huge issue in your web app work, because you’ll 
be limited to what you can do by Safari. But you shouldn’t include JavaScript 
events that will constantly poll the internet or keep Safari active.
Location awareness can’t be accessed from a web app. 
Orientation awareness is a topic we covered in chapter 4, when looking at the 
WebKit.
Input was also covered in chapter 4. If you want, you can continue to use the 
WebKit’s orientation and gesture support as part of your iPhone-
UI
web apps.
Output is the last of the design elements. One of the cool things about the 
iPhone’s 
something you might want to omit in an iPhone-
UI
web app.
By now you might have some great ideas for how to turn your website into an iPhone web 
app, but the idea of coding everything to look like and work like the iPhone can seem 
daunting. Unlike our discussions of Canvas and the WebKit, there isn’t an Apple library 
that we can point you to (though one is in process, from what we hear). But if you don’t 
mind using third-party libraries, you can use a free software package called i
UI
5.2
Getting ready for iUI
i
UI
is a library of JavaScript and 
CSS
that is intended to mimic the look and feel of the 
iPhone in web pages. In other words, it’s precisely what you need to make an iPhone-
UI
web app of the sort that we’ve been describing. Software engineer Joe Hewitt, the 
author of i
UI
, said the following about it in his initial blog posting on the topic:
First and foremost, i
UI
is not meant as a “JavaScript library.” Its goal is to turn 
ordinary standards-based 
HTML
into a polished, usable interface that meets the 
high standards set by Apple’s own native iPhone apps. As much as possible, i
UI
maps common 
HTML
idioms to iPhone interface conventions. For example, the 
<ul> and <li> tags are used to create hierarchical side-scrolling navigation. 
Ordinary <a> links load with a sliding animation while keeping you on the original 
page instead of loading an entirely new one. A simple set of 
CSS
classes can be used 
to designate things like modal dialogs, preference panels, and on/off switches.
Let me re-emphasize that all of this is done without the need for you to write any 
JavaScript. It is meant to feel as though 
HTML
was the iPhone’s own 
UI
language.
http://www.joehewitt.com/blog/introducing_iui.php (July 11, 2007)
Thus, not only can you expect i
UI
to model the iPhone for your web app, but you can 
also expect it to be easy to use.
i
UI
is a community project that is offered for your free usage. At the time of this 
writing, there are two versions of the code. The officially released code is probably 
what you want to use for any live website, but you can also go to the current 
SVN
repos-
itory for the rawest, most up-to-date code. Table 5.1 lists the current places that you 
can access the code.
Licensed to Nick Wood <nwood888@yahoo.com>
85
Developing with iUI
Once you’ve downloaded i
UI
, you need to place the iui directory in a standard library 
location for your website so that you can load JavaScript and 
CSS
files from it. Of 
course, if you’re using i
UI
in any corporate environment, you’ll also want to look at 
LICENSE
.txt to make sure that it meets the requirements of your company. Fortu-
nately, i
UI
’s license is a permissive new 
BSD
license that places few restrictions on what 
you can do with the software.
Barring problems, you should now be ready to start programming a web app in 
i
UI
. But we’ll offer one last disclaimer before we talk about that: author Christopher 
Allen is currently one of the three owners of i
UI
, along with Joe Hewitt and Sean Gilli-
gan. Naturally, this makes us biased toward i
UI
. But we wouldn’t be supporting it if we 
didn’t think it was a superb product for creating iPhone-specific web pages. We’re 
pretty sure you’ll agree too.
5.3
Developing with iUI
Once you’ve got i
UI
installed, you can include it in your code by referencing i
UI
’s 
JavaScript and 
CSS
files. Listing 5.1 shows a typical i
UI
header, placed in the 
<head>
section of your 
HTML
file. This is the beginning of a color-selector application that 
we’re going to develop over the next couple of examples; it will allow you to look up 
your favorite shades of red (and other colors if you want to extend the example on 
your own).
<meta name="viewport" content="width=device-width; initial-scale=1.0; 
maximum-scale=1.0; user-scalable=0;">
<style type="text/css" media="screen">@import "iui/iui.css";</style>
<script type="application/x-javascript" src="iui/iui.js"></script>
Note that besides the standard include statements for the style and the script, you’ll 
also set a viewport, following the suggestions we offered earlier for iPhone-
UI
web 
apps. This viewport is set to the iPhone screen width and also keeps users from scaling 
the window.
From here you can start building an application using the i
UI
classes. Table 5.2 
shows all the major classes that you’ll be encountering. We’ll return to each of them in 
turn as we build up our color selector.
We
we’re now ready to dive into, beginning with the all-important i
UI
toolbar.
Code type
Location
Release Bundle
http://code.google.com/p/iui/
Subversion Repository
http://iui.googlecode.com/svn/trunk/
Listing 5.1 The headers for an iUI page
Table 5.1 iUI can be  
freely downloaded from the 
internet, either in its officially 
released form or via a 
Subversion repository.
Licensed to Nick Wood <nwood888@yahoo.com>
Documents you may be interested
Documents you may be interested