* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810191602.m9JG2D84030719@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-22 14:49 ` Till Kamppeter 2008-10-22 15:17 ` peter sikking 0 siblings, 1 reply; 19+ messages in thread From: Till Kamppeter @ 2008-10-22 14:49 UTC (permalink / raw) To: Peter Sikking Cc: Robert Krawitz, printing-architecture@lists.linux-foundation.org, gimp-print-devel Robert Krawitz wrote: > Date: Sun, 19 Oct 2008 15:35:31 +0200 > From: Till Kamppeter <till.kamppeter@gmail.com> > > Another point is completing the PPD extensions for the Common Printing > Dialog. Most important point is tagging the options, so that they show > up with the right tags being selected. > > See > > http://www.linuxfoundation.org/en/OpenPrinting/CommonPrintingDialog > http://www.linuxfoundation.org/en/OpenPrinting/PPDExtensions > > I still don't much care for this limitation of 6 tags being available > for the driver. If nothing else, we could use some assistance in > figuring out how to categorize all of the options. > > In general, I'd really like to have a way to hide the advanced > options. I know full well that the vast majority of people have no > interest in them, but that's not a reason to make them entirely > unavailable to the people who do have reason to use them. > Philosophically, I don't care for this dumbing down approach. I know > I'm not the only person out there who likes to have fine-grained > controls available! > > (I'd also like to have generalized piecewise or dense curves available > in CUPS, but that's another matter.) Perhaps we should find a solution together with Peter Sikking, designer of the Common Printing Dialog. Peter, the Gutenprint driver has far too many option groups for the limited amount of tags in the Common Printing Dialog. What is your suggestion how to let the options of Gutenprint get presented in the Common Printing Dialog? Till ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 2008-10-22 14:49 ` [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 Till Kamppeter @ 2008-10-22 15:17 ` peter sikking [not found] ` <200810230019.m9N0JCIp018128@dsl092-065-009.bos1.dsl.speakeasy.net> 0 siblings, 1 reply; 19+ messages in thread From: peter sikking @ 2008-10-22 15:17 UTC (permalink / raw) To: Till Kamppeter Cc: Robert Krawitz, printing-architecture@lists.linux-foundation.org, gimp-print-devel Till + Robert, sorry to not get back to you sooner, it slipped under the holiday radar. >> Date: Sun, 19 Oct 2008 15:35:31 +0200 >> From: Till Kamppeter <till.kamppeter@gmail.com> >> Another point is completing the PPD extensions for the Common >> Printing Dialog. Most important point is tagging the options, so >> that they show up with the right tags being selected. >> See >> http://www.linuxfoundation.org/en/OpenPrinting/CommonPrintingDialog >> http://www.linuxfoundation.org/en/OpenPrinting/PPDExtensions >> I still don't much care for this limitation of 6 tags being available >> for the driver. If nothing else, we could use some assistance in >> figuring out how to categorize all of the options. >> In general, I'd really like to have a way to hide the advanced >> options. I know full well that the vast majority of people have no >> interest in them, but that's not a reason to make them entirely >> unavailable to the people who do have reason to use them. >> Philosophically, I don't care for this dumbing down approach. I know >> I'm not the only person out there who likes to have fine-grained >> controls available! >> (I'd also like to have generalized piecewise or dense curves >> available >> in CUPS, but that's another matter.) > > Perhaps we should find a solution together with Peter Sikking, > designer of the Common Printing Dialog. > > Peter, the Gutenprint driver has far too many option groups for the > limited amount of tags in the Common Printing Dialog. What is your > suggestion how to let the options of Gutenprint get presented in the > Common Printing Dialog? well, first of all there are 11 tags available to the printer (==driver), you can use these fully within the vision of gutenprint, which is fine-grained control. do not confuse good UI design with complexity reduction with dumbing down. it is about delivering value to the target user group. when you know I am also the principal UI architect of the renovation of GIMP, you can see I know a thing or two about delivering power to pros. second there are still principles of good interaction design, like prioritising your parameters, seeing which are a specialisation of another parameter. another good trick is when there are 3 boolean options, and 6 combinations make sense, to represent them all as 6 choices for one parameter. when still in a pinch, super-duper once-per-paper-ink-combination calibration type stuff can be moved to a separate dialog, where there is space for advanced controls. the dialog is then opened as an extension to the more basic parameters in the dialog via a button. I would still encourage you to treat the 11 tags not as tabs, but to dive into the world of gutenprint and find out what aspects of printing really interest your audience. and then assign the parameters you have to one or more tags. --ps founder + principal interaction architect man + machine interface works http://mmiworks.net/blog : on interaction architecture ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810230019.m9N0JCIp018128@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810230019.m9N0JCIp018128@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-24 8:52 ` peter sikking 2008-10-24 10:08 ` Till Kamppeter 2008-10-24 12:35 ` Alastair M. Robinson 0 siblings, 2 replies; 19+ messages in thread From: peter sikking @ 2008-10-24 8:52 UTC (permalink / raw) To: Robert Krawitz; +Cc: printing-architecture, gimp-print-devel, till.kamppeter Robert, >>> Peter, the Gutenprint driver has far too many option groups for the >>> limited amount of tags in the Common Printing Dialog. What is your >>> suggestion how to let the options of Gutenprint get presented in the >>> Common Printing Dialog? > >> when still in a pinch, super-duper >> once-per-paper-ink-combination calibration type stuff can be moved >> to a separate dialog, where there is space for advanced controls. >> the dialog is then opened as an extension to the more basic >> parameters in the dialog via a button. >> > There are a lot of low level ink controls that I would be happy to > move elsewhere, but it's not clear to me where that "elsewhere" is > provided. like I said, separate dialog triggered from the print dialog. > In general, though, there aren't all that many boolean > parameters, and those that we do have really are orthogonal (linear > vs. S-curve contrast adjustment, borderless, and use of gloss enhancer > have absolutely nothing to do with one another). OK, it was worth a try. >> I would still encourage you to treat the 11 tags not as tabs, but >> to dive into the world of gutenprint and find out what aspects of >> printing really interest your audience. and then assign the >> parameters you have to one or more tags. > > This is an area we could use some assistance on. I have no feel at > all for UI design. In general, the best way to utilize my skills in > user interface design is to invert whatever I might happen to come up > with. > > I really want Gutenprint to appeal to a very wide range of people, > from the "I just want it to work" folks all the way to the hard core > fine art (and other) professionals who want to be able to adjust > everything for a non-standard ink set and oddball paper. For anybody to be able to help you at all, you first need to set a clear vision for what the purpose of gutenprint is in the printing world of today. And "to appeal to a very wide range of people" is not it. You will have to say good bye to some old goals. The (linux) printing world has evolved. Similar to how GIMP has moved on from 'the sole pixel program on linux' to an expert tool that does not aim to please casual users. I can tell you that when the GIMP team would not have defined that vision, and tried to be the tool for "a very wide range of people", I would not have got involved. --ps founder + principal interaction architect man + machine interface works http://mmiworks.net/blog : on interaction architecture ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 2008-10-24 8:52 ` peter sikking @ 2008-10-24 10:08 ` Till Kamppeter 2008-10-24 12:35 ` Alastair M. Robinson 1 sibling, 0 replies; 19+ messages in thread From: Till Kamppeter @ 2008-10-24 10:08 UTC (permalink / raw) To: peter sikking; +Cc: Robert Krawitz, printing-architecture, gimp-print-devel peter sikking wrote: > like I said, separate dialog triggered from the print dialog. > And how should this dialog look like? Someone has to implement it. The printer driver runs on the CUPS server and it cannot send executable programs to the clients. Do we have to consider the design project of the Common Printing Dialog as incomplete or even failed then? Do we have to start a design for a "Common Secondary Printing Dialog" before we can implement the Common Printing Dialog? Till >> In general, though, there aren't all that many boolean >> parameters, and those that we do have really are orthogonal (linear >> vs. S-curve contrast adjustment, borderless, and use of gloss enhancer >> have absolutely nothing to do with one another). > > OK, it was worth a try. > >>> I would still encourage you to treat the 11 tags not as tabs, but >>> to dive into the world of gutenprint and find out what aspects of >>> printing really interest your audience. and then assign the >>> parameters you have to one or more tags. >> >> This is an area we could use some assistance on. I have no feel at >> all for UI design. In general, the best way to utilize my skills in >> user interface design is to invert whatever I might happen to come up >> with. >> >> I really want Gutenprint to appeal to a very wide range of people, >> from the "I just want it to work" folks all the way to the hard core >> fine art (and other) professionals who want to be able to adjust >> everything for a non-standard ink set and oddball paper. > > For anybody to be able to help you at all, you first need to > set a clear vision for what the purpose of gutenprint is in > the printing world of today. And "to appeal to a very wide > range of people" is not it. You will have to say good bye to > some old goals. The (linux) printing world has evolved. > Similar to how GIMP has moved on from 'the sole pixel program > on linux' to an expert tool that does not aim to please > casual users. > > I can tell you that when the GIMP team would not have defined > that vision, and tried to be the tool for "a very wide range > of people", I would not have got involved. > > --ps > > founder + principal interaction architect > man + machine interface works > > http://mmiworks.net/blog : on interaction architecture > > > > ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 2008-10-24 8:52 ` peter sikking 2008-10-24 10:08 ` Till Kamppeter @ 2008-10-24 12:35 ` Alastair M. Robinson 2008-10-24 18:34 ` Hal V. Engel 1 sibling, 1 reply; 19+ messages in thread From: Alastair M. Robinson @ 2008-10-24 12:35 UTC (permalink / raw) To: peter sikking Cc: Robert Krawitz, printing-architecture, gimp-print-devel, till.kamppeter Hi, peter sikking wrote: > For anybody to be able to help you at all, you first need to > set a clear vision for what the purpose of gutenprint is in > the printing world of today. Part of what makes this difficult is that gutenprint is at the same time behind-the-scenes infrastructure, and also user-facing, since the structure of its options system is exposed indirectly through the PPDs. > You will have to say good bye to > some old goals. I think one thing we may have to revisit will be the assumption that gutenprint's options are mapped directly to options in the printing dialog. The introduction of simplified PPDs was a step in this direction, but the difficulty we've had in figuring out how to handle calibration curves and so on makes me think it may be time to go further. With the recent push to make the Epson driver more data-driven, and pulling previously hard-coded data into XML files, I wonder whether we need to consider having an administration tool, completely separate from the PPD-based print chain, which can be used by administrators and "Domain Experts" (people who know how to handle colour-management and calibration, but don't care about code) to fine tune things like the low-level ink controls, and calibration curves, which are so hard to fit into a user-facing print dialog. Gutenprint's "Quality" and "Media Type" options between them set a large number of options to hard-coded defaults - I envisage this hypothetical administration tool being used to *change* these defaults, and save them (along with calibration curves, and ideally ICC profiles too) as files which could then be shared with other users. This would solve another difficulty that was brought up when we first started discussing calibration and linearization - being able to *distribute* and share settings. None of this detracts from the continued ability of software which uses Gutenprint directly, like the advanced print plugin, or PhotoPrint, from continuing to offer full control, but it could potentially make life much more pleasant for "one-click-print" users. All the best, -- Alastair M. Robinson ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 2008-10-24 12:35 ` Alastair M. Robinson @ 2008-10-24 18:34 ` Hal V. Engel [not found] ` <49021D0B.4040708@apple.com> [not found] ` <200810251458.m9PEwS6D029068@dsl092-065-009.bos1.dsl.speakeasy.net> 0 siblings, 2 replies; 19+ messages in thread From: Hal V. Engel @ 2008-10-24 18:34 UTC (permalink / raw) To: gimp-print-devel; +Cc: printing-architecture On Friday 24 October 2008 05:35:57 Alastair M. Robinson wrote: > Hi, > > peter sikking wrote: > > For anybody to be able to help you at all, you first need to > > set a clear vision for what the purpose of gutenprint is in > > the printing world of today. > > Part of what makes this difficult is that gutenprint is at the same time > behind-the-scenes infrastructure, and also user-facing, since the > structure of its options system is exposed indirectly through the PPDs. > > > You will have to say good bye to > > > > some old goals. > > I think one thing we may have to revisit will be the assumption that > gutenprint's options are mapped directly to options in the printing > dialog. The introduction of simplified PPDs was a step in this > direction, but the difficulty we've had in figuring out how to handle > calibration curves and so on makes me think it may be time to go further. > > With the recent push to make the Epson driver more data-driven, and > pulling previously hard-coded data into XML files, I wonder whether we > need to consider having an administration tool, completely separate from > the PPD-based print chain, which can be used by administrators and > "Domain Experts" (people who know how to handle colour-management and > calibration, but don't care about code) to fine tune things like the > low-level ink controls, and calibration curves, which are so hard to fit > into a user-facing print dialog. > > Gutenprint's "Quality" and "Media Type" options between them set a large > number of options to hard-coded defaults - I envisage this hypothetical > administration tool being used to *change* these defaults, and save them > (along with calibration curves, and ideally ICC profiles too) as files > which could then be shared with other users. This would solve another > difficulty that was brought up when we first started discussing > calibration and linearization - being able to *distribute* and share > settings. > > None of this detracts from the continued ability of software which uses > Gutenprint directly, like the advanced print plugin, or PhotoPrint, from > continuing to offer full control, but it could potentially make life > much more pleasant for "one-click-print" users. > > All the best, > -- > Alastair M. Robinson In many respects I agree with Alastair. GutenPrint really does need a separate administrative interface for these more advanced functions and this also needs to be tied to the basic end user UI so that admins can set things up so that these are presented to users in an easy to understand way. I also believe that the same thing is true, perhaps to a lessor extent, for all printer drivers. At this point I think the only drivers that have the potential to provide user control over calibration curves is GutenPrint but at some point in the not too distant future we will have printing work flows that implement ICC profiles that could/should be used by all drivers not just those from GutenPrint and current UI and admin interfaces do not provide any support for this. OK someone is likely to point out the cupsICCProfile settings that are now available in the PPD files. But these are NOT suitable for local use for a number of reasons. The basic issue that is causing so much difficultly is the static supplied by the driver vendor nature of the PPD files vs. the local nature of ICC profiles and custom printer calibration. PPD files were not designed for local customization but some way of creating local persistent customization is exactly what needs to happen to accommodate things like color management that are local in nature and that need to be customized for each installation. As an example it is desirable to have groups of settings that are associated with particular ICC profiles that are some how presented to users as a "preset" that can be selected in the end user UI. PhotoPrint does this although I think the UI for this in PhotoPrint could be improved. This is something that can not be done as part of the default PPD based configuration since much of this is installation specific and needs to be configured by the local admin or an advanced user to meet local requirements. After all only the local admin/users know what papers are going to be used and what settings were used to create the profiles for those papers and so on. With GutenPrint at some point this would also include things like custom linearization data. These presets should be presented to users in a way that makes it easy for them to understand what the preset means (IE. what specific printer this is for, what paper to load into the printer and what profile to use for proofing...). I do not think this belongs in the PPD structure although it might be possible to use the PPD file to divide these driver features into those that are intended for end users and those that are supported in the administrative interface. The thing to consider is that ICC profile support is implemented in the *toraster CUPS filters and it is not a feature of the print driver. I also agree with Peter to some extent although I don't think supporting both advanced and basic end users is contradictory it is just more difficult. The UI needs to be easy for less advanced end users and presenting too much complexity in the end user UI is contrary to this goal. At the same time I think that with a correctly designed administrative interface it should be possible for local admins and/or advanced users to configure local settings that hide this complexity from less advanced users who don't need or want to understand the underlying complexity. In other words this has the possibility to make things even simpler for end users if the local admin has the where with all to set things up correctly. I would go so far as to say that it should be possible for the local admin to hide UI settings and features that would normally be exposed to users by default so that there was total control over what was presented to local users. The problem is that we are trying to do everything in one UI when in reality we have what is end user functionality and administrative/advanced functionality and these need to some how be separated but still interrelated (IE. administrative changes can/should affect what is seen in the end user UI). Hal ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <49021D0B.4040708@apple.com>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <49021D0B.4040708@apple.com> @ 2008-10-25 0:46 ` Alastair M. Robinson 0 siblings, 0 replies; 19+ messages in thread From: Alastair M. Robinson @ 2008-10-25 0:46 UTC (permalink / raw) To: Michael R Sweet; +Cc: printing-architecture, gimp-print-devel Hi :) Michael R Sweet wrote: > Moreover, a fully data-driven > Gutenprint has the built-in capability to regenerate a PPD with the > current data, Does that include PPDs already assigned to an existing queue? (i.e. those in /etc/cups/ppd/) > The APPrinterPreset PPD keyword can already be used for this and has > been adopted by OpenPrinting... So assuming the answer to my previous question is "yes", our hypothetical admin tool could be used not only to tune or linearize existing Quick Presets from the Common Printing Dialog, but to directly create new ones. That is very cool. Is the value of APPrinterPreset available to the driver, BTW, or is it merely something that is used to set other variables automatically? If we're hoping to fetch tunings or linearization curves based on the preset, we would of course need to know which preset was selected! All the best, -- Alastair M. Robinson ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810251458.m9PEwS6D029068@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810251458.m9PEwS6D029068@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-25 17:43 ` Alastair M. Robinson [not found] ` <200810251857.m9PIvIdi030089@dsl092-065-009.bos1.dsl.speakeasy.net> 2008-10-25 22:38 ` Till Kamppeter 0 siblings, 2 replies; 19+ messages in thread From: Alastair M. Robinson @ 2008-10-25 17:43 UTC (permalink / raw) To: Robert Krawitz; +Cc: printing-architecture, gimp-print-devel Hi :) Robert Krawitz wrote: > When you get right down to it, Gutenprint at its core really is a > hardware driver (or a package of hardware drivers). It's not an > application the way GIMP is -- it's a piece of infrastructure. True - however it doesn't have the luxury enjoyed by other pieces of infrastructure of being isolated from end-users. If I go to localhost:631, click on my printer and hit Set Printer Options, I see a user-interface. CUPS *presents* this user-interface, but which controls I see and how they're grouped is determined by Gutenprint. It may not be an application, but there are user-facing aspects. Incidentally, Peter, if an option exists in the PPD but isn't tagged, what happens? Will it appear in the Common Printing Dialog? And what happens if an APPrinterPreset specifies a value for an untagged option? Will it still be set? I'm just wondering whether we can tag options which "fit" with the Common Printing Dialog, and leave the others in the PPD but untagged? > I don't mind if there are multiple applications or dialogs using > Gutenprint. However, I *do* mind if pressure for "one size fits all" > results in advanced users not having controls they need. At the same > time, it is essential to me that users with basic needs have a simple > print path. I can't argue with any of that. > One issue I do have is with the idea that modifying curves or presets > should be thought of as an administrative role. Certainly it's > something administrators might well do, to achieve common printing > results across a user base, but ordinary users may also need to > do things like this. Well, my original phrase was "Administrators and domain experts", so yes, I agree that admin rights shouldn't be a neccessity for accessing these facilities - though it should probably be a requirement for actually applying changes which impact all users. So ideally we need some way to store and transmit these settings on a per-user basis. Also note that as far as I know all the software which allows finest-grained control of Gutenprint's options currently uses Gutenprint directly, and thus RIPs the page client-side. (As would our hypothetical calibration / linearization / tuning tool). Robert, would the following state of affairs be acceptable in your view: * Software which prints via the Common Printing Dialog has user-access to a limited subset of options, much as PPD-based software does now if the Simplified PPDs are used. Additionally, if new presets, or modifications to existing presets (i.e. the PrintQuality / Media Type options) have been installed systemwide, they become available from the CPD. * Presets can be adjusted/created and tested (via client-side ripping) by a regular user, but admin rights would be needed to install the modified data systemwide, before the updated preset would be usable from the CPD. * Software which does client-side ripping (i.e. the Gutenprint GIMP plugin, PhotoPrint, etc.) continues to have access to the full raft of controls available to regular users. Additionally, local presets created in the tuning tool can be used, without them having to be installed systemwide. That much I think could be achieved relatively easily. Somewhat harder would be making modified presets available for use within the CPD without needing admin rights to install them. That, I think, would require a way of sending side-band information to CUPS/Gutenprint and having some way of storing it on the server on a per-user basis. This is something that might be desirable anyway, mind you; the current situation with default printer settings in CUPS (a choice between needing root access to set them, or allowing users to change the defaults systemwide) isn't ideal. All the best, -- Alastair M. Robinson ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810251857.m9PIvIdi030089@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810251857.m9PIvIdi030089@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-25 19:35 ` Alastair M. Robinson [not found] ` <200810251950.m9PJoeFa030284@dsl092-065-009.bos1.dsl.speakeasy.net> 0 siblings, 1 reply; 19+ messages in thread From: Alastair M. Robinson @ 2008-10-25 19:35 UTC (permalink / raw) To: Robert Krawitz; +Cc: printing-architecture, gimp-print-devel Hi :) Robert Krawitz wrote: > Right, but that's not efficient for printing large documents at high > resolution over a network. Agreed. > I don't think that that's quite good enough. I'm OK with having the > CPD itself provide only a limited set of options, as long as it's > possible for both users and administrators to create preset bundles > that may reference options not provided in the PPD file. Requiring > use of a client side RIP in order to use custom linearization curves > isn't acceptable to me. Fair enough - and I tend to agree - I'm just trying to figure out what we can do within the bounds of the current infrastructure, and whether, or to what extent, we need new facilities! > So someone might want to create a preset bundle that includes > linearization curves and other settings for a particular paper type, > resolution, and ink set (e. g. photo or matte inks). I think a user > should be able to do that just as well as an administrator. In the scenario I outlined, a user is able to do that. The sticking point is that actually *installing* it, so that the changes can be used via the CPD, would require admin rights. > Note that the preset bundle may actually be a large amount of data. Yes indeed. All the best, -- Alastair M. Robinson ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810251950.m9PJoeFa030284@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810251950.m9PJoeFa030284@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-26 0:41 ` Alastair M. Robinson [not found] ` <200810260049.m9Q0nTIw032617@dsl092-065-009.bos1.dsl.speakeasy.net> 0 siblings, 1 reply; 19+ messages in thread From: Alastair M. Robinson @ 2008-10-26 0:41 UTC (permalink / raw) To: Robert Krawitz; +Cc: printing-architecture, gimp-print-devel Hi :) Robert Krawitz wrote: > Right, but if the infrastructure's missing something, we need to know > what it is and if necessary how to work around it. What's missing, I think, is any way of storing persistent data server-side on a per-user basis. The cups filters have access to the name of a job's "owner", yes? So as far as I can see, fetching a user's overrides (for those parameters which are out-of-band as far as the Common Printing Dialog is concerned) would be easy enough if there were anywhere suitable to store them. > And that's a very big problem -- the whole point of creating presets > like this is to use them. Yup, absolutely. All the best, -- Alastair M. Robinson ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810260049.m9Q0nTIw032617@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810260049.m9Q0nTIw032617@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-26 1:18 ` Alastair M. Robinson [not found] ` <49049DC3.8000405@apple.com> 1 sibling, 0 replies; 19+ messages in thread From: Alastair M. Robinson @ 2008-10-26 1:18 UTC (permalink / raw) To: Robert Krawitz; +Cc: printing-architecture, gimp-print-devel Hi :) Robert Krawitz wrote: > Why does it have to be server-side? The print dialog could implement > it. Well, this whole discussion started with the question of how gutenprint will work with the Common Printing Dialog. You said: "There are a lot of low level ink controls that I would be happy to move elsewhere, but it's not clear to me where that "elsewhere" is provided." I'm brainstorming here - simply exploring the idea that it may fall to Gutenprint to create that "elsewhere" for itself, out-of-band as far as the main printing dialog goes. Making out-of-band data available to the print filters without requiring admin permissions is not an easy problem to solve, but it's one that we need to solve at some point anyway, I think, in order to support the easy creation and sharing of linearization curves. All the best, -- Alastair M. Robinson ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <49049DC3.8000405@apple.com>]
[parent not found: <200810261653.m9QGrk2l014877@dsl092-065-009.bos1.dsl.speakeasy.net>]
[parent not found: <490530BC.9090803@apple.com>]
[parent not found: <200810271054.m9RAsDLs001975@dsl092-065-009.bos1.dsl.speakeasy.net>]
[parent not found: <alpine.LNX.1.10.0810281134060.17582@nelson.suse.de>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <alpine.LNX.1.10.0810281134060.17582@nelson.suse.de> @ 2008-10-28 12:59 ` Till Kamppeter 2008-10-28 15:19 ` Till Kamppeter 0 siblings, 1 reply; 19+ messages in thread From: Till Kamppeter @ 2008-10-28 12:59 UTC (permalink / raw) To: Johannes Meixner; +Cc: printing-architecture, gimp-print-devel Johannes Meixner wrote: > Hello, > > On Oct 27 06:54 Robert Krawitz wrote (shortened): >> Date: Sun, 26 Oct 2008 20:08:44 -0700 >> From: Michael R Sweet <msweet@apple.com> >> >> Robert Krawitz wrote: >> > Date: Sun, 26 Oct 2008 09:41:39 -0700 >> > From: Michael R Sweet <msweet@apple.com> >> > >> > Unless we want the print dialog to pass the XML data needed by the >> > driver (not a good idea IMHO), that data will need to be on the >> > "server" (I use quotes because most of the printing done to >> > consumer/ prosumer inkjets is done from a single system) and then >> > referenced by the print dialog, probably via an option choice >> > and/or preset that is passed instead. >> > >> > Why would it be a bad idea to pass it in from the client? >> >> Oh, I don't know, maybe just that passing a shitload of real numbers >> with every print job is incredibly inefficient and totally non-user- >> friendly? >> >> For example, you'd be looking at 1MB of data for 16-bit LUTs for an 8 >> color printer. I hope you've been working on your typing! >> >> That's why I think the dialog should be able to grab per-user presets >> out of a client-side .cups_presets or whatever file. > > The latter would introduce another new kind of file type > (beside ~/cups/.lpoptions). > > > What about having the possibility sending print job options > which are actually bigger pieces of whatever data > as print job files and have well known predefined MIME rules > on the server so that only on the server there is the special > knowledge that whatever special data type as print job file > is actually a job option? > > E.g. something like > > lp -d queue-name file.optiondata file.postscript > > I think a problem is how to avoid that file.optiondata > is actually printed on an older CUPS version server. > > Perhaps it could work to have its MIME type so that > on an older version server it is recognized as > application/octet-stream > so that such data is not printed by default? > > > Perhaps it would be better (i.e. cause less conflicts) > when a normal user could upload a print job options file > to the server e.g. via > > lp -d queue-name -o job-options-upload file.optiondata > > and use it later as often as he likes via > > lp -d queue-name -o job-options-file=file.optiondata file.postscript > > The server would store the uploaded job options files > separated for each user name. > > The server should have appropriate "MaxJobOptionsFiles" and > "MaxJobOptionsFilesPerUser" settings with reasonable defaults > in its cupsd.conf file. CUPS has a concept for that and Gutenprint already supports it for head cleaning. The command file "printing" concept. You send a file with special commands and the mime.types system of CUPS recognizes it as command file, directing it into a "commandto..." filter supplied by the Gutenprint package. This "commandto..." filter could also save advanced options per-user and Gutenprint's "rastertogutenprint" filter could read them according to the user name of the sending user. A certain command in a command file could also send back the current configuration, so that the user can see his settings. As CUPS filters are all run by the "lp" user, all settings are stored in a file (system) with read/write access by "lp". The command files do not need to be hand-written, they can be created by the advanced settings GUI of Gutenprint and/or by the GIMP plug-in. They can also be of arbitrary length, for example with an embedded ICC profile. Disadvantage of the concept is that users cannot configure while the printer is printing (if one does not create an extra queue only for configuring, but this would look ugly in the printing dialogs of applications). Till ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 2008-10-28 12:59 ` Till Kamppeter @ 2008-10-28 15:19 ` Till Kamppeter [not found] ` <49074E92.5020809@apple.com> 0 siblings, 1 reply; 19+ messages in thread From: Till Kamppeter @ 2008-10-28 15:19 UTC (permalink / raw) To: Johannes Meixner; +Cc: printing-architecture, Michael Sweet, gimp-print-devel Till Kamppeter wrote: > > CUPS has a concept for that and Gutenprint already supports it for head > cleaning. The command file "printing" concept. You send a file with > special commands and the mime.types system of CUPS recognizes it as > command file, directing it into a "commandto..." filter supplied by the > Gutenprint package. This "commandto..." filter could also save advanced > options per-user and Gutenprint's "rastertogutenprint" filter could read > them according to the user name of the sending user. A certain command > in a command file could also send back the current configuration, so > that the user can see his settings. > > As CUPS filters are all run by the "lp" user, all settings are stored in > a file (system) with read/write access by "lp". > > The command files do not need to be hand-written, they can be created by > the advanced settings GUI of Gutenprint and/or by the GIMP plug-in. They > can also be of arbitrary length, for example with an embedded ICC profile. > > Disadvantage of the concept is that users cannot configure while the > printer is printing (if one does not create an extra queue only for > configuring, but this would look ugly in the printing dialogs of > applications). > > Till > This approach would be a concept where user settings are saved on the print server, So one user (identified by his user name) can use the settings from several clients. The options and quick preset buttons in the Common Printing Dialog cannot be influenced by the user's settings, They depend solely on the PPD file and each print queue has only one PPD which does not change depending on the requesting user. To let one and the same user save several settings, he would need to have a fixed amount of "slots" on the server and the PPD should contain an options to select one of the "slots". There can be special quick preset buttons for that or it can simply be an option which appears somewhere in the dialog. Another concept would be the following: Let us assume that CUPS can take options with arbitrary string length (Mike, is this correct?). Then we could send an arbitrary file containg, option settings, ICC profiles, job ticket, ... as argument of an option. Only condition is that the expression is ASCII without spaces, but we can UU-encode binary files. The Gutenprint driver (rastertogutenprint) could accept a string option named "FineTuning" which takes the configuration file which the user's fine adjustment GUI for Gutenprint generates as one long string. rastertogutenprint reads the option from the fifth command line argument. So the user sets a lot of fine adjustments, and also selects an ICC profile with Gutenprint's advanced settings GUI. The GUI puts the settings into an ASCII representation and saves this representation in ~/.cups/lpoptions as a huge line like: Dest epson FineTuning=blablabla... Then CUPS sends this string with every job to the server and rastertogutenprint parses these settings and uses them. The FineTuning option will not be mentioned in the PPD files, so that it does not appear in the printing dialogs. With this approach there does not need to be saved any user data on the server, the user can tune and save settings whenever he wants, also while the printer printer is printing. The user can also save any number of settings using CUPS' concept of printer instances. Disadvantage is that all configuration info is in the user's home directory on the client. If he accesses with several clients, the clients do not provide necessarily the same settings. Also the length of the string which can be passed with one option can be limited, but here pne could perhaps let rastertogutenprint accept more than one "hidden" option. WDYT? Which of the two approaches should we use? The server-centralized way controlled by the user's client GUI "printing" command files or the client-based solution where the GUI saves the options as personal settings and they get submitted with every print job? Till ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <49074E92.5020809@apple.com>]
[parent not found: <alpine.LNX.1.10.0810290940570.3548@nelson.suse.de>]
[parent not found: <200810310048.m9V0mDYI005128@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810310048.m9V0mDYI005128@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-31 1:53 ` Alastair M. Robinson 0 siblings, 0 replies; 19+ messages in thread From: Alastair M. Robinson @ 2008-10-31 1:53 UTC (permalink / raw) To: Robert Krawitz Cc: printing-architecture, Johannes Meixner, mike, gimp-print-devel Hi :) Robert Krawitz wrote: > I've been reading all this, but not responding; partly I've been busy > and partly I'm curious what other folks think. Ditto - I've been following the posts but not taking part for the last few days, though I have fleshed out the Wiki a little since my last mail on the subject. > I'm still not a fan of requiring administrative privileges to use > particular driver options of this kind that don't affect persistent > state within the printer (and hence might have security implications). Security implications are something I've been thinking about, actually. In theory, it's possible for a printer to be damaged by feeding it pathological input. Colour laser printers respond badly, I believe, to being asked to print a solid page of 100% C+M+Y+K. Malicious linearization curves could potentially result in flooding an inkjet, too, I'd imagine. > If something doesn't affect the system configuration or integrity it > shouldn't require administrative privilege. Agreed. Our difficulty is allowing users to set these options in a way that makes them accessible to the driver running on the server but doesn't affect other users' jobs. (Note that the current CUPS configuration as shipped by Ubuntu - at least in 8.04 - fails on this point. Any user with lp privileges can set printer options which affect all other users.) Oh, one other thing I've been wondering - are there currently, or are there likely to be in future, any printer models which support head-alignment, but don't have built-in persistent storage for that alignment? > But I suppose I'm on the > extreme end of maximum configurability and exposing (appropriately -- > which I might define differently from others) every possible option to > the user, even if it allows someone to do absolutely absurd things. "UNIX was not designed to stop its users from doing stupid things, as that would also stop them from doing clever things." -- Doug Gwyn > But there is a free RIP around Gutenprint (PhotoPrint) that could be > extended to allow people to do this, True - when I eventually get round to supporting curves! > So the question is, how do we move along to that point? Earlier today I began "thinking aloud" on that subject on the Wiki, and took the first steps to adding "DeviceN" support to PhotoPrint's imaging stack, in preparation for printing out raw per-channel linearization targets. Could you outline roughly how you currently go about tuning a new, unknown printer, step-by-step? Understanding the steps and the order in which they occur may be helpful in figuring out where the colour instrument can help with the process, and how best to go about making the results shareable. All the best, -- Alastair M. Robinson ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 2008-10-25 17:43 ` Alastair M. Robinson [not found] ` <200810251857.m9PIvIdi030089@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-25 22:38 ` Till Kamppeter [not found] ` <200810252249.m9PMnrSo030956@dsl092-065-009.bos1.dsl.speakeasy.net> 1 sibling, 1 reply; 19+ messages in thread From: Till Kamppeter @ 2008-10-25 22:38 UTC (permalink / raw) To: Alastair M. Robinson Cc: Robert Krawitz, printing-architecture, gimp-print-devel Alastair M. Robinson wrote: > Hi :) > > Robert Krawitz wrote: > >> When you get right down to it, Gutenprint at its core really is a >> hardware driver (or a package of hardware drivers). It's not an >> application the way GIMP is -- it's a piece of infrastructure. > > True - however it doesn't have the luxury enjoyed by other pieces of > infrastructure of being isolated from end-users. If I go to > localhost:631, click on my printer and hit Set Printer Options, I see a > user-interface. CUPS *presents* this user-interface, but which controls > I see and how they're grouped is determined by Gutenprint. It may not > be an application, but there are user-facing aspects. > > Incidentally, Peter, if an option exists in the PPD but isn't tagged, > what happens? Will it appear in the Common Printing Dialog? > And what happens if an APPrinterPreset specifies a value for an untagged > option? Will it still be set? > See my specs of the PPD extensions for the Common Printing Dialog: http://www.linuxfoundation.org/en/OpenPrinting/PPDExtensions Untagged PPDs will use the PPD groups as tags as a fallback. So options will be shown in a reasonable order, But the advantage of one option baing able to have more than one tag is not made use of with this fallback. Each APPrinterPreset will create a quick preset button in the left column of the dialog. And the button will always set all options which it is supposed to set, independent of tags and groups. > I'm just wondering whether we can tag options which "fit" with the > Common Printing Dialog, and leave the others in the PPD but untagged? > If we leave options untagged or if we have too many tags, all these options will fall under the last tag. So if we have many of them, the last tag will get very crowded. This is more intended as a legacy fallback, for example for manufacturer-supplied PPDs. Till ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810252249.m9PMnrSo030956@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810252249.m9PMnrSo030956@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-26 9:59 ` Till Kamppeter 0 siblings, 0 replies; 19+ messages in thread From: Till Kamppeter @ 2008-10-26 9:59 UTC (permalink / raw) To: Robert Krawitz; +Cc: printing-architecture, gimp-print-devel Robert Krawitz wrote: > Date: Sun, 26 Oct 2008 00:38:58 +0200 > From: Till Kamppeter <till.kamppeter@gmail.com> > MIME-Version: 1.0 > CC: Robert Krawitz <rlk@alum.mit.edu>, > printing-architecture@lists.linux-foundation.org, > gimp-print-devel@lists.sourceforge.net, peter@mmiworks.net > Content-Type: text/plain; charset=UTF-8; format=flowed > > Alastair M. Robinson wrote: > > Hi :) > > > > Robert Krawitz wrote: > > > >> When you get right down to it, Gutenprint at its core really is a > >> hardware driver (or a package of hardware drivers). It's not an > >> application the way GIMP is -- it's a piece of infrastructure. > > > > True - however it doesn't have the luxury enjoyed by other pieces of > > infrastructure of being isolated from end-users. If I go to > > localhost:631, click on my printer and hit Set Printer Options, I see a > > user-interface. CUPS *presents* this user-interface, but which controls > > I see and how they're grouped is determined by Gutenprint. It may not > > be an application, but there are user-facing aspects. > > > > Incidentally, Peter, if an option exists in the PPD but isn't tagged, > > what happens? Will it appear in the Common Printing Dialog? > > And what happens if an APPrinterPreset specifies a value for an untagged > > option? Will it still be set? > > See my specs of the PPD extensions for the Common Printing Dialog: > > http://www.linuxfoundation.org/en/OpenPrinting/PPDExtensions > > Untagged PPDs will use the PPD groups as tags as a fallback. So options > will be shown in a reasonable order, But the advantage of one option > baing able to have more than one tag is not made use of with this fallback. > > What happens if there are more than 11 or what have you PPD groups? > Same as what you describe below? > Yes. > Each APPrinterPreset will create a quick preset button in the left > column of the dialog. And the button will always set all options > which it is supposed to set, independent of tags and groups. > > What's the upper limit on the number of presets? > There is no upper limit defined. Peter, what should happen if there are too many quick preset buttons to fit into the area on the left? Till ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810201403.26403.hvengel@astound.net>]
[parent not found: <200810210026.m9L0Qnd5008431@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] [Openicc] Looking ahead to 5.3 [not found] ` <200810210026.m9L0Qnd5008431@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-22 17:15 ` Hal V. Engel 0 siblings, 0 replies; 19+ messages in thread From: Hal V. Engel @ 2008-10-22 17:15 UTC (permalink / raw) To: gimp-print-devel, printing-architecture On Monday 20 October 2008 17:26:49 Robert Krawitz wrote: > From: "Hal V. Engel" <hvengel@astound.net> > Date: Mon, 20 Oct 2008 14:03:25 -0700 > > On Monday 20 October 2008 09:37:40 Michael R Sweet wrote: > > If we > > also want to profile the individual color channels and modify the > > RGB-to-DeviceN and CMYK-to-DeviceN mappings, I recommend having a > > printer command (using the same interface we add for status > > monitoring and head alignment) that prints the linearization target(s) > > instead, with enough parameters to satisfy Robert. :) > > This would be ideal but would require some work by the driver suppliers. > > Right -- and that's what we (Gutenprint) need requirements for. I wish I had more expertise in this specific area so that I could provide those requirements at some level of detail. I think for the most part that the GutenPrint Epson drivers are now well positioned for this but I don't know that for sure. I know that Graeme Gill started working on a set of utilities to create linearization corrections but I think he got side tracked with other work. Graeme at one time worked for a RIP vendor and he is the open source subject matter expert in this area. > > Actually, for printing linearization targets you really don't want any > of the fancy options. The elaborate options are more for unmanaged > environments or for people who have funky inks or papers. You'd use > Raw or Density color correction mode, either with CMYK or DeviceN > input (which is also confusingly enough called Raw, but in a different > context). > > We currently have a test pattern generator that can do a lot of this > stuff, but it could also be done through the CUPS interface. > > > I'd then also suggest that we add support for user profiles and/or > > drivers, such that a user could "install" XML files that would be > > "merged" with the standard/base files included with Gutenprint to > > determine which drivers, media types, ink sets, etc. are available. > > Clearly something like this is needed both to support the > calibration and profiling process and to expose this in the UI and > to allow admins to control printer setup for users. > > We do have STP_DATA_PATH. It won't really let you merge data in quite > this way; you'd have to copy the file from the system path into the > user path. Then there's the matter of getting the PPD files in sync > with this (you might add new media types to the customized data file), > and getting an arbitrary file through CUPS somehow. > > > All that would be necessary after that would be an application > > that prints the targets, measures then, generates the profiles, > > We already have much of this for the ICC profile part but we > currently do not have anything for handing the > calibration/linearization part. > > This seems to be one of the sticky areas. Agreed but there is lots of other work to be done to get the printing work flow to use ICC profiles. Since this should be the highest priority CM related printing project I think that we should not be too concerned about calibration/linearization issues until that is in place. > > > and > > installs them so they can be used by Gutenprint. (Yes, I am aware > > that this is probably the most difficult part of the > > implementation...) > > Yes It is probably the most involved part of this and I think it > will be some time before we can tackle the > calibration/linearization part of this. I think the focus should > be on making the printing work flow and UI function correctly with > RGB and CMYK ICC profiles since we already have software to handle > the creation of these profiles and to implement > calibration/linearization and device-N support after basic ICC > profile support is in place. I think it should be possible to have > this all working correctly with ICC profiles, at least with > development versions of the various software systems involved, with > in the next 6 to 12 months. > > That sounds like you're taking a longer-term view about Gutenprint and > aren't looking for any short-term changes. Is that correct? From a color management perspective that is correct. I think the current focus should be on getting the rest of the printing work flow so that it uses ICC profiles in the *toraster filters (at least with PDF input files). This would make basic CM ubiquitous and driver independent. That would still leave lots of related work for those that support the drivers. For example, as ICC profile support was being added to the printing work flow printer vendors and driver authors would need to think about things like what default ICC profiles would ship with the drivers and issues related to this with PPD files, for example incorrect paths for cupsICCProfile settings, would need to be fixed. On the other hand there is no reason that work on instrument driven calibration/linearization couldn't be going on in parallel since these are not dependent on each other and in the end we do want both capabilities. But I think this is a lower priority. Calibration/linearization would involve work at the driver/GutenPrint level but it sounds to me like the work that was done on the Epson drivers to make things data driven rather than hard coded has positioned those drivers to make that work possible although there may be more things that need to be done. It also sounds like this same work needs to be done with other GutenPrint drivers like the Canon driver. Perhaps getting all of the drivers into the same state should be the current focus of GutenPrint with respect to color management. From my point of view I want to avoid trying to take steps that are so big that it causes significant resistance (IE. I don't want to overwhelm the teams working on the printing related stuff) and I would like to see this broken down into a series of smaller easier to accomplish steps that each build on the previous steps. Hal ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810260141.m9Q1fdci000540@dsl092-065-009.bos1.dsl.speakeasy.net>]
[parent not found: <4904A0EA.4030508@apple.com>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <4904A0EA.4030508@apple.com> @ 2008-10-26 18:40 ` Hal V. Engel [not found] ` <200810261904.m9QJ423w015373@dsl092-065-009.bos1.dsl.speakeasy.net> 0 siblings, 1 reply; 19+ messages in thread From: Hal V. Engel @ 2008-10-26 18:40 UTC (permalink / raw) To: gimp-print-devel; +Cc: printing-architecture On Sunday 26 October 2008 09:55:06 Michael R Sweet wrote: > Robert Krawitz wrote: > > Date: Sun, 26 Oct 2008 01:18:30 +0000 > > From: "Alastair M. Robinson" <blackfive@fakenhamweb.co.uk> > > > > Robert Krawitz wrote: > > > Why does it have to be server-side? The print dialog could > > > implement it. > > > > Well, this whole discussion started with the question of how > > gutenprint will work with the Common Printing Dialog. > > > > Yeah, well, I'm not assuming that the implementation (at least) of the > > CPD can't be changed. Nor am I assuming that CUPS can't be changed > > (which it would need to be anyway, in order to handle curves). This > > Um, CUPS doesn't have to be changed to support curves aka LUTs - the > existing 1setOf functionality handles arbitrarily long arrays of data. > > Whether it makes sense to pass all that data as part of the job is > another matter - I personally don't believe it does since it is > highly driver-specific and something the user is likely to generate > once and reference multiple times. I agree with this. > > IOW, I don't see a user (or program) doing this: > > lp -o gutenprint-cyan-curve=0,0.01,0.012,...,1.0 filename > > Instead, I would expect them to use: > > lp -o stpUserProfile=AcmeLustreGray filename > > where "AcmeLustreGray" is a profile that the user created using a > Gutenprint-specific profiling/admin application. This profile would > be "installed" on the system that is actually doing the printing. > This would not necessarily require root privileges to do as user- > specific profile directories are easy to do and CUPS does not require > root access to update a printer as long as the distro/OS puts users in > the system group (lpadmin or sys depending on the system). I am a little confused (sorry). I can't find any documentation on stpUserProfile anywhere. Could you provide an explanation? Hal ^ permalink raw reply [flat|nested] 19+ messages in thread
[parent not found: <200810261904.m9QJ423w015373@dsl092-065-009.bos1.dsl.speakeasy.net>]
* Re: [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 [not found] ` <200810261904.m9QJ423w015373@dsl092-065-009.bos1.dsl.speakeasy.net> @ 2008-10-26 21:23 ` Hal V. Engel 0 siblings, 0 replies; 19+ messages in thread From: Hal V. Engel @ 2008-10-26 21:23 UTC (permalink / raw) To: Robert Krawitz; +Cc: printing-architecture, gimp-print-devel On Sunday 26 October 2008 12:04:02 Robert Krawitz wrote: > From: "Hal V. Engel" <hvengel@astound.net> > Date: Sun, 26 Oct 2008 11:40:26 -0700 > > On Sunday 26 October 2008 09:55:06 Michael R Sweet wrote: > > Robert Krawitz wrote: > > > Date: Sun, 26 Oct 2008 01:18:30 +0000 > > > From: "Alastair M. Robinson" <blackfive@fakenhamweb.co.uk> > > > > > > Robert Krawitz wrote: > > > > Why does it have to be server-side? The print dialog could > > > > implement it. > > > > > > Well, this whole discussion started with the question of how > > > gutenprint will work with the Common Printing Dialog. > > > > > > Yeah, well, I'm not assuming that the implementation (at least) of > > > the CPD can't be changed. Nor am I assuming that CUPS can't be > > > changed (which it would need to be anyway, in order to handle > > > curves). This > > > > Um, CUPS doesn't have to be changed to support curves aka LUTs - the > > existing 1setOf functionality handles arbitrarily long arrays of data. > > > > Whether it makes sense to pass all that data as part of the job is > > another matter - I personally don't believe it does since it is > > highly driver-specific and something the user is likely to generate > > once and reference multiple times. > > I agree with this. > > I don't disagree. I just don't think that the fact that something's > not likely to be done all that often is a good reason to consider it > an "administrative" task that requires administrator privilege. I didn't read Michael's statement as saying that this would always require administrative privilege. What I was agreeing with was that this was a create once (or at least only once in a while) and use often type of thing. Because of that I think that it makes sense to avoid transmitting this data to the print server for every job if possible. But I also agree with you that it should be possible for ordinarily users to create calibration data sets and use them without the need for administrative rights. If that use case means that the calibration data needs to be passed to the back end with each job then that must be allowed but that also implies that there is a way to pass a file and other than the actual document to be printed I don't think this is allowed for files that are not installed in the /usr/cups/... directories. > > > IOW, I don't see a user (or program) doing this: > > > > lp -o gutenprint-cyan-curve=0,0.01,0.012,...,1.0 filename > > > > Instead, I would expect them to use: > > > > lp -o stpUserProfile=AcmeLustreGray filename > > > > where "AcmeLustreGray" is a profile that the user created using a > > Gutenprint-specific profiling/admin application. This profile would > > be "installed" on the system that is actually doing the printing. > > This would not necessarily require root privileges to do as user- > > specific profile directories are easy to do and CUPS does not require > > root access to update a printer as long as the distro/OS puts users in > > the system group (lpadmin or sys depending on the system). > > I am a little confused (sorry). I can't find any documentation on > stpUserProfile anywhere. Could you provide an explanation? > > It doesn't exist, at least right now -- Mike was just using this as an > example. So something like this would be a new driver option that would be added to the GutenPrint driver that could be set to point to a calibration file that would be used by the driver? Of course this implies that users can somehow setup a "AcmeLustreGray" calibration data set so that a driver like GutenPrint could use it. Another source of confusion for me is that I though that the /usr/share/cups/profiles directory was for ICC profiles but I guess that could also contain calibration data sets. The other issue is how would this work in the general case? I could see this being OK, but perhaps not ideal, when the print server is located on the same machine as the users. But what happens if the print server is located on the network or what if the printer is shared (which is the same as being on the network)? How would users "install" their own ICC Profiles and calibration data sets? In addition for network printers with administratively installed ICC profiles and calibration data sets how can these be discovered by ordinarily users so that these can be used? For calibration data this is a smaller issue since users do not need to have direct access to the calibration data since these could be encapsulated and hidden in presets that were created by the administrator that would show up in the CPD. But users do need to be able to discover and get copies of ICC profiles to be able to do soft proofing and this would not be possible on a networked printer at least not without some new features in the print system. For the new PDF printing work flow the ICC Profile issues could become moot if things are properly designed. The PDF format allows for there to be an embedded output profile as well as profiles for individual objects in the document and the PDF specification calls for PDF rasterization software to use that output profile if it finds one in the file. In other words the PDF document file could be used to transmit the output profile information to the print server and then the requirement that output profiles be located in a certain location goes away. Of course this functionality would have to be implemented in the CPD and the rest of the printing work flow since it is currently unsupported. Hal ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2008-10-31 1:53 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200810132357.m9DNvMRf015955@dsl092-065-009.bos1.dsl.speakeasy.net>
[not found] ` <48FB37A3.8090007@gmail.com>
[not found] ` <200810191602.m9JG2D84030719@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-22 14:49 ` [Printing-architecture] [Gimp-print-devel] Looking ahead to 5.3 Till Kamppeter
2008-10-22 15:17 ` peter sikking
[not found] ` <200810230019.m9N0JCIp018128@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-24 8:52 ` peter sikking
2008-10-24 10:08 ` Till Kamppeter
2008-10-24 12:35 ` Alastair M. Robinson
2008-10-24 18:34 ` Hal V. Engel
[not found] ` <49021D0B.4040708@apple.com>
2008-10-25 0:46 ` Alastair M. Robinson
[not found] ` <200810251458.m9PEwS6D029068@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-25 17:43 ` Alastair M. Robinson
[not found] ` <200810251857.m9PIvIdi030089@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-25 19:35 ` Alastair M. Robinson
[not found] ` <200810251950.m9PJoeFa030284@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-26 0:41 ` Alastair M. Robinson
[not found] ` <200810260049.m9Q0nTIw032617@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-26 1:18 ` Alastair M. Robinson
[not found] ` <49049DC3.8000405@apple.com>
[not found] ` <200810261653.m9QGrk2l014877@dsl092-065-009.bos1.dsl.speakeasy.net>
[not found] ` <490530BC.9090803@apple.com>
[not found] ` <200810271054.m9RAsDLs001975@dsl092-065-009.bos1.dsl.speakeasy.net>
[not found] ` <alpine.LNX.1.10.0810281134060.17582@nelson.suse.de>
2008-10-28 12:59 ` Till Kamppeter
2008-10-28 15:19 ` Till Kamppeter
[not found] ` <49074E92.5020809@apple.com>
[not found] ` <alpine.LNX.1.10.0810290940570.3548@nelson.suse.de>
[not found] ` <200810310048.m9V0mDYI005128@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-31 1:53 ` Alastair M. Robinson
2008-10-25 22:38 ` Till Kamppeter
[not found] ` <200810252249.m9PMnrSo030956@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-26 9:59 ` Till Kamppeter
[not found] ` <200810201403.26403.hvengel@astound.net>
[not found] ` <200810210026.m9L0Qnd5008431@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-22 17:15 ` [Printing-architecture] [Gimp-print-devel] [Openicc] " Hal V. Engel
[not found] ` <200810260141.m9Q1fdci000540@dsl092-065-009.bos1.dsl.speakeasy.net>
[not found] ` <4904A0EA.4030508@apple.com>
2008-10-26 18:40 ` [Printing-architecture] [Gimp-print-devel] " Hal V. Engel
[not found] ` <200810261904.m9QJ423w015373@dsl092-065-009.bos1.dsl.speakeasy.net>
2008-10-26 21:23 ` Hal V. Engel
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.