나는 현재 프린터 나 터미널 등이 아닌 파일이나 텍스트를 gtk (2hs)와 함께 Graphics.UI.Gtk.Printing
을 사용하여 인쇄하려고합니다. , 카이로, 판고. 나는 printOperationNPages
1로 문제가 카이로 아무것도 그리지 않는 것입니다 설정 때문에gtk.printing/cairo/pango with gtk2hs - 인쇄 작업 Haskell에서
op <- printOperationNew
on op printOptBeginPrint $ \context -> do
set op [ printOperationNPages := 1]
return()
on op printOptDrawPage $ \context pages - do
let text = "Hello World"
putStrLn $ "Printing :" ++ text
--cairo
cairoContext<- printContextGetCairoContext context
--pango
layout<- printContextCreatePangoLayout context
layoutSetText layout text
let _ = do
--inside the Render Monad
showLayout layout
return()
return()
result <- printOperationRun op PrintOperationActionPrintDialog window
이 빈 페이지가 인쇄 :
코드는 다음과 같습니다. 나는 을 cairoContext
에 pango 레이아웃으로 연결해야한다고 가정하면 showLayout
에 대한 적절한 호출은 실제로 pango_cairo_show_layout (cr, layout);
이됩니다.
이미 gtk2hs [1]의 메일 링리스트에서이 문제에 대해 논의했습니다.
아무도이 경험이 있으면 알려 주시기 바랍니다. 또한 다른 플랫폼에 대한 선호도가 높은 플랫폼에 대한 감사의 말을 전합니다. haskell의 파일/텍스트 인쇄 솔루션입니다. 대화에
링크 : Hackage에서 [1] http://sourceforge.net/mailarchive/message.php?msg_id=27662267
GTK (2HS) : http://hackage.haskell.org/package/gtk-0.12.0
gtk-cairo : http://projects.haskell.org/gtk2hs/docs/gtk-docs-0.11.0/Graphics-UI-Gtk-Cairo.html – forste
gtk 상위 수준 인쇄 api : http : // developer.gnome.org/gtk/2.24/gtk-High-level-Printing-API.html – forste