WWDC2000 Session 111
Transcript
Kind: captions
Language: en
welcome to the first of two printing
sessions printing on Mac OS 10 in an
advanced printing on back was tense
afternoon printing is very very vital
part of any operating system because you
can have the fanciest graphics and have
the greatest programming language and
frameworks there but it don't mean squat
if the customers can't get their results
out on paper it must look good too in
fact actually it was the combination of
back in the early days of the Macintosh
the combination of the Adobe PostScript
aldus pagemaker in the Macintosh that
really has really kicked off the desktop
publishing revolution we need to
continue forward and making printing
easier for both the customers and easier
for printer driver developers and easier
for application developers to implement
and we think we're taking a good law
we're taking a good stride towards that
goal with the release of Mac OS 10 and
the tioga printing architecture so to
talk about the printing architecture
from both an application and in a driver
point of view and to go over the
architecture overall this morning I'd
like to introduce Paul Danville the
managers of print group at Apple
Computer
[Applause]
I've been quite a few years since Apple
had to pruning sessions of this
conference so what we're going to do in
this one we're really going to be
talking about what you can and should be
doing with all the latest pudding a POS
and we're covering a couple of new
topics one document mobile printing
which you'll see in a moment and
displaying a print dialog the sheets and
a better way of extending the print
dialog for both application developers
and print driver developers down takers
halfway through the session and then
we're going to talk specifically about
Mac OS and printing I'll take you
through the architecture which hasn't
changed a lot since last year and I'll
be exploding what's in DP for and what
to expect in future releases of the OS
so is this a situation where carbon
printing our mac OS 8 and 9 for those of
you who are carbonizing applications
your application is up there as you can
see you may have your hand crafted
printing code or you may be using a
carbon power plant or carbon maca hey
you're using the api's in in the carbon
printing manager which is sort of carbon
live on eight and nine and the way to
think about it is that the calvin
printing manager in that environment is
just a little bridge between you and the
classic interface to print drivers and
print drivers do most of the work the
situation hasn't changed there they they
have to choose a pack the printer
discovery they do the page setup and
print dialog they turn quick draw into
whatever page description language the
printer support they talk to the printer
etc they handle foreground and
background printing so carbon printing
on eight and nine is no different really
than it into the classic printing system
indices the codes that we provided the
thin bridge there's a chooser and
there's print monitor or desktop renting
for schooling
one of the things if you've looked at
carbon printing on in carbon lives and
hopefully many of you have you'll see
that the header files actually theres
two now taught sorry actually contain a
lot of AP is about six times as many as
in the original printing dot H file and
one of the things I'm going to try to do
is in this session is explained why
we've got so many AP is one of the
reasons the obvious one is to be cleaned
up a lot of things so you now have
access to functions to what we call the
page format and print settings objects
which replaced the old print records
which you use to access directly we have
convenience utilities or functions to
get a synthetic comments and to do PR
general type functions but we since last
year we've introduced the parallel set
of api's which account for almost half
the api's in those headers which take a
print session arguments and we'll be
talking about why we've done as although
I've introduced all those extra AP is as
we get into this session so Calvin
printing manager as I said is a bridge
to the classic printing interface the
drivers will do most of the work
swelling for moments on the third solid
item here what we've done in carbon
printing is provided some API to allow
you to do things like gas and set the
page orientation the page size of
scaling etc his lot of applications
actually have a good reason for wanting
to to find out what's in the print
record and maybe even insulated it
certainly isn't for all applications and
we had to find a reliable way of
implementing those AP is the issue is
that different drivers or their settings
in different parts of the print record
then codes the settings differently so a
year ago I said we were going to take
care of this and relieve you of the
chore of writing a lot of special case
code to deal with different printers and
I thought we were going to do this
programmatically but we've changed us
tack here and
last year we started to work on a
database that we're putting into calvin
live and that database will contain for
a large number of drivers as we can find
information basically offsets and
encoding information so that when you
call p.m. that orientation for example
or set scales that color mode or
whatever we will be able to execute that
reliably because the printer vendors
that provided us with the information so
that we know where those print drivers
all the information in the print record
that the work in progress that we're
fairly confident that it's a better
solution than the programmatic one and
if you happen to be running your carbon
application on the print driver and it
doesn't behave correctly when you call
some of these goals you should let us
know so here's your same application
running on 10 cause you could be a Coco
application as well as the carbon
applications everybody calls you to the
same singeing API underneath Jose piz
source is a very different
implementation and that implementation
is inside the printing framework there's
actually to explain that in the moment
and they're covered by the carbon
umbrella framework was significantly
different is that as opposed to print
drivers serving up the print dialog for
example and generating their school
files and doing all that hard work we're
doing a lot of that now in the system so
we provide the page setup and print
dialog we generate the spool file we
send the print job to the print server
which is a separate process and the
print server of whenever a job is DQ to
a particular printer invokes with plenty
of manager which is another process
which communicates with or coordinate
these plugins over on your right to
process the print job which could be in
the form of a PDF full file or a quick
tour spool file etc an apple provides
most of the courtesy of the conversion
all of the left of the old print drivers
is this module article the printer
module which does all the device
specific work it knows how to talk to
the printer in terms of the page
description language the i/o module
we've separated out from the printing
system so that we can share you sdio
path LTR different types of print
protocols among multiple print drivers
and the lobster is asking to mention on
this slide is Princeton to the
application replaces the chooser
replaces sets of printing it provides
the UI for discovering printers for
setting up and managing queues and it's
actually loads these modules called
print browser modules to do connection
specific printer discovery like finding
printers over an affable network with
MVP or going to the net info network
database find printers that you may be
able to talk to where they'll be our
last year if you were here last year for
the printing session you had me go on
about all the job and printing API and
tempting as it is to repeat that is
easily it's better for me just to point
you to the latest documentation if you
go to this URL where most of the carbon
documentation is you'll find that all
the printing api's are pretty
comprehensively documented the
documentation was actually updated this
week so if you are working off an older
version you should download the latest
and you'll find in there pretty
comprehensive explanation all the
concepts behind carbon printing all the
functions all the types etc and so
instead of talking about the AP is what
I'm going to do is invite Alan back from
the printing team to come up and show
you them in action show you printing on
10 today
[Applause]
there we go so basically what i'm
perfect i'm going to show you is print
center app it's like Paul said it's a
replacement for both chooser and the
desktop print monitor or desktop
printing stuff we had basically right
now we go up if you can see here we
don't have any printers in our work set
so basically I want to go and browse for
some printers so basically firstly I'll
go see if I can find in UFC printers
here's a epson USB printer connected to
the demo machine here I'm just going to
add that to our work set and thus you
can find another one flip the appletalk
and see what do we have here we have a
couple of days yet 4500 and I'm just
going to go ahead and add that to the
work set and let's close this so here
basically use my work sets leg leaves as
desktop printers that's just can do the
same thing that you can before go up to
the printers menu you can actually go to
the queue you can stop the queue let's
quit and stop this Q and the squad and
make that one our default printer you
can see your default printer shows up
here you can see right now we're using
the old icons would be great as for the
printer module developers to create
these wonderful new hundred twenty eight
bits wonderful icons to impress impress
our users so let's go ahead and close
that then quit out a print center that
we have all the pender set up and let's
just go down into simple text and here
you can see normal simple text back in
it dancing new picture shown and let's
just go ahead and bring up page setup
okay here's a page setup dialog you can
see it takes off of the panel base you I
of laserwriter eight one thing we should
notice is it is a movable modal dialog
now
you can basically select paper size of
any papers at the printer support we
have orientation you know portrait
landscape we're also providing a button
for reverse landscape and as well as
scaling so let's go ahead and do that
actually one last thing here is like you
can format for the your different
printers like here we're safe dirt it
comes out their default printer so if
you just consider and go buy it back to
the USB printer or you can select other
and it'll launch print center and you'll
be able to add more printers to your
work set this popup menu only shows that
turns that you've added to your work set
then let's go ahead and bring up the
print dialog here again it's you can
basically have you can say what you want
to print to here again with the same
papas the page setup this is that the
actual printed you're going to print two
three we're going to stay to the
laserjet all the next item down here is
save settings this is what we expect
most users to be doing basically it's a
save settings of all the settings that
are down in the that the user has set
printer driver printer module developers
will come up with their own and they
will be shown here like yeah like photo
glossy normal color normal black and
white and the user will be able to save
different sets you can see here they'll
be able to come down here and save what
the current settings are into a into
you'll be saved for them and then those
settings will come will show up in this
pop up as well so we don't expect many
users to be actually navigating the
pains and setting all the different
options they will be absolutely do what
they want set at once save the set and
it just basically switch between the
settings I know then we go to the pop-up
menu basically the same as some of the
old drivers copies and pages be able to
you know set these at the page range the
other thing they have is we have layout
as a standard feature for all for all
drivers so basically any
any any printer will be able to have
this really set your pages per sheet the
layout direction and what type of
borders you want the other thing we have
is this version of simple text use the
old dependable mechanism for extending
the dialog so basically you'll see there
they have their own pain and name the
name of the application here we just
added two sample one just basically
print selected text only and include
page numbers nothing we've added 40 s
ken is basically a summary a summary
pain of all the current options that the
user has selected so here's basically a
summary of what the user all the
different pains of users as selected
except for the app pain so we do not
know at this point because these the
application didn't depend it'll use
attend dental mechanism we don't know
what the user what they have set your
than API to get that fiscal back here
and just go ahead and every ever draw
every print every print dialogue has a
preview feature basically we select
preview and they'll do a preview what is
doing is saving that PDF to disk and
opening that PDF file with your
preferred what's what's your preferred
PDF viewer they set the user has set so
here we can say you can see it's there's
a document we said include page numbers
so here's the page number at the bottom
one feature of this is now that we're in
PDF or preview you can actually go to
and save this PDF file as as a document
and anywhere on your disk and use it for
you know later of later processing this
is floating quit out of this
now we're back in simple text of stamps
with print dialogue again and let's just
go ahead and actually print it and let's
quit out of this one to text we have new
version of a different version of simple
text up here let's just go ahead open up
this version a simple text and here we
have let's get two windows up and let's
go ahead and print this let's go in
charge of concepts and we can see now is
we have the print dialog as a sheet and
so basically everything is active here
layout summary all that stuff is there
sighs nice what the sheet is you can go
ahead and go over to this document and
try to print it as well so you can have
to print dialogues up at the same time
they are independent of each other so
basically I will say you know I want you
know five copies of this and sort of so
many pain of this it says five copies
here and basically you know it's not
reflected over here is just still still
says one copy so they are totally
independent of each other and you can
print the print these that you want this
version of simple text also as well as
using sheets actually use be the new
mechanism for extending the dialogue
which is through a pde extension print
dialog extension so basically here is
much more flexible to the extra flexible
for the developer you can get any number
of panes that you want you can organize
them in any way you want we will take a
so you can you can have neo multiple
panes being added for the user so that
it's not all time to cram into one
dialogue another thing nice thing about
this is you actually get the summary
presented to the user through the pde
interface
another thing that this one has is going
to hero saving want princess to the to
the ink-jet because like applicant pages
and here this printer module actually
added its own pde and where I can select
print quality and that as well as saved
in the summary you'll see that in the
summary as well okay let's go back to
put out of this oxy and see i know they
wanted to show you this is a true sheet
this print items that we can't do
anything in here but this dialogue here
is purely active if you wanted to do
that it's not the prince in her out
let's go ahead and look at this case you
can see here's the document i printed
earlier Justin pitcher they lost desktop
let's just go ahead and start this cube
let's see what happens what should be
printing the fairy members in CVS it now
says the printing and future versions
are in senator we will be displaying a
lot more users feedback to the user you
know this area up here and actually it's
the printing is Pinterest starting to
print I here at us here here's the
document that I printed so although this
afternoon we're going to go into code
level details about how that second
ocean simple sex was able to do what it
did I'm going to cover briefly the steps
you should take as an application
developer to get that level of putting
functionality and
[Music]
we'll start with well think it did three
steps the first step many of you
hopefully have done and that is to do
the carbonization of your applications
and if you started with the API that
were available back when carbon live 10
was released for example and earlier
versions of 10 will release you will
have done that work should be fairly
straightforward PR open went to PM begin
etc and your applications running on 8 9
and 10 when you do that the user
experience besides being print dialogue
is what he thought in the first version
of simple Jack we showed print dialog
with dual mogul the full mobile to the
system on age annoying and over for the
application on 10 so that seems worth
talking about and there's less little
more detail when akka came along which i
might say was after we designed the
first set of carbon printing api we
realized we were going to have to
support document model printing and we
looked at a lot of different ways in
which we could implement that and
minimize the overhead to you if you'd
already done the basic carbonization
work and after a while we realize that
the best thing to do was to interview
two parallel set of a pis and add one
new argument to that parallel set and
that argument which is a printing
session object enable us to maintain
context between one document print
sessions and another document sprint
session so although I hate said asked
anybody to go back and rework their
printing code this rework is rather
straightforward you have to be a little
careful to make sure that you're doing
the right thing but adding the switching
over to the session ati's will get you
to the point where you can have multiple
prints sessions running on on 10 because
a queer doesn't run on 8 and 9 as you're
probably well aware you're a limited to
one session on that office OS you can
use the session API to just not allowed
to create multiple printing sessions
so if you do that okay basically you've
got the ability to run to school 20
yards while another one is being
prepared so you got simple health
performance benefits but your printer
logs are still modles they're not
displayed as a sheet so you can take one
more step and that'sthat's pretty
straightforward and involves one new API
p.m. session you sheets it involved the
callback function that you have to
reference from your call to p.m. session
you sheets and when you do that
basically will display the print dialog
the sheet view and everything works like
it did in our lands demos and we would
like you to get there you know as soon
as you can but we understand it if
you've already done the first step of
getting a carbon your applications
carbonized you may want to wait until 10
is your primary focus before doing that
because you are going to do a run you
have to do a runtime checks before you
can use this API and the other thing
that Allen had in the first version of a
simple text works that he had simple
text adding a couple of controls for the
print dialog using the old a pentacle
mechanism and if you don't know what a
pentacle is you should look at
teknoaxe's 1080 I think it is there's
it's been used a long time and will
continue to support it and maintain it
on both eight nine and ten with carbon
printing is some significant limitations
I mean one of which is that especially
on eight and nine with different drivers
you don't really have a lot of control
over where your controls gets their
place and to all your controls just go
into the print dialog there's no ability
to organize them into multiple panels
and there's no way for your controls to
have any idea of what the system the
printing systems controls are doing or
what the drivers controls are doing so
the Alan mentioned we've come up with a
better mechanism we call the print
dialog extensions their plug-in that
based on CF plug-in and because they tie
in quite nicely with doc snow mobile
printing and printing dialogues of
sheets they are available only for 10
that you can use them when your print
dialog is displayed as a sheet and the
benefits are that one if you have a lot
of printing features if you want to ask
you can organize them into multiple
panels the way to think that it is that
you write one pde one plug-in per panel
you want to add to the print dialog or
to the page setup dialog so that's good
and one thing that has got incredible
repercussions essentially is that your
controls can override other controls
we've set applications install pdes
which override things that we provide is
standard in the system you can even
override controls potentially the
printer driver would server so you have
to be careful about this but if for
example your application wants to allow
users to type in page numbers or page
range in a different format than one
that we provide then you've got the
ability to do that and you won't confuse
users by providing to page range control
the other thing that we're implementing
is the mechanisms to notify your PDE
when a control in another panel has
being changed that affects you and of
course there's yet be a little careful
about doing that but it's a lot more
powerful than what we have in parts
where you might implement for example
the reverse page order control in your
entire house or in your print dialog the
driver may have done the same control
and they'll build interact with each
other in
in words of the user probably won't
appreciate if you want to know exactly
how to write PD Eve you should come to
this afternoon session so I'm not going
to go into code at this time to wrap
this up though the main message for you
is if you if you're developing a carbon
application and you've already done the
port the non session ID as if it's fine
for now you'll print on 8 9 and 10 for
the print dialog will be mobile very
soon hopefully 10 will be your primary
focus and that's the time when you
should switch over to the session API
use those and a small step beyond that
would be to display your print dialog
the sheep and if you're an application
with advanced printing needs and now's
the time to think seriously about using
the plugins instead of using the append
it'll mechanism that's pretty much it
for the first part of the sessions talk
about carbon printing API we're now
going to switch over to do a quick recap
of the printing architecture on 10 if
you here last year you've of you saw
diagrams of just like this and the good
news is that it's still a valid diagram
we haven't changed our architecture
we've tweaked a couple of API to pretty
much everything's in place which is
written a lot more code I'm going to
walk you through this fairly quickly and
the reason I'm going to do that is so
that I can point out what's in DP for
and what you can expect in the first
release of 10 and a couple of things the
ball unfortunately have to wait until
future releases of the OS there's your
application up on the top left carbon or
cocoa you're going to be linked again
while probably against the carbon
umbrella framework but you're certainly
going to be legs against the printing
frameworks which were inside there and
as I said print framework or responsible
for serving up the UI they're
responsible for generating a spool file
they even talk to print center and they
replace a lot of the functionalities an
old old style classic driver needs to do
they generate a for every time he has a
print gardens they generate the fringe
of the print job if I talked about last
year compare these two files it says
there's a spool file which by default is
is PDF
that other school file formats are
supported there's also a job ticket
which is a metadata associated with a
print job which provides a better means
for us to control printing as the job
goes down the pipeline and to separate
the PDL the page description language
from the printing settings so the next
step in the pipeline is the separate
process for the queue manager if you're
running process the property iran 10
you'll see the disk is called the print
server and it replaces print monitoring
to stop printing that you're familiar
with on 8 and 9 is responsible for
managing the queues multiple queues
multiple printers and it's designed for
a client-server architecture to support
a client sprawling a job and sending it
to a separate machine to the process but
in DP for and unfortunately in the first
relief we're only supporting local
queuing but designs there but
implementation isn't it already for us
to be able to support true client-server
printing the job managers responsible
for processing individual jobs as they
get DQ'd by the acumen jure the job
manager is responsible for page level
features for printers that don't have
their own ability to do things like
print multiple copies it takes care of
that and it coordinate three threads the
first one it's a converter in the
converter is quite as except a piece of
code and it's not just a single module
it contains codes that could read in
very small file formats and separately
codes that can generate different output
formats the mainstream print part is
when the printout crater uses the
converter to generate from a quick draw
a PDF school file and when you get down
to the server end of the system it
converted views
to convert that PDF into bitmap and the
converse is built around a lot of core
graphics technology to do that but also
in the converter is code for Tito from
laser 80 rates so for example if your
application generated a spool file that
contains PostScript we would generate an
old-style pitch with post-its all files
and by the time the converter gets the
processor job it's going to be using
laser right those read rate drive chose
to turn that into PostScript of course
simply printing to a postscript printer
the printer module is really the vestige
of the old drivers it it contains all
the printer specific code in the
printing system because of the yo it's
taken care of so much other
functionality and it's a printer module
that is responsible for knowing what are
the format printers capable of receiving
managing the printer returning status
after pipeline and aramid features of
the pipeline to the client and i'll be
talking with a bit more does printer
module in a moment the i/o module we've
mentioned a moment ago we separated i/o
from full file rendering and that sort
of thing piyo modules are shared among
various types of printers we have got
piyo modules for network protocols and
i/o modules for the direct connect
protocols like USB last but not least
you got the printed enter application
which you saw in action you I isn't
final but if it works just fine on DP
for for discovering printers setting up
cues and picking do for printers so
we're going to be extending the
functionality so it becomes a host for
printer configuration and other things
though you can expect that to evolve
between now and the first release of
change so that's pretty much the
architecture and I'm going to switch
over here to show you the target system
from the viewpoint of printer vendors or
the developers of print drivers
and a slightly different perspective
because here we're showing four types of
modules which printer vendors or driver
developers are going to create with an
SDK which we're going to be releasing
next week to be able to get their
printers working with mac OS 10 and we
have been collaborating with a lot of
printer vendors over the last year if
you're in the business and you haven't
been talking to us about your needs and
next week would be a great time to get
in touch with us let's let's talk about
printer modules so what do they do
they're quite simple actually or maybe
that's just because they're architected
cleverly they have a set of functions
that are used to tell the converter what
sort of output data they want the
converter to generate they contain
possibly code to know how to format the
data for the printer the gates of an
inkjet printer they'll be standing the
data and compressing it and inserting
engine control codes etc they also have
the smarts to handle printer status and
error messages they're called by the job
manager when a jobs being printed the
job manager will tell the printer module
to print a page or maybe printer Hall
documents and relayed status researcher
but it's a lot less work to write a
printer module and it was right the
classic driver by a long way so what
Apple's doing and what we've done for CP
force we provided the the postscript
printer module so we take care of most
of the poster printing needs we don't
have in DP for full support for PPD
files that will come later but Apple is
taking on the responsibility of
providing poster printing support in the
OS and printer vendors will be using the
SDK which I mentioned to write printer
modules to their printers we saw
different page description languages
like ppl which you've probably heard of
Escape key for epson printers Aquajet
language for canon printer
metra so we're looking to those from the
vendors to write printer modules for
those types of products print dialog
extensions you saw one in Alan's demo in
just the same way that applications
could add functionality to live page
from Fred dialogues at printer vendors
and basically printer modules can expose
their printer specific features through
these plugins so not only you have the
printing system that part of the air
we're putting up controls in the print
dialog you have applications potentially
doing it by installing their own PDE and
you have the printable printers modules
registering Darren pdu so we we're going
to do all the basic what we call
universal features in our pdso copies
and page range fall into that category
we're also alpha DP for but before we
ship the first release going to add
these plugins to support PPD features
poster printers and we're going to be
looking to the printer vendors using
this SDK to write these plugins for
their features and we categorize these
features using terminology which i might
go mention now Universal place two
features which you always get regardless
of what watcher printings two
incompetents age ranger good examples
standard features features like quality
notes with you've got a printable
support desk modal draft mode etc
different printers want to implement
quality modes using a different size of
you I so because there isn't the
standard way of presenting that we would
expect the printer vendors to develop
those panels so what we call these
standard features when applications can
add their pdes to what we might call
custom features so for example with this
presentation package if you wanted to
print out slides notes and handouts
you'd expect to see a panel loaded so
that applications custom features of
print time
and then last but not least the printer
vendors are going to be writing PDS for
their unique features to their printers
so apples going to be taking care of
both script and the printer vendors are
going to write in pds for their non
closest printers so printer modules and
pdes are that they're mandatory to photo
printer up to 10 and be able to print to
it io modules and their counterpart
which is on the next slide those we're
hoping the printer vendors and other
developers really don't have to spend a
lot of time on because it's our intent
to support the the mainstream print
protocols in DP for we've got a module
switch handle printing over LTR
appletalk with Pat we can send jobs over
PostScript sorry over USB I'm hoping
that we can add file are pretty soon I
prepare something we've mentioned i
mentioned it last year the internet
printing protocol and it's definitely on
our list of things to do it won't be in
the first release but we will definitely
add it soon after and if you if you're
using a printer connected up to Mac os10
and for example has an interface that we
haven't supported then you should talk
to us before you go ahead and write an
i/o module for it because we'd like to
help you but there will be cases where
you have a proprietary interface Navy to
your printer if that's the case then the
f ck through the f ck we will provide
sample code for writing your own I own
modules and I mentioned a couple there
that a possibly Apple would do because
the NIR da but it's not high on our
priority list
that printer browser modules these are
two I owe modules what print dialog
extensions work at rental modules iron
modules have no UI if you want to find a
printer on a particular connection type
print center loads a printer browser
module to give you the user interface
for the discovery process so we have for
example in DP for we've got a printer
browser module so that you can set up an
LPR printer and as you probably know LTR
doesn't know / connection so these are
interface for LPR is that you type in
the IP address of the printer we have
another one that Allen showed NDP that
the appletalk discovery protocol so we
have a printer browser module for
connecting to apical printers net info
which you're probably familiar with
which is a directory service we have a
printer class module so you can find
printers can the net Mpho database and
last and of course not leave this USB
and you can find printers on your USB
bus so in due course we'll have a
printer browser module four five i
apprenticed another one on our list is
flp service location protocol again it's
not in DP for its likely not going to be
in the first release but it's becoming
quite a popular ip-based discovery
protocol and people move more and more
towards IP only network will add SLP to
enable you to find SLP savvy printers
and it's like you might have to write
your own custom io modules if you were
to do so you'd be writing a printer
browser modules to go along with it so
printer modules for dialogue extensions
higher modules and these from the
browser modules these are all these are
all part of the the so-called tioga sdk
the f ck is focused right now on the
printer modules and open dialogue
extension it's coming out next week
as I said if you're not already talking
to us you should be I should i could say
how great this sdk is but actually we've
been working where some of the main
people in the printing business for the
last year in fact a year ago next week
we got together with them and started a
collaborative efforts of creating this
sdk and we'd be making pretty good
progress over the last year they've been
very helpful supportive and patient with
us and so we thought that we would get
some of these guys we've been
collaborating with us to come up here
and just tell you what their plans are
for supporting toga content and I'm
going to hand over to John now to make
those introductions thank you Paul as
well then we have been working with
developers we have not been designing
this in a black box we have been taking
feedback and we've been very lucky that
we've actually been work work very
closely with some of the keeper and
developers out there to get some very
good feedback and the results have been
extremely positive so I'd like to first
introduce the I'll introduce two three
we have reps today I'll first off with
Rick's pillars from hela packard to talk
about where they're going with Mac os10
and their printers Rick hi everybody I'm
very glad to be here and I just wanted
to say that I'm part of a small team
inside Gila Packard that's focused
exclusively on the Mac market across all
of our product line includes our large
format designed jets or later jets and
special they are award-winning deskjet
printers since the imac first introduced
a few years ago we've been working real
closely with Apple wat rng level and
especially in the last year as Paul says
our software engineering teams have been
working with Apple to make sure we're on
track with OS 10 development and that's
been working out very well and we're we
have some very hardworking Mac focus
software engineers many of our swimmer
in the room right now our quality
assurance team is working real closely
with Apple to make sure
OS 10 drivers work well and we're ready
to ship things in the box as as OS 10
develop we're very excited inside HP
about Mac os10 it's really raising some
eyebrows and said HP with all of our
whim tell folks so is that your
interesting the blood set from the
mattress sectors and I also want to ask
that from a developer standpoint as you
develop your product for OS 10 you think
about HP and to help you do that HP has
a website HP com for such go forward
class solutions where you can sign up on
a couple of different levels to get HP
products to test with for your OS 10
development and also to get HP products
to use at rates of demos and things like
that so that's available to you HP com
for which / go forward slash solutions
and in closing I want to say that we're
very excited be working with Apple I
think OS 10 is going to be really hot
and we're working hard to make sure we
have all explained drivers that are
going to ship in the box with our
printers as we as those things roll out
so thank you thank you Ray next I would
like to go ahead and introduce from
epson Mitch Kadesh thank you John it's
great to be here the relationship that
epson epson shares with Apple is very
important one for us and it's also been
a continuous one even through the tough
period that Apple went through a few
years ago as you probably know when the
imac was introduced epson was there with
the first USB printer and we continued
our innovation last year by introducing
the first firewire or printer we're very
excited about working with apple on a
left n and you can be sure that when it
ships our drivers will be there fully
supporting all the printing features in
the operating system and we're
especially excited about the tioga or
architecture and how we think a little
help drive high-resolution printing
forward into the future thank you
and finally we have a representative
from Canon to talk about their
directions and how they're getting
involved with Mac os10 Robert shibata hi
I'm Robert shibata I'm a representative
from Canon here today and just wanted to
let you know that cannon is the largest
printer manufacturer in the world and we
are we are definitely behind Apple as
you know we have a lot of products for
supporting an apple platform and
actually going back in history we've
actually been working with with Apple
for well over ten years going back to
laser riders and the style writers and
more recently when excuse me with
products are supporting the Apple
platform we have obviously printers
scanners MFPs a full line of products
back at the keynote in January Steve
Jobs actually held up one of our USB
powered scanners and said something the
defect to the fact that though this was
a really needle product I think so
actually I did I promised I wouldn't do
too much sales type stuff here today but
i just wanted to show our a little
portable we have this is the bjc 85 and
it is actually the thinnest and lightest
notebook product for the app the
platform and as you can see it's
actually a perfect partner for a
powerbook so those of you who may have
power books or notes for me that has a
fire book you know just keep this
product in mind and speaking about
speaking about mineralisation actually
has a small sm of tea for the the apple
platform a you know in addition but
let's talk talk talk about two months of
our products i didn't take too much of
your time is that we do have a full line
of products and we actually just shipped
a photo printer which is called the bjcc
8200 which actually has the small topeka
leader dot on the market and
but anyways that anyway just say that
our developers back in Japan have really
been working very closely with with Paul
down bolt and the printer team clearly
support the current operating system as
well as going future with I'll extend so
let's excuse me so we really look
forward to this operating systems a lot
of the power multi-functionality which
was not the new operating system some
thanks very much just what you know
operators are standing by
so as you can see we've actually been
working with three of the bigger
companies out there we have been working
with other developers as well and then a
very interesting experience because
normally you think of the big companies
out of the market is against each other
and come with the cutthroat and to Mazen
experience the girl three min the same
it when actually cooperating and giving
us ideas and how we can make operating
system move forward so we are very
excited to be working with them as well
as working with other companies as well
so to wrap up the session and where you
should be going forward we first
recommend that after the session in
addition one sessions this afternoon go
back and take a look at the
documentation you'll find some
documentation up on the website
developer apple com tech pubs / carbon /
multimedia carbon printing manager take
a look at the documentation get more in
depth of it in addition to start using
carbon any applications as you're
pouring your heart gives your porting
your applications to carbon use the
carbon printing api's and finally we
have a email address that you can send
us feedback of your experiences let us
know what we're doing right listen what
we're doing wrong and that's at mac OS x
dash dev feedback at apple com
you