adobe air & printing

26
AIR & Printing AIR 2, AlivePDF and PurePDF: everything you need in your RIA or desktop apps

Upload: luca-mezzalira

Post on 29-Jun-2015

7.060 views

Category:

Technology


6 download

DESCRIPTION

AIR & Printing is a talk made during SOTR 2010 in London.During this event I talked on how to work offline with AIR to create PDF in runtime directly with Actionscript 3 without using any other technology

TRANSCRIPT

Page 1: Adobe AIR & Printing

AIR & PrintingAIR 2, AlivePDF and PurePDF:everything you need in your RIA or desktop apps

Page 2: Adobe AIR & Printing

Luca MezzaliraACE and ACI on Flash, Flex with AIR and Flash Lite

Mart3 owner and Flash Platform Developer

Adobe Italy Consultant

Teacher, Writer, Adobe supporter!

Page 3: Adobe AIR & Printing

Luca MezzaliraACE and ACI on Flash, Flex with AIR and Flash Lite

Mart3 owner and Flash Platform Developer

Adobe Italy Consultant

Teacher, Writer, Adobe supporter!

Oh, yes! I forget! I’m Chewbacca also!

Page 4: Adobe AIR & Printing

Save timewhen someone ask me to print a report in my RIA or Desktop App

Page 5: Adobe AIR & Printing

Agenda. Printing with Flash and Flex

. AIR 2 new features

. AIR 2 and PrintJob

. AlivePDF

. PurePDF

. Questions & Answear

Page 6: Adobe AIR & Printing

When do you use PRINTING API?. to print a report

. to print a form (invoice, receipt, ...)

. to print an artwork

. to prepare a PDF for typography (REMEMBER that

WE HAVE TLF)

Page 7: Adobe AIR & Printing

Printing in Flash. PrintJob class

. OS Dialog box to interact with printer

. problem to create complex documents

. problem to manage more than 1 page

. problem to print big images

. not easy to work with dynamic data

Page 8: Adobe AIR & Printing

Printing with Flex. FlexPrintJob to print Flex objects

. PrintAdvancedDataGrid

. PrintDataGrid

. PrintOLAPDataGrid

Page 9: Adobe AIR & Printing

FlexPrintJobvar printJob:FlexPrintJob = new FlexPrintJob();

printJob.start();

printJob.addObject(myObject, FlexPrintJobScaleType.MATCH_WIDTH);

printJob.send();

When you call start() method Flash Player or AIR:

1. give a feedback from user’s choice (true/false)

2. retrieve page dimension from Printer

Each object added with addObject method will be

print in a different page

Page 10: Adobe AIR & Printing

PrintDataGrid//thePrintView is a custom component with PrintDataGrid componentprintJob.addObject(thePrintView);while (thePrintView.myDataGrid.validNextPage) { thePrintView.myDataGrid.nextPage(); printJob.addObject(thePrintView);}

With PrintDataGrid component you can manage

rows to print in many pages

Page 11: Adobe AIR & Printing

...now the PRESENT

this is the past...

Page 12: Adobe AIR & Printing

AIR 2 new featuresMultitouch API ( do you know Steve!? )

Microphone data access

Open documents with user’s default application

UDP Socket

Socket Server (this feature ROCKS!)

Screen reader support

File promises

Mass storage device detection

Printing API ( :D )

... and so on ...

Page 13: Adobe AIR & Printing

AIR Printing API. pixelsPerInch -> resolution to use for Bitmap

. printer -> set Printer

. printers -> Vector.<String> with all printers installed

. copies -> number of copies to print

. selectePaperSize() -> choose your page size

. start2() -> start a print with new API

. terminate() -> reset PrintJob object if you need it

Page 14: Adobe AIR & Printing

AIR Printing APIPrintMethod: . AUTO -> Automatic selection of best method of printing . VECTOR -> ehm... maybe print with Vector method? . BITMAP -> mumble, mumble... DOH!

PrintIUIOptions -> need to manage Print Dialog Box

Everything you need it’s Language Reference!!!

Page 15: Adobe AIR & Printing

AlivePDFAS3 PDF library

you can use online and offline

you don’t need any serverside script

AlivePDF works with: Images, EPS files,

Vectors, Embedded Fonts...

You can add in your PDF: links, transitions,

PDF settings,...

THANK YOU MATE!

Page 16: Adobe AIR & Printing

AlivePDFSteps to work with AlivePDF API:

1. create a PDF object

2. addPage()

3. add content (images, text, eps...)

3a. (Optional) setting your PDF...

4. save it with FileReference or FileStream

Page 17: Adobe AIR & Printing

AlivePDF - case historyMy client ask me to create a comic creator that

runs on Mac and PC without installation

What do I need ???Flash + Zinc + AlivePDF

Page 18: Adobe AIR & Printing

PurePDFIt’s a very powerful PDF library made by Sephiroth

http://www.sephiroth.it/weblog/archives/2010/02/

purepdf_a_complete_actionscript_pdf_l.php

PurePDF has tons of cool features:

. barcode generator

. multi column

. embedded movies

. metadata, page headers, page footers

. vertical text

. javascript

... and so on

Page 19: Adobe AIR & Printing

PurePDFThis library is targeted for Flash Player 10

For any help, doubt or more use PurePDF list:

http://code.google.com/p/purepdf/issues/list

Sepy and his team is working on this open-source as3 libs so in

the next future will see new amazing functionalities!!!

Page 20: Adobe AIR & Printing

ResourcesALIVEpdf

http://code.google.com/p/alivepdf/

PUREpdf

http://code.google.com/p/purepdf/

FlexReport

http://flexreport.riaforge.org/

Page 21: Adobe AIR & Printing

Finally...

Page 22: Adobe AIR & Printing

my “thoughts” about Flash Platform attack:

Page 23: Adobe AIR & Printing

HTML 5, Apple and so on!

my “thoughts” about Flash Platform attack:

Page 24: Adobe AIR & Printing

HTML 5, Apple and so on!

my “thoughts” about Flash Platform attack:

NOOOP, Design Patterns, workflow, TLF, real multiple screen deployment...

Page 25: Adobe AIR & Printing
Page 26: Adobe AIR & Printing

blog:lucamezzalira.comtwitter:lucamezzalira

email:[email protected]:www.mart3.org

to lose your time with this cool shit!