Qt-contributors-summit-2014-QtPrintSupport: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
QtPrintSupport


* Planning
** Qt 5.4 (?): QPrintJob, QPrintSettings, QPrintDocument
** Qt 5.5 (?): New dialogs supporting pull printing, preview, etc, new api as a separate QtPrint library
** Not clear if new library will be in qtbase or separate module, depends on implementation
** Schedule very dependent on available time for jlayt
** Probably delayed one release cycle, QLocale work may need to take priority for 5.4, may need to wait to drop WinXP
** Need to document design more at [[Qt-5-QtPrint|http://wiki.qt.io/Qt-5-QtPrint]] to allow others to help
* QPrintJob
** QPrintDocument
** QPrintSettings
** Can hold multiple documents / settings
** Normal api for most common settings
** <span class="caps">IPP</span> key/value pairs for all settings
* QPrintSettings
** Normal api for most common settings
** <span class="caps">IPP</span> key/value pairs for all settings
** Serializable!
* QPrintDocument
** How to do?
** Probably still derived from QPagedPaintDevice
** Holds graphics context (<span class="caps">DEVMODE</span> / <span class="caps">NSV</span>iew / <span class="caps">PDF</span> Stream) as current QPrintEngine? – Messy, requires internal access, prevents separate library?
** Holds <span class="caps">XPS</span> / <span class="caps">PDF</span> Stream? Requires all platforms to have file-based workflows, including Mac which will need to redirect to <span class="caps">PDF</span> first then pass to print system.
** File based workflow would allow for cross-platform n-up / booklet printing?
** Dropping XP support important here?
* QPrintQueue / QPrintDevice
** Probably not be needed if we define QPrintDevice as a queue and not physical device
** Could supply query api to list jobs, or to cancel jobs?
* Cloud / <span class="caps">IPP</span>
** Most platforms integrate into local spool system
** Mobile devices will need separate platform plugin
** <span class="caps">IPP</span> underlies most
** <span class="caps">IPP</span> plugin could replace local <span class="caps">CUPS</span> plugin
* <span class="caps">PDF</span> support
** Maintainer not clear
** <span class="caps">CUPS</span>, <span class="caps">IPP</span>, Cloud need <span class="caps">PDF</span>/A support
** Other features requested like links, etc
* <span class="caps">CUPS</span>
** New plugin for 1.6, keep old 1.4 plugin, dynamic load
** Could replace with <span class="caps">IPP</span>?
** Authentication support needed in dialogs
* Windows
** New print system in Vista, again in Win8
** <span class="caps">XPS</span> / OpenXPS file support needed
** Roll our own for cross-platform QXpsWriter, or can just internally wrap Windows api?
** WinRT may be different?
* Android
** New api in 4.4
** Perhaps Cloud plugins for earlier versions, or non-google options?
** May need to wait for new library
* File Printing
** Have api for supportedMimeTypes()
** Will work on Mac / Linux / Cloud
** Current Windows will need installation of Ghostscript, or Poppler with Cairo, to render <span class="caps">PDF</span> to <span class="caps">GDI</span>
** With <span class="caps">XPS</span> may support directly, or need pdf-&gt;xps converter?
* Color Management
** <span class="caps">PDF</span> set ColorIntent
** Need <span class="caps">ICC</span> profiles api
* Dialogs
** QPrintPreview merged with QPrintDialog for in-dialog preview
** <span class="caps">PDF</span> export dialog
** Need <span class="caps">MFC</span> coder to add stuff to Windows dialog
* Other features
** Manual duplex mode?
** Cross-platform booklet and n-up?
* Bugs
** Need new triage after 5.3,decide what to close, what to fix in 4.8
** Issues with getting 4.8 patches past support team
** Major issue with Mac <span class="caps">PDF</span> printing (fonts)
** Win/Mac dialogs when no printers / PdfFormat
** Others?
* Testing
** More auto tests!
** Visual testing?
** Manual test improvements – split from Dialogs manual test

Revision as of 14:03, 24 February 2015