From: Robert K. <rl...@al...> - 2021-02-25 18:30:10
|
On 2/25/21 10:09 AM, Matt Broughton wrote: > > >> On Feb 24, 2021, at 11:30 AM, Robert Krawitz <rl...@al...> wrote: >> >> On 2/24/21 11:12 AM, Matt Broughton wrote: >>> >>> >>>> On Feb 24, 2021, at 8:50 AM, Robert Krawitz <rl...@al...> wrote: >>>> Yes. This is suggesting that it's likely the number of options or number of pages of options that's >>>> the problem. It could still be paper sizes, since the simplified PPD contain fewer. >>>> >>>> One other thing to try would be the full PPD for a color laser printer. This contains a lot of >>>> options, but even the full PPD files support fewer media sizes with laser printers. >>> >>> The full PPD for the "Generic PCL Color Laser LF Printer" works fine. All the options are there -- General, Output Control Common, Output Control Extra 1-5. >>> >>> There are 19 ImageableArea entries. A check of the ImageableAreas shows no duplicates in size or Landscape of another size. >> >> OK. If you're willing to muck with a little bit of code and rebuild, or alternatively edit PPD >> files by hand, there's something else I'd like to try, to reduce the number of page sizes (either >> alternative): >> >> 1) Reduce the maximum number of paper sizes in genppd. That will require making a small change to >> it, rebuilding, and regenerating the PPD file(s). You can try number other than 20 to try to narrow >> down where it happens (which would be useful). If you still have problems with 20 page sizes, the >> problem lies elsewhere. >> >> diff --git a/src/cups/genppd.c b/src/cups/genppd.c >> index aa47aad8..f132a0d9 100644 >> --- a/src/cups/genppd.c >> +++ b/src/cups/genppd.c >> @@ -467,6 +467,8 @@ print_page_sizes(gpFile fp, stp_vars_t *v, int simplified, >> >> stp_describe_parameter(v, "PageSize", &desc); >> num_opts = stp_string_list_count(desc.bounds.str); >> + if (num_opts > 20) >> + num_opts = 20; >> the_papers = stp_malloc(sizeof(paper_t) * num_opts); >> for (i = 0; i < num_opts; i++) >> { >> >> 2) Manually edit one of the failing PPD files to cut down on the number of page sizes. There are >> four places you need to edit, and you need to make sure to have the same page sizes at each point: >> >> *OpenUI *PageSize/Media Size: PickOne >> *OpenUI *PageRegion/Media Size: PickOne >> *DefaultImageableArea: Letter >> *DefaultPaperDimension: Letter > > Unfortunately that didn't solve the problem. Nothing showed for Printer Features trying to print from Preview app. I also tried BBEdit (a great text editor) and it crashed as soon as I opened the Printer Features menu. I was able to grab the Console log, the System log, and the crash report from BBEdit later today. So that suggests that the problem isn't with paper sizes (or that there's another problem). Next step is around line 1222 in genppd.c: int maximum_level = simplified ? STP_PARAMETER_LEVEL_BASIC : STP_PARAMETER_LEVEL_ADVANCED4; Please change STP_PARAMETER_LEVEL_BASIC first to STP_PARAMETER_LEVEL_ADVANCED4 then 3, 2, and 1 to see when (and if) things start working again. |