AirPrintPublic

Similar documents
) CoreImage 2013/5/25 iphone

Swiftではじめる iPhoneアプリ開発の教科書 【iOS 8&Xcode 6対応】初版第2刷差分


- 2 Copyright (C) All Rights Reserved.

Swift1.key

XMPによる並列化実装2

JavaScriptCore

インターネットマガジン1995年8月号―INTERNET magazine No.7

相続支払い対策ポイント

150423HC相続資産圧縮対策のポイント

ハピタス のコピー.pages

Copyright 2008 All Rights Reserved 2

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

com.ibm.etools.egl.jsfsearch.tutorial.doc.ps

_勉強会_丸山さつき_v3

【お試し版】Web制作者のためのCSS設計の教科書(非売品)

sp2-2.indd

programmingII2019-v01

初心者にもできるアメブロカスタマイズ新2016.pages

Quartz OpenGL ES 注 3 注 4 図 2 注 5 3 3D OpenGL ES Quartz Quartz Jun

fx-9860G Manager PLUS_J

InfoPrint 5400 モデルF10 設置と操作の手引き(付録:A~G)

lifedesign_contest_No3

index View Controller

Copyright 2006 KDDI Corporation. All Rights Reserved page1

PowerPoint Presentation

help gem gem gem my help

Copyright All Rights Reserved. -2 -!

Ver.1 1/17/2003 2

カメラ操作のプログラミング(iOS用)について (TP )

Condition DAQ condition condition 2 3 XML key value

セゾン保険_PDF用.indd

Microsoft Word - D JP.docx

/ SCHEDULE /06/07(Tue) / Basic of Programming /06/09(Thu) / Fundamental structures /06/14(Tue) / Memory Management /06/1

r08.dvi

IPA:セキュアなインターネットサーバー構築に関する調査


Microsoft Word - 最終版 バックせどりismマニュアル .docx

Local variable x y i paint public class Sample extends Applet { public void paint( Graphics gc ) { int x, y;... int i=10 ; while ( i < 100 ) {... i +=

Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for

Microsoft Word - MDOnline 2001.


Microsoft Word - iPhone_finalv3.doc

第5回お試しアカウント付き並列プログラミング講習会

Bento User’s Guide


JavaScript の使い方

ex01.dvi

ohp08.dvi

Safari AppletViewer Web HTML Netscape Web Web 15-1 Applet Web Applet init Web paint Web start Web HTML stop destroy update init Web paint start Web up

joho07-1.ppt


IP IP All contents are Copyright (c) All rights reserved. Important Notices and Privacy Statement. page 2 of 39

ProVAL Recent Projects, ProVAL Online 3 Recent Projects ProVAL Online Show Online Content on the Start Page Page 13

Smalltalk_

Microsoft Word - Live Meeting Help.docx

Introduction Purpose This training course describes the configuration and session features of the High-performance Embedded Workshop (HEW), a key tool

XcalableMP入門

- 2 Copyright (C) All Rights Reserved.

untitled

ohp03.dvi

3 top#index 1 web router.ex web/router.ex 12 scope "/", NanoPlanner do 13 pipe_through browser get "/", TopController, index 16 end URL / to

Complex Lab – Operating Systems - Graphical Console

r07.dvi

A/B (2018/10/19) Ver kurino/2018/soft/soft.html A/B

ohp07.dvi

3 Powered by mod_perl, Apache & MySQL use Item; my $item = Item->new( id => 1, name => ' ', price => 1200,

how-to-decide-a-title

TOEIC(R) Newsletter

エラー処理・分割コンパイル・コマンドライン引数


WordPress Web

Microsoft Word - MDOnline 2001.

大統一Debian勉強会 gdb+python拡張を使ったデバッグ手法

TopLink å SampleClient.java... 5 Ò readallsample() querysample() cachesample() Ç..

Bento 3

08+11Extra

TLAdjust321_UG_日本語_090722

IP L09( Tue) : Time-stamp: Tue 14:52 JST hig TCP/IP. IP,,,. ( ) L09 IP (2017) 1 / 28

健康保険組合のあゆみ_top

untitled

リバースマップ原稿2

Adobe Acrobat DC 製品比較表

MOTIF XF 取扱説明書

TextSystemOverview

L516394B-J_APD_Catalog_2012

Copyright 2017 JAPAN POST BANK CO., LTD. All Rights Reserved. 1

2

% 11.1% +6.% 4, % %+12.2% 54,16 6.6% EV7, ,183 Copyright 216 JAPAN POST GROUP. All Rights Reserved. 1

学部ゼミ新規申請方法 (Blackboard 9.1) Seminar Application Method for Undergraduate Seminar Courses ゼミ新規申請は Blackboard で受け付けます! 次セメスターにゼミ履修を希望する学生は 下記マニュアルに従ってゼミ

untitled

AuthorManual_JSTP.ppt

¥Í¥Ã¥È¥ï¡¼¥¯¥×¥í¥°¥é¥ß¥ó¥°ÆÃÏÀ

MOMW_I_,II 利用ガイド.PDF

P. 2 P. 4 P. 5 P. 6 P. 7 P. 9 P P.11 P.14 P.15 P.16 P.16 P.17 P.19 P.20 P.22 P P P P P P P P P

P. 2 P. 4 P. 5 P. 6 P. 7 P. 9 P.10 P.12 P.13 P.14 P.14 P.15 P.17 P.18 P.20 P P P P P.25 P.27 P.28 Copyright 2016 JAPAN POST BA


LAPLINK ヘルプデスク 導入ガイド

Microsoft Word - Win-Outlook.docx

1 I EViews View Proc Freeze

Transcription:

Printing on ios 4.2 Yutaka Yasuda, Kyoto Sangyo University

AirPrint iphone / ipad Safari ios 4.2 2011 3 HP eprint

ASCII.jp x MacPeople OS X AirPrint -- Apple Geeks 19 http://ascii.jp/elem/000/000/575/575397/ 1 1 OS X CUPS OS X AirPrint CUPS $ echo 'image/urf urf (0,UNIRAST<00>)' > airprint.types $ sudo cp airprint.types /usr/share/cups/mime/ Password: $ sudo killall cupsd

ios Reference Library Drawing and Printing Guide for ios ios Printing Printing UIPrint* UIKit http://developer.apple.com/library/ios/#documentation/2ddrawing/conceptual/drawingprintingios/ http://developer.apple.com/jp/devcenter/ios/library/documentation/drawingprintingios.pdf

Drawing and Printing Guide for ios http://developer.apple.com/library/ios/#documentation/2ddrawing/conceptual/drawingprintingios/

UIKit NSData, NSURL, UIImage, ALAsset PDF (#1) print formatter print job Text HTML (#2) UIPrintPageRenderer print job (#3) http://developer.apple.com/library/ios/#documentation/2ddrawing/conceptual/drawingprintingios/

Printing Printing UIKit Printing API Printing Class Protocol http://developer.apple.com/library/ios/#documentation/2ddrawing/conceptual/drawingprintingios/printing/printing.html

How Printing Works in ios UIKit PDF Print Center Figure 6-6 Printing architecture http://developer.apple.com/library/ios/#documentation/2ddrawing/conceptual/drawingprintingios/printing/printing.html

UIPrintInteractionController UIPrintInteractionController

UIPrintInteractionController pic printinfo printingitem printingitems printformatter printpagerenderer printinfo outputtype duplex... text, image, PDF

pic printinfo printingitem - image PDF (#1) printingitem printingitems printformatter printpagerenderer printingitems - printingitem Array (#1 ) printformatter - UIPrintFormatter view text, HTML (#2) printpagerenderer - UIPrintPageRenderer (#3)

Print Formatters (#2) UIPrintFormatter UISimpleTextPrintFormatter - plain text font, color, align, UIMarkupTextPrintFormatter - HTML UIViewPrintFormatter UIView viewprintformatter, drawrect:forviewprintformatter viewprintformatter print formatter UIWebView, UITextView, MKMapView

Page Renderers (#3) Renderer UIPrintFormatter UPPrintInteractionControllerDelegate print option print job

UIPrintInfo orientation duplex outputtype UIPrintInfoOutputPhoto - A6 (or 4x6, depends on locale) UIPrintInfoOutputGeneral - A4 or US Letter (on locale too)

locale // NSString *localeidentifier = [[NSLocale currentlocale] localeidentifier]; NSString *localestring = [[NSLocale currentlocale] displaynameforkey:nslocaleidentifier value:localeidentifier]; NSString *message = [NSString stringwithformat:@"id=%@ : %@", localeidentifier, localestring]; UIAlertView* alert = [[UIAlertView alloc]!!!!!! initwithtitle:@"language"!!!!!! message:message!!!!!! delegate:self!!!!!! cancelbuttontitle:@"ok"!!!!!! otherbuttontitles:nil]; [alert show]; [alert release];

Sample Code : PrintWebView #2 printformatter viewprintformatter webview header, footer webview PrintPhoto #3 UIPrintPageRenderer printformatter drawpageatindex: header, footer http://developer.apple.com/library/ios/#samplecode/printwebview/ http://developer.apple.com/library/ios/#samplecode/printphoto/

TestPrint (#1) printingitem (#2) formatter A6 (#2) WebView load print (#3) renderer (#3) multi

AirPrint isprintingavailable - (void)viewdidload { if (![UIPrintInteractionController isprintingavailable]) [myprintbutton removefromsuperview]; // other tasks... } PrintWebView - (void)setuptoolbaritems

PrintInfo // UIPrintInteractionController *controller = [UIPrintInteractionController sharedprintcontroller]; // PrintInfo UIPrintInfo *printinfo = [UIPrintInfo printinfo]; UIImage *image = ((UIImageView *)self.view).image; printinfo.outputtype = UIPrintInfoOutputPhoto; printinfo.jobname = @"Image from PrintPhoto"; printinfo.duplex = UIPrintInfoDuplexNone; if (!controller.printingitem && image.size.width > image.size.height) printinfo.orientation = UIPrintInfoOrientationLandscape;

completion-handler void (^completionhandler)(uiprintinteractioncontroller *, BOOL, NSError *) = ^(UIPrintInteractionController *pic, BOOL completed, NSError *error) { self.content = nil; if (!completed && error) NSLog(@"FAILED! due to error in domain %@ with error code %u", error.domain, error.code); };

ipad, iphone if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { [controller presentfrombarbuttonitem:self.printbutton animated:yes completionhandler:completionhandler]; } else { } [controller presentanimated:yes completionhandler:completionhandler];

Printer Options controller presentfrombarbuttonitem:completionhandler: presentfromrect:inview:animated:completionhandler: presentanimated:completionhandler:

Printer Options controller presentfrombarbuttonitem:completionhandler: Print presentfromrect:inview:animated:completionhandler: presentanimated:completionhandler: if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { [controller presentfrombarbuttonitem:self.printbutton animated:yes completionhandler:completionhandler]; } else { [controller presentanimated:yes completionhandler:completionhandler]; }

pic printingitem - image PDF (#1) printinfo printingitem printingitems printformatter printpagerenderer printingitems - printingitem Array (#1 ) printformatter - UIPrintFormatter view text, HTML (#2) printpagerenderer - UIPrintPageRenderer (#3)

printtestviewcontroller.h #import <UIKit/UIKit.h> (#123 ) @interface printtestviewcontroller : UIViewController <UIPrintInteractionControllerDelegate> { } -(IBAction)printContent:(id)sender; @end printtestviewcontroller.m -(IBAction)printContent:(id)sender {... } 1. 2. text or PDF) 3. 4. 5....

printingitem (#1) -(IBAction)printContent:(id)sender {! NSData *mydata = [...]!UIPrintInteractionController *pic =... pic!! if( pic &&... ) {!!!! pic.delegate = self; delegate!!!! pic, printinfo!! pic.printingitem = mydata; pic!!!!!! [pic ];!}! }

before assigning objects, you should validate the objects // printinteractioncontroller UIPrintInteractionController *pic = [UIPrintInteractionController sharedprintcontroller]; // printingitem if(pic && [UIPrintInteractionController canprintdata: mydata] ) { pic.printingitem = mydata;... canprinturl: image UTI printableutis if ([[UIPrintInteractionController printableutis] containsobject:myimageuti]) pic.printingitem = myimage;

-(IBAction)printContent:(id)sender {! NSString *path = [[NSBundle mainbundle] pathforresource:@"sample" oftype:@"jpg"];! NSData *mydata = [NSData datawithcontentsoffile: path];!! UIPrintInteractionController *pic = [UIPrintInteractionController sharedprintcontroller]; pic!! if(pic && [UIPrintInteractionController canprintdata: mydata] ) {!!!! pic.delegate = self;!!!! UIPrintInfo *printinfo = [UIPrintInfo printinfo];!! printinfo.outputtype = UIPrintInfoOutputGeneral;!! printinfo.jobname = [path lastpathcomponent];!! printinfo.duplex = UIPrintInfoDuplexLongEdge;!! pic.printinfo = printinfo;!! pic.showspagerange = YES;!! pic.printingitem = mydata;!!!! void (^completionhandler)(uiprintinteractioncontroller *, BOOL, NSError *) =!! ^(UIPrintInteractionController *pic, BOOL completed, NSError *error) {!!! //self.content = nil;!!! if (!completed && error) {!!!! NSLog(@"FAILED! due to error in domain %@ with error code %u", error.domain, error.code);!!! }!! };!!!! [pic presentanimated:yes completionhandler:completionhandler];! }! } delegate printinfo pic UI printinfo job name (#1 )

NSData NSURL printingitem (#1) PDF (1) NSData (2) NSURL NSData NSString *path = [[NSBundle mainbundle] pathforresource:@"sample" oftype:@"jpg"]; NSData *mydata = [NSData datawithcontentsoffile: path]; if(pic && [UIPrintInteractionController canprintdata:mydata]) { pic.printingitem = mydata;... NSURL NSString *path = [[NSBundle mainbundle] pathforresource:@"sample" oftype:@"jpg"]; NSURL *myurl = [NSURL fileurlwithpath: path]; if(pic && [UIPrintInteractionController canprinturl:myurl]) { pic.printingitem = myurl;... NSURL *myurl = [NSURL URLWithString:@"file:///sample.jpg"];

step 3. step 1. step 2.

pic printinfo done printingitem - image PDF (#1) printingitem printingitems printformatter printpagerenderer printingitems - printingitem Array (#1 ) printformatter - UIPrintFormatter view text, HTML (#2) printpagerenderer - UIPrintPageRenderer (#3)

-(IBAction)printContent:(id)sender {! NSData *mydata = [...]!UIPrintInteractionController *pic =... pic!! if( pic &&... ) {!!!! pic.delegate = self; delegate!!!! pic, printinfo!! pic.printingitem = mydata; pic!!!!!! [pic ];!}! }

printformatter (#2) printingitem(s) - image PDF pic.printingitem = mydata; // printformatter - text, HTML View text UISimpleTextPrintFormatter *fmt =! [[UISimpleTextPrintFormatter alloc] initwithtext:@"hello!!"]; pic.printformatter = fmt; fmt font, color, linebreakmode, textalignment printingitem (#1) printingformatter (#2) pic printinfo pic printinfo printingitem printingitems printformatter printpagerenderer text, image, PDF printingitem printingitems printformatter printpagerenderer formatter text, HTML, view

(#2) Figure 6-8 The layout of a multi-page print job printformat inset maximumcontentwidth, Height points (72points / inch) fmt.contentinsets = UIEdgeInsetsMake(72.0, 72.0, 72.0, 72.0); fmt.maximumcontentwidth = 6 * 72.0; http://developer.apple.com/library/ios/#documentation/2ddrawing/conceptual/drawingprintingios/printing/printing.html

UISimpleTextPrintFormatter text (#2) UISimpleTextPrintFormatter *textformatter = // formatter [[UISimpleTextPrintFormatter alloc] initwithtext:@... ]; textformatter.startpage = 0; NSString textformatter.contentinsets = UIEdgeInsetsMake(72.0, 72.0, 72.0, 72.0); // 1 textformatter.maximumcontentwidth = 6 * 72.0; pic.printformatter = textformatter; // formatter Printer Simulator Preview // // main.m // printtest // // Created by yasuda on 11/03/01. // Copyright 2011 MyCompanyName. All rights reserved. // #import <UIKit/UIKit.h> int main(int argc, char *argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; int retval = UIApplicationMain(argc, argv, nil, nil); [pool release];

text NSString *path = [[NSBundle mainbundle] pathforresource:@"sample" oftype:@"txt"]; NSError *error=nil; path NSString *text = [[NSString alloc] initwithcontentsoffile:path encoding:nsutf8stringencoding error:&error]; Alert if([[error domain]isequal:nscocoaerrordomain]) { UIAlertView* alert = [[UIAlertView alloc] initwithtitle:@"text file reading"!!!!!!!! message:[error localizeddescription] delegate:self cancelbuttontitle:@"ok" otherbuttontitles:nil];! [alert show];! [alert release];! return; }

CR LF // // main.m // printtest // // Created by yasuda on 11/03/01. // Copyright 2011 MyCompanyName. All rights reserved. // #import <UIKit/UIKit.h> int main(int argc, char *argv[]) { } NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; int retval = UIApplicationMain(argc, argv, nil, nil); [pool release]; return retval;

linebreakmode linebreakmode textformatter.linebreakmode = UILineBreakModeWordWrap; UIKIT_CLASS_AVAILABLE(4_2) @interface UISimpleTextPrintFormatter : UIPrintFormatter { } - (id)initwithtext:(nsstring *)text; @property(nonatomic,copy) NSString *text; @property(nonatomic,retain) UIFont *font; @property(nonatomic,retain) UIColor *color; @property(nonatomic) UITextAlignment textalignment; @end 2011.3

UIMarkupTextPrintFormatter HTML (#2) UIMarkupTextPrintFormatter *htmlformatter = // formatter [[UIMarkupTextPrintFormatter alloc] initwithtext:@ <HTML>... ]; pic.printformatter = htmlformatter; // formatter NSString HTML UISimpleTextPrintFormatter

UIViewPrintFormatter webview (#2) UIViewPrintFormatter *viewformatter = // formatter [mywebview viewprintformatter]; pic.printformatter = viewformatter; // formatter webview UISimpleText, UIMarkUpTextPrintFormatter

(#2) UISimpleTextPrintFormatter : plain text UISimpleTextPrintFormatter *formatter = // formatter [[UISimpleTextPrintFormatter alloc] initwithtext:@ my name is... ]; pic.printformatter = formatter; // formatter NSString plain text UIMarkUpTextPrintFormatter : HTML UIMarkupTextPrintFormatter *formatter = // formatter [[UIMarkupTextPrintFormatter alloc] initwithtext:@ <HTML>... ]; pic.printformatter = formatter; // formatter NSString HTML UIViewPrintFormatter : View UIViewPrintFormatter *formatter = [mywebview viewprintformatter]; // formatter pic.printformatter = formatter; // formatter UIWebView UITextView, MKMapView

pic printinfo done printingitem - image PDF (#1) printingitem printingitems printformatter printpagerenderer printingitems - printingitem Array (#1 ) done printformatter - UIPrintFormatter view text, HTML (#2) printpagerenderer - UIPrintPageRenderer (#3)

printpagerenderer (#3) printingitem printingformatter (#1) (#2) pic printinfo pic printinfo printingitem printingitems printformatter printpagerenderer text, image, PDF printingitem printingitems printformatter printpagerenderer formatter text, HTML, view printpagerenderer pic printinfo printingitem printingitems printformatter printpagerenderer (#3) myrenderer drawpageatindex drawheaderforpageatindex drawcontentforpageatindex drawfooterforpageatindex propertyx, propertyy,... override

override (#3) drawpageatindex drawheaderforpageatindex, drawfooterforpageatindex drawcontentforpageatindex drawprintformatter drawpageatindex drawpageatindex: drawheaderforpageatindex: drawcontentforpageatindex: PrintPhoto override drawprintformatter:forpageatindex: drawfooterforpageatindex: PrintWebView override

PrintPhoto PrintPhotoPageRenderer.m PrintPhotoViewController.m http://developer.apple.com/library/ios/#samplecode/ PrintPhoto/Introduction/Intro.html PrintPhotoPageRenderer.h UIPrintPageRenderer @interface PrintPhotoPageRenderer : UIPrintPageRenderer { UIImage *imagetoprint; } - (void)drawpageatindex:(nsinteger)pageindex inrect:(cgrect)printablerect {... printablerect } destrect = CGRectMake(...); [self.imagetoprint drawinrect:destrect]; PrintPhotoPageRenderer *pagerenderer = [[PrintPhotoPageRenderer alloc] init]; pagerenderer.imagetoprint = ((UIImageView *)self.view).image; controller.printpagerenderer = pagerenderer; UIPrintInteractionController UIImage drawinrect renderer drawpageatindex: controller (#3)

(#3) Figure 6-8 The layout of a multi-page print job renderer inset maximumcontentwidth, Height points (72points / inch) pagerenderer.headerheight = 10; http://developer.apple.com/library/ios/#documentation/2ddrawing/conceptual/drawingprintingios/printing/printing.html

(#3) SamplePrintViewController.m PrintGridPageRenderer *pagerenderer = [[PrintGridPageRenderer alloc] init];... pagerenderer.headerheight = 10.0; pagerenderer.footerheight = 15.0; SamplePrintPageRenderer.m -(void)drawheaderforpageatindex:(nsinteger)index inrect:(cgrect)headerrect drawfooterforpageatindex: -(void)drawcontentforpageatindex:(nsinteger)index inrect:(cgrect)contentrect

UIFont *font = [UIFont fontwithname:@"helvetica" size:10]; CGSize titlesize = [@"Sample Header String." sizewithfont:font]; pagerenderer.headerheight = titlesize.height * 1.5; UIFont *font = [UIFont fontwithname:@"helvetica" size:10]; [@"Sample Header String." drawatpoint:startpoint withfont:font]; -(void)drawheaderforpageatindex:(nsinteger)index inrect:(cgrect)headerrect UIFont *font = [UIFont fontwithname:@"helvetica" size:10]; CGFloat startx = headerrect.origin.x + 10; CGSize stringsize = [headerstring sizewithfont:font]; CGFloat starty = headerrect.origin.y + ( headerrect.size.height - stringsize.height ) / 2 ; CGPoint startpoint = CGPointMake(startX, starty); [headerstring drawatpoint:startpoint withfont:font];

printformatter printpagerenderer printformatter UIPrintFormatter Class Reference Third-party subclasses of UIPrintFormatter are not recommended. If you have custom content to print, use a custom UIPrintPageRenderer object. printformatter PrintWebView http://developer.apple.com/library/ios/#documentation/uikit/reference/uiprintformatter_class/ http://developer.apple.com/library/ios/#samplecode/printwebview/

PrinterSimulator.app /Platforms/iPhoneOS.platform/Developer/Applications/PrinterSimulator.app

Print Simulator Printer Options Select Printer >

Printer Simulator Save Original to Simulator

Print Preview

Show in Finder /private/var/folders/12/12p8rcisfu8d1efifmdirk+++ti/-tmp-/printersimulator.ykiwkw

[01/Mar/2011:17:52:30 +0900] Listening for connections on 0.0.0.0:8632.. [01/Mar/2011:17:52:30 +0900] Listening for connections on [::1]:8632.. [01/Mar/2011:17:53:15 +0900] Accepted connection from fe80::219:e3ff:fef9:9692%en0:57733 (IPv6) [01/Mar/2011:17:53:15 +0900] "POST /printers/save HTTP/1.1" 200 3006 Get-Printer-Attributes successful-ok [01/Mar/2011:17:53:15 +0900] Closing connection from fe80::219:e3ff:fef9:9692%en0:57733 (IPv6) [01/Mar/2011:17:53:19 +0900] Accepted connection from fe80::219:e3ff:fef9:9692%en0:57734 (IPv6) [01/Mar/2011:17:53:19 +0900] "POST /printers/save HTTP/1.1" 200 262 Validate-Job successful-ok [01/Mar/2011:17:53:19 +0900] save-130666230: job-created - Job created [01/Mar/2011:17:53:19 +0900] Save Original to Simulator: Accepted "sample.jpg" for printing (job #130666230, image/jpeg, 1 pages) [01/Mar/2011:17:53:19 +0900] save-130666230: job-state-changed - Job pending [01/Mar/2011:17:53:19 +0900] Save Original to Simulator: Printing "sample.jpg" (job #130666230) [01/Mar/2011:17:53:19 +0900] Viewing "/var/folders/12/12p6rcisfu8p1efifmdirk+++ti/-tmp-/ PrinterSimulator.YKiwkW/130666230.jpg" [01/Mar/2011:17:53:19 +0900] Accepted connection from fe80::219:e3ff:fef9:9692%en0:57735 (IPv6) [01/Mar/2011:17:53:19 +0900] "POST /printers/save HTTP/1.1" 200 279 Get-Printer-Attributes successful-ok [01/Mar/2011:17:53:19 +0900] Closing connection from fe80::219:e3ff:fef9:9692%en0:57735 (IPv6) [01/Mar/2011:17:53:19 +0900] "POST /printers/save HTTP/1.1" 200 13151 - successful-ok [01/Mar/2011:17:53:19 +0900] save-130666230: job-state-changed - Job printing [01/Mar/2011:17:53:19 +0900] Save Original to Simulator: Connecting to printer [01/Mar/2011:17:53:19 +0900] save-130666230: job-completed - Job completed [01/Mar/2011:17:53:19 +0900] "POST /printers/save HTTP/1.1" 200 366 Get-Job-Attributes successful-ok [01/Mar/2011:17:53:19 +0900] Closing connection from fe80::219:e3ff:fef9:9692%en0:57734 (IPv6)