2010-06-04 92 views
1

有沒有辦法通過wifi或其他方式向打印機發送打印請求?發送來自iPhone應用程序的打印請求

編輯: 必須有,因爲有一些應用程序可以讓你這樣做。但他們如何做到這一點?例如,

  • HP iPrint的照片
  • 航空照片
  • EuroSmartzPrint

,也許其他人。

回答

5

在Apple的SDK中沒有本地的打印方式。 Air Photo使用安裝在計算機上的助手應用程序進行打印,以便將請求發送到實際發送打印請求的桌面應用程序。惠普的應用程序可以連接到它可以在網絡上找到的惠普打印機,大概使用Bonjour。直接打印的困難在於獲得正確的驅動程序,幸運的是惠普公司也生產這些打印機。 EuroSmartz我認爲這兩種方法都有效,但他們並沒有聲稱質量實際上直接打印到打印機的質量如何,可能是因爲它們不能包含供應商提供的驅動程序。

所以,如果你要打印你的選擇是:

  1. 連接到通過Bonjour打印機,並嘗試在不供應商提供的驅動程序(也許你可以找到開源的)進行打印。
  2. 編寫桌面應用程序以協助打印。 (較好的質量,但需要一箇中間人。)

更新: 與iOS 4.2,蘋果包括一個名爲 「AirPrint的」 新技術。通過直接打印到支持ePrint的惠普打印機(我的理解是,這不會使用傳統意義上的驅動程序),以及通過使用OS X 10.6.5的Mac進行打印,#2本質上實現了#1。

+0

謝謝,感謝。 – Mustafa 2010-06-07 06:01:40

1

據我所知,只有當設備作爲Made For iPod程序的一部分啓用Bonjour時纔有可能。然後,您可以使用EAAccessoryManager和相關類進行連接並將數據發送到設備。這是你可以嘗試在iPhone上更難的事情之一...

Here's另一個(也許)對這個問題有用的問題。

+0

感謝您分享有用的鏈接。 – Mustafa 2010-06-07 05:57:04

2

是的,您當然可以使用Bonjour和NSNetServiceBrowser類找到附近的打印機。具體而言,您希望發送searchForServicesOfType:消息,並附帶@「_ ipp._tcp」(附近的打印機)。查看開發者文檔中的Browsing for Services文章。實際的假脫機打印如何工作是超出我的。我現在只是在學習GameKit/Bonjour。

+0

我正在爲此尋找第三方庫。看起來我需要做很多工作才能完成。感謝您的幫助。 – Mustafa 2010-06-07 06:01:21

相關問題