Ok, that pretty much confirms it as a Java on Linux issue. Try using a
newer JDK, or using Sun’s JDK.

— John

> On 13 May 2015, at 01:44, Gregor Kovač <[email protected]> wrote:
> 
> Hi!
> 
> I just found out that this code does work on Windows, but not on Linux.
> 
> Best regards,
>    Kovi
> 
> 2015-05-13 0:23 GMT+02:00 John Hewson <[email protected]>:
> 
>> 
>>> On 12 May 2015, at 13:17, Gregor Kovač <[email protected]> wrote:
>>> 
>>> Hi!
>>> 
>>> Hmm... How? Can you share the code you are using?
>> 
>> I just copied and pasted the code from your e-mail.
>> 
>> — John
>> 
>> P.S. just in case, make sure that you’ve run:
>> 
>> svn up
>> mvn clean install
>> 
>>> Best regards,
>>>   Kovi
>>> 
>>> 2015-05-12 19:39 GMT+02:00 John Hewson <[email protected]>:
>>> 
>>>> That’s a shame, I can confirm that it works for me on OS X with Sun’s
>> JDK.
>>>> 
>>>> — John
>>>> 
>>>>> On 12 May 2015, at 06:58, Gregor Kovač <[email protected]> wrote:
>>>>> 
>>>>> Hi!
>>>>> 
>>>>> I've updates my trunk source, compiles it, used it, but it still only
>>>>> prints one copy.
>>>>> 
>>>>> Best regards,
>>>>>  Kovi
>>>>> 
>>>>> 2015-05-12 9:50 GMT+02:00 John Hewson <[email protected]>:
>>>>> 
>>>>>> So I took another look at this and I think there’s a bug in PDFPrinter
>>>>>> where the
>>>>>> attributes are being discarded after showing the print dialog.
>>>>>> 
>>>>>> I’ve made a commit in PDFBOX-2795 which hopefully fixes it, you’ll
>> need
>>>> to
>>>>>> fetch the latest trunk via SVN.
>>>>>> 
>>>>>> — John
>>>>>> 
>>>>>>> On 12 May 2015, at 00:13, Gregor Kovač <[email protected]> wrote:
>>>>>>> 
>>>>>>> Hi!
>>>>>>> 
>>>>>>> That is a bit strange, since using lpr command work OK for the same
>>>>>> printer.
>>>>>>> I decided to use SumatraPDF.exe on Windows and lpr on Linux for
>>>> printing
>>>>>>> multiple copies.
>>>>>>> 
>>>>>>> Thanks for your help guys.
>>>>>>> 
>>>>>>> Best regards,
>>>>>>> Kovi
>>>>>>> 
>>>>>>> 2015-05-12 0:54 GMT+02:00 John Hewson <[email protected]>:
>>>>>>> 
>>>>>>>> Your code looks fine, I suspect that as you say, the problem is with
>>>>>>>> Java’s interaction with your printer driver, especially as you’re
>>>> having
>>>>>>>> the same problem with other libraries.
>>>>>>>> 
>>>>>>>> — John
>>>>>>>> 
>>>>>>>>> On 8 May 2015, at 17:00, Gregor Kovač <[email protected]> wrote:
>>>>>>>>> 
>>>>>>>>> Hi!
>>>>>>>>> 
>>>>>>>>> John, maybe it was, but I still get only one page printed out.
>>>>>>>>> I'm using this code:
>>>>>>>>> private static void printWithPDFBox2(File pdfFile, int copies) {
>>>>>>>>>    PDDocument document = null;
>>>>>>>>> 
>>>>>>>>>    try {
>>>>>>>>>        document = PDDocument.load(pdfFile);
>>>>>>>>> 
>>>>>>>>>        PrinterJob printJob = PrinterJob.getPrinterJob();
>>>>>>>>>        printJob.setJobName(pdfFile.getName());
>>>>>>>>> 
>>>>>>>>> 
>>>>>> 
>>>> 
>> printJob.setPrintService(PrintServiceLookup.lookupDefaultPrintService());
>>>>>>>>> 
>>>>>>>>>        printJob.setCopies(copies);
>>>>>>>>>        HashPrintRequestAttributeSet printRequestAttributeSet = new
>>>>>>>>> HashPrintRequestAttributeSet();
>>>>>>>>>        printRequestAttributeSet.add(new Copies(copies));
>>>>>>>>>        printRequestAttributeSet.add(SheetCollate.COLLATED);
>>>>>>>>>        PDFPrinter printer = new PDFPrinter(document,
>>>>>>>>> Scaling.ACTUAL_SIZE, Orientation.AUTO);
>>>>>>>>>        printer.print(printJob, printRequestAttributeSet);
>>>>>>>>>    } catch (Exception e) {
>>>>>>>>>        e.printStackTrace();
>>>>>>>>>    } finally {
>>>>>>>>>        if (document != null) {
>>>>>>>>>            try {
>>>>>>>>>                document.close();
>>>>>>>>>            } catch (Exception e) {
>>>>>>>>>                e.printStackTrace();
>>>>>>>>>            }
>>>>>>>>>        }
>>>>>>>>>    }
>>>>>>>>> }
>>>>>>>>> 
>>>>>>>>> When the print dialog is displayed I see field "Number of copies:"
>>>> set
>>>>>>>> to 5
>>>>>>>>> and "Collate" is checked, but, again, only one page is printed out.
>>>>>>>>> 
>>>>>>>>> I've tried with Java products for working with PDF that cost
>>>> thousands
>>>>>>>> od $
>>>>>>>>> and also only get one page out. It is something with my printer or
>>>>>>>>> something in Java.
>>>>>>>>> I'm working on Linux, so I'm using cups-pdf package that provides a
>>>> PDF
>>>>>>>>> printer. So, I'm printing PDF files via Java and I get out a PDF
>>>> file.
>>>>>> :)
>>>>>>>>> If I use the code above, I get a PDF file with one page, but if I
>> do:
>>>>>>>> "lpr
>>>>>>>>> -#5 -o Collate=True example.pdf" I get a PDF with 5 pages, becuase
>>>>>>>>> example.pdf has only one page.
>>>>>>>>> 
>>>>>>>>> Any ideas why I'm getting one page PDF in Java?
>>>>>>>>> 
>>>>>>>>> Best regards,
>>>>>>>>> Kovi
>>>>>>>>> 
>>>>>>>>> 2015-05-08 23:40 GMT+02:00 John Hewson <[email protected]>:
>>>>>>>>> 
>>>>>>>>>> This has been fixed in 2.0:
>>>>>>>>>> 
>>>>>>>>>> https://issues.apache.org/jira/browse/PDFBOX-2094 <
>>>>>>>>>> https://issues.apache.org/jira/browse/PDFBOX-2094>
>>>>>>>>>> 
>>>>>>>>>> — John
>>>>>>>>>> 
>>>>>>>>>>> On 7 May 2015, at 16:04, Gregor Kovač <[email protected]> wrote:
>>>>>>>>>>> 
>>>>>>>>>>> Hi!
>>>>>>>>>>> 
>>>>>>>>>>> I'm using PDFBox 1.8.9 and using this method to print a PDF file:
>>>>>>>>>>> 
>>>>>>>>>>> private static void printWithPDFBox(File pdfFile, int copies) {
>>>>>>>>>>> PDDocument document = null;
>>>>>>>>>>> 
>>>>>>>>>>> try {
>>>>>>>>>>>   document = PDDocument.load(pdfFile);
>>>>>>>>>>> 
>>>>>>>>>>>   PrintService printService =
>>>>>>>>>>> PrintServiceLookup.lookupDefaultPrintService();
>>>>>>>>>>>   PrinterJob printJob = PrinterJob.getPrinterJob();
>>>>>>>>>>>   printJob.setJobName(pdfFile.getName());
>>>>>>>>>>>   printJob.setPrintService(printService);
>>>>>>>>>>>   printJob.setCopies(copies);
>>>>>>>>>>> 
>>>>>>>>>>>   HashPrintRequestAttributeSet printRequestAttributeSet = new
>>>>>>>>>>> HashPrintRequestAttributeSet();
>>>>>>>>>>>   printRequestAttributeSet.add(new Copies(copies));
>>>>>>>>>>>   printRequestAttributeSet.add(SheetCollate.COLLATED);
>>>>>>>>>>>   printJob.setPageable(new PDPageable(document, printJob));
>>>>>>>>>>>   printJob.print(printRequestAttributeSet);
>>>>>>>>>>> } catch (Exception e) {
>>>>>>>>>>>   e.printStackTrace();
>>>>>>>>>>> } finally {
>>>>>>>>>>>   if (document != null) {
>>>>>>>>>>>       try {
>>>>>>>>>>>           document.close();
>>>>>>>>>>>       } catch (IOException e) {
>>>>>>>>>>>           e.printStackTrace();
>>>>>>>>>>>       }
>>>>>>>>>>>   }
>>>>>>>>>>> }
>>>>>>>>>>> }
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> I have a test file with one page and when I call this method with
>>>>>>>> copies
>>>>>>>>>>> greater than 1 I only get one page printed out.
>>>>>>>>>>> 
>>>>>>>>>>> Am I doing something wrong?
>>>>>>>>>>> 
>>>>>>>>>>> Best regards,
>>>>>>>>>>> Kovi
>>>>>>>>>>> 
>>>>>>>>>>> --
>>>>>>>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>>>>>>>>> |  In A World Without Fences Who Needs Gates?  |
>>>>>>>>>>> |              Experience Linux.               |
>>>>>>>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> --
>>>>>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>>>>>>> |  In A World Without Fences Who Needs Gates?  |
>>>>>>>>> |              Experience Linux.               |
>>>>>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> --
>>>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>>>>> |  In A World Without Fences Who Needs Gates?  |
>>>>>>> |              Experience Linux.               |
>>>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>>>> 
>>>>>> 
>>>>> 
>>>>> 
>>>>> --
>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>>> |  In A World Without Fences Who Needs Gates?  |
>>>>> |              Experience Linux.               |
>>>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>>> 
>>>> 
>>> 
>>> 
>>> --
>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>>> |  In A World Without Fences Who Needs Gates?  |
>>> |              Experience Linux.               |
>>> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>> 
>> 
> 
> 
> -- 
> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~
> |  In A World Without Fences Who Needs Gates?  |
> |              Experience Linux.               |
> -~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~

Reply via email to