Avatar billede horsens8700 Nybegynder
17. december 2000 - 17:59 Der er 3 kommentarer og
1 løsning

print method of printer object

Dette program kigger efter pdf filer i et katalog. Hvis der findes en pdf fil findes størrelsen (A3 el. A4) i strFormat. I nogle andre funktioner findes den ønskede printer i strPrinterName. Jeg ønsker så at skifte papir størrelse afhængig af strFormat og strPrinterName. Programmet kører på en server og der er derfor ingen dialog.

Ex.
For i = 0 To Printers.Count - 1
If cSetPrinter.SetPrinterAsDefault        (strPrinterName) Then
\' This sets the printer as default
If strFormat = \"A4\" Or strFormat = \"a4\" Then
  Printer.PaperSize = 9                   
Else
  Printer.PaperSize = 8
End If
End if
Next
.......
\' Print out the PDF File
r = AcroExchAVDoc.printPages(0, (nMaxPage - 1), 1, 0, 1)

Hvis jeg i printer opsætningen sætter en printer papersize = 2 (Letter Small) - sætter
printeren på pause - kører mit program -  vil papersize=2 hvis jeg kigger på egenskaberne på printet i printerkøen.

Hjælp
Avatar billede jennemaan Nybegynder
03. januar 2001 - 18:41 #1
Hvis du refererer \"Printer\" direkte antager vb og printeren at du er ved at printe til den gennem printerobjektet.

Da dit print bliver foretaget af CAcroAVDoc objektet kan du ikke bruge \"Printer\".

Grunden til at printeren går på pause er fordi at den tror at dit program har startet et printjob (som intet har med dit pdfjob at gøre).

Det du istedet skal gøre er at kalde
AcroExchAVDoc.PrintPagesEx(Firstpage,Lastpage,nPSLevel,BinaryOK,ShrinkToFit,Reverse,FarEastFontOpt,EmitHalfTones,iPageOption)

Hvor du sætter iPageOption jvf. apireferencen Det er sandsynligvis http://partners.adobe.com/asn/developer/acrosdk/DOCS/apidev.pdf

du skal kigge på...

Håber det hjalp :)

/Jennemaan

Avatar billede horsens8700 Nybegynder
04. januar 2001 - 10:50 #2
Hej Jennemaan


AcroExchAVDoc.PrintPagesEx-funktionen findes ikke i den dokumentation jeg kigger i :
http://partners.adobe.com/asn/developer/acrosdk/DOCS/apiref.pdf

Mht til dit link (http://partners.adobe.com/asn/developer/acrosdk/DOCS/apidev.pdf), så finder jeg ingenting med iPageOption , men jeg er sikker på du er på rette spor.
Har du dokumentation på AcroExchAVDoc.PrintPagesEx-funktionen ?
Min direkte mail er horsens8700@hotmail.com
Avatar billede jennemaan Nybegynder
04. januar 2001 - 12:35 #3
Api referencen finder du på

http://partners.adobe.com/asn/developer/acrosdk/DOCS/iacref.pdf
(Tog mig 2 timer at finde frem til :) )

Det ser ikke ud som om at du kan stille papirformatet når du printer. Men papirstørrelsen befinder sig jo selve pdf-filen. -Så jeg ville mene at du bare skal vælge printer, altefter hvad format der er angivet og så kalde PrintPagesSilentEx (beskrevet i iacref.pdf side 149)

Jeg ville vælge \"PrintPagesSilentEx\" og ikke \"PrintPagesEx\", da der er tale om en serverapplikation uden UI.

Håber det hjælper :)

/Jennemaan
Avatar billede horsens8700 Nybegynder
08. januar 2001 - 10:37 #4
Hej Jennemaan

Du har ret man kan ikke stille papirformatet vha iac, men man kan gøre det med Windows spool API.
Så problemet er løst...


Men som tak for hjælpen får du point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester