Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to print multiple files to a local printer #643

Closed
Japhier opened this issue Mar 27, 2023 · 10 comments · Fixed by #729
Closed

Unable to print multiple files to a local printer #643

Japhier opened this issue Mar 27, 2023 · 10 comments · Fixed by #729
Labels
bug Something isn't working printer specific issue The issue is connected to a specific printer priority-medium waiting for reporter There are data requested from the reporter

Comments

@Japhier
Copy link

Japhier commented Mar 27, 2023

Describe the bug
i use command: lp -d printer 1.png 2.png;
but result is only printing 1.png and cups report error: print job canceled at printer(but i didn't cancel at printer)
i have test in HP printer and deli printer, see also as #5819

in code , i haved used cupsPrintFiles api, but have the same problem

cups version: v2.4.2

@zdohnal
Copy link
Member

zdohnal commented Mar 27, 2023

Hi @Japhier ,

if you use a temporary queue, it seems some models are affected by this issue - there is an question about the same thing with Brother printer #634 . I've tested it on HP Color LaserJet Pro M277dw and it worked for me, but my Canon MF443 printer has the issue. It looks it differs from model to model...

@zdohnal zdohnal added bug Something isn't working priority-medium printer specific issue The issue is connected to a specific printer labels Mar 27, 2023
@michaelrsweet
Copy link
Member

Does adding *cupsSingleFile: true to the PPD file and restarting cupsd help?

@zdohnal zdohnal added the waiting for reporter There are data requested from the reporter label Jun 5, 2023
@Japhier
Copy link
Author

Japhier commented Jun 6, 2023

Does adding *cupsSingleFile: true to the PPD file and restarting cupsd help?

If this parameter is configured, multiple images can be printed. However, the printer pauses for 1 to 2 seconds (from printing to idle) before printing the next file. User experience is poor.

@michaelrsweet
Copy link
Member

@Japhier There isn't anything we can do about the delay in CUPS 2.x - that's the penalty for cupsSingleFile, and the old CUPS 2.x print path doesn't allow for input documents to be merged prior to printing.

Until CUPS 3.0 is finished, there are programs that can generate a PDF from a list of input images that will yield faster printing - ImageMagick, ippsample's ipptransform, etc.

@zdohnal
Copy link
Member

zdohnal commented Jun 12, 2023

@Japhier is the PPD generated by CUPS/cups-filters (there is IPP Everywhere/driverless in the PPD file) or classic one?

@Japhier
Copy link
Author

Japhier commented Jun 13, 2023

@Japhier is the PPD generated by CUPS/cups-filters (there is IPP Everywhere/driverless in the PPD file) or classic one?

@zdohnal I use the IPP Everywhere print ppd file generated by cups. By default, there is no cupsSingleFile attribute, but I set single_file in cups/-ppd-cache.c to true, which also works.

@zdohnal
Copy link
Member

zdohnal commented Jun 13, 2023

@michaelrsweet can I add the PPD keyword by default when we generate the PPD?

@michaelrsweet
Copy link
Member

@zdohnal Yes.

zdohnal added a commit to zdohnal/cups that referenced this issue Jun 14, 2023
Some printers are not able to print multiple files in one job via IPP
Everywhere. Adding the PPD keyword enables the feature on all printers
in exchange for performance degradation (there is a 1-2s pause between
printed files).

Fixes OpenPrinting#643
zdohnal added a commit to zdohnal/cups that referenced this issue Jun 14, 2023
Some printers are not able to print multiple files in one job via IPP
Everywhere. Adding the PPD keyword enables the feature on all printers
in exchange for performance degradation (there is a 1-2s pause between
printed files).

Fixes OpenPrinting#643
tillkamppeter added a commit to OpenPrinting/libppd that referenced this issue Jun 16, 2023
Fix overtaken from CUPS:

    OpenPrinting/cups@67a8e09e7

Some printers are not able to print multiple files in one job via IPP
Everywhere. Adding the PPD keyword enables the feature on all printers
in exchange for performance degradation (there is a 1-2s pause between
printed files).

Fixes

    OpenPrinting/cups#643

also if the PPD is generated by the driverless utility or by
cups-browsed.
@Japhier
Copy link
Author

Japhier commented Jul 7, 2023

@michaelrsweet @zdohnal Hello, two experts. I want to learn the filter development process. I plan to develop a PDFtoraster filter based on the PDFium open source library. Is this solution feasible?

@michaelrsweet
Copy link
Member

@Japhier You could certainly write a filter - the useful life of the filter will only be a few years, however, but assuming that PDFium can be packaged outside of Chrome it would be useful to have a starting point for a standalone PDF RIP that doesn't have an unfriendly license...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working printer specific issue The issue is connected to a specific printer priority-medium waiting for reporter There are data requested from the reporter
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants