|
From: Gernot H. <aik...@gm...> - 2017-03-04 17:53:53
|
On Thu, Mar 2, 2017 at 2:36 AM, Solomon Peachy <pi...@sh...> wrote: > On Thu, Mar 02, 2017 at 12:24:31AM +0900, Gernot Hassenpflug wrote: >> Done except for Oufku Card, since the defined orientation in >> papers.xml is wrong: the Canon driver wants it to be w567h420 rather >> than w420h567 (well, in units of 1/600 inches). > > It's a lot of work in the short term, but in the longer term it may make > more sense to have the Canon driver do its own paper management, perhaps > similar-ish to how the Dyesub driver does things. Effectively it means > unique paper types for the Canon driver, but they can re-use standard > names. Hello Solomon and all, Here is my report for why the Canon driver (on my system at least) seems to be behaving so weirdly with papersizes. In fact, there does not seem to be any problem as long as the papersize is correctly passed in to gutenprint, and here it gets weird, because while gutenprint papers.xml defines the names that the canon driver uses, nor even seem to relate to names in CUPS standard definitions (/usr/share/cups/ppds/media.defs). So the situation is that the names displayed in the CUPS interface are often not the gutenprint names at all (as seen in the PPD), and in the worst case the displayed name is in fact the wrong one (e.g., B5 displayed for B5 ISO), while the real name to use is unrecognizable (e.g., JB5 for B5 JIS). A related issue is that although papers.xml seems to have separate papersizes for landscape for several papersizes, very few of them show up in the papersize selection. I have no idea what logic is used to build the papersize selection that the CUPS interface uses. I thought that, also from Solomon's explanation above, that the gutenprint driver could reuse standard names, but it seems that the names the gutenprint driver uses are overwritten by something else. If the user manages to find the right papersize name in this muddle, then the Canon driver gets the correct papersize input (i.e., gutenprint name from papers.xml), else the Canon driver determines that the papersize is custom (which is correct behaviour). It does appear that some papersizes, although selected in the CUPS interface, get replaced by other ones somewhere in the process of reaching gutenprint. For instance, selecting JB5 results in a name of B5 reaching gutenprint, which corresponds to the B5 JIS seen in the PPD. On the other hand, selecting Hagaki Card or Oufuku Card results in the Postcard or Wide Postcard (actually hagaki (postcard) or Wide Postcard in the CUPS selection) page dimensions (which are slightly different from the Hagaki Card or Oufuku Card dimensions), but the papersize string is given as "Letter". > Basically, the dimensions the printer needs should be reflected > accurately in the ppds so that CUPS will supply data with the correct > aspect ratio. Many full-bleed dyesub printers proved to be particularly > sensitive to this.. In this case the names are muddled and although the sizes are (mostly) present it is really hard to figure out which to choose since many names are. I am sure doing what Solomon did with the dye-sub driver would be a good way to control things, but first I need to understand what on earth is involved in building the papersize selection, and where the various names and aliases are coming from. And then why something as innocuous as Hagaki Card could possibly become in dimensions a closely-matching other papersize (Postcard) but be diagnosed as Letter in the papersize string. I'll post a list of the comparitive names seen in the gutenprint papers.xml, PPD (and CUPS media.defs) and actual CUPS interface GUI later tomorrow. Best regards, Gernot |