13. november 2002 - 13:20
Der er
59 kommentarer og 1 løsning
Tilpas til A4 papir ved udskrivning!
Jeg har denne kode her til udskrivning: Printer.Orientation = vbPRORLandscape Printer.PaintPicture LoadPicture("C:\TEST.GIF"), 0, 0 Printer.EndDoc Men hvoedan får jeg den til at tilpasse sig så den kan være på et stykke A4 papir???
Annonceindlæg fra Deloitte
13. november 2002 - 13:25
#1
Hvad med Printer.PaperSize = vbPRPSA4
13. november 2002 - 13:35
#2
Det sker der ikke noget ved!
13. november 2002 - 14:05
#3
Den vil bare ikke..... Hverken med scale eller noget!!
13. november 2002 - 14:23
#4
LoadPicture("C:\test.jpg",vbLPCustom,,Printer.width,Printer.height)
13. november 2002 - 14:27
#5
Brug WindowsMetaFile ( WMF ), det kan skale det du har lavet på det.
13. november 2002 - 14:37
#6
Printer.Orientation = vbPRORLandscape Printer.PaintPicture LoadPicture("C:\test.gif",vbLPCustom,,Printer.width,Printer.height) Printer.EndDoc
13. november 2002 - 14:38
#7
OCP -> Hvordan skal jeg ellers sætte det ind i min sætning???
13. november 2002 - 14:44
#8
Hvis jeg skriver: Printer.Orientation = vbPRORLandscape Printer.PaintPicture LoadPicture("C:\test.gif"), Printer.Width, Printer.Height Printer.EndDoc Så bliver mit papir bare blankt!
13. november 2002 - 14:44
#9
Hvad er WMF???
13. november 2002 - 14:47
#10
Du har jo ikke skrevet det jeg foreslog...
13. november 2002 - 14:48
#11
Sorry: Printer.PaintPicture LoadPicture("C:\test.jpg",vbLPCustom,,Printer.width,Printer.height)
13. november 2002 - 14:50
#12
HUSK der er to ,,
13. november 2002 - 15:12
#13
Den stopper her: .PaintPicture Og siger "Argument not optional"
13. november 2002 - 15:24
#14
Nogle gode ideer??
13. november 2002 - 15:38
#15
Printer.PaintPicture LoadPicture("C:\test.jpg",vbLPCustom,,Printer.width,Printer.height),0,0
13. november 2002 - 15:43
#16
Desværre den skriver STADIG for stort! kan man ikke sige at den må MAX skrive width = 21 cm og height = 29 cm???
13. november 2002 - 15:44
#17
Der kommer kunca 1/4 del ud af tegningen!
13. november 2002 - 15:46
#18
Jeg har en anden udprintning, det er godt nok nogle andre filer som kræver at de bliver åbnet op i en bestemt viewer... lidt ligesom PDF'er bliver åbnet op i Acrobar Reader... derefter bliver de skrevet ud og programmer lukker helt selv igen! Kan man ikke sige til VB at den skal åbne filen i Photoeditor og printe din ud så den passer ind på siden og lukke programmet igen????
13. november 2002 - 15:55
#19
Det er fordi printer.height og width altid er angivet i TWIPS. NUUUUU skulle det virke: Printer.PaintPicture LoadPicture("C:\test.jpg",vbLPCustom,,Printer.Width / Printer.TwipsPerPixelX, Printer.Height / Printer.TwipsPerPixelX),0,0
13. november 2002 - 16:45
#20
OCP>> HMmm var ellers ude i noget med noget picturebox, men det her virker jo fortræffeligt. - Mikker
13. november 2002 - 19:55
#21
Ups... ERstat lige den sidste TwipsPerPixelX med TwipsPerPixelY :)
14. november 2002 - 08:17
#22
Nixen virker stadig ikke......
14. november 2002 - 09:02
#23
Det er sådan her min kode skal se ud??? Printer.PaintPicture LoadPicture("C:\test.gif", vbLPCustom, , Printer.Width / Printer.TwipsPerPixelX, Printer.Height / Printer.TwipsPerPixelY), 0, 0 Jeg kan bare ikke få den til at virke!!!! Er den nogle rererancer jeg skal slå til? Eller????
14. november 2002 - 09:03
#24
Eller skal jeg sætte nogle mål ind???
14. november 2002 - 09:41
#25
Det er præcis sådan koden skal se ud. Hvordan virker det ikke?
14. november 2002 - 09:54
#26
Dette fungerer perfekt hos mig: Dim strFil As String strFil = "C:\Documents and Settings\Test\My Documents\My Pictures\antenna9.jpg" Printer.Orientation = vbPRORLandscape Printer.PaintPicture LoadPicture(strFil, vbLPCustom, , Printer.Width / Printer.TwipsPerPixelX, Printer.Height / Printer.TwipsPerPixelY), 0, 0 Printer.EndDoc
14. november 2002 - 09:54
#27
Min gif der bliver skrevet alt for stort!!!
14. november 2002 - 10:01
#28
NÅH - Den skal kun tilpasse hvis billedet er for stort? Så gør du således: Dim strFil As String Dim pic As Image strFil = "C:\Documents and Settings\Test\My Documents\My Pictures\antenna9.jpg" Image = LoadPicture(strFil) Printer.Orientation = vbPRORLandscape If Image.Height > Printer.Height Or Image.Width > Printer.Width Then Printer.PaintPicture LoadPicture(strFil, vbLPCustom, , Printer.Width / Printer.TwipsPerPixelX, Printer.Height / Printer.TwipsPerPixelY), 0, 0 Else Printer.PaintPicture LoadPicture(strFil), 0, 0 End If Printer.EndDoc
14. november 2002 - 10:02
#29
Der var lige en fejl: Dim strFil As String Dim pic As Image strFil = "C:\Documents and Settings\Test\My Documents\My Pictures\antenna9.jpg" Set pic = LoadPicture(strFil) Printer.Orientation = vbPRORLandscape If Image.Height > Printer.Height Or Image.Width > Printer.Width Then Printer.PaintPicture LoadPicture(strFil, vbLPCustom, , Printer.Width / Printer.TwipsPerPixelX, Printer.Height / Printer.TwipsPerPixelY), 0, 0 Else Printer.PaintPicture LoadPicture(strFil), 0, 0 End If Printer.EndDoc
14. november 2002 - 10:18
#30
Den siger type mismatch: Dim strFil As String Dim pic As Image strFil = ("C:\test.gif") Set pic = LoadPicture(strFil) Printer.Orientation = vbPRORLandscape If Image.Height > Printer.Height Or Image.Width > Printer.Width Then Printer.PaintPicture LoadPicture(strFil, vbLPCustom, , Printer.Width / Printer.TwipsPerPixelX, Printer.Height / Printer.TwipsPerPixelY), 0, 0 Else Printer.PaintPicture LoadPicture(strFil), 0, 0 End If Printer.EndDoc
14. november 2002 - 10:33
#31
Og stopper her: Set pic = LoadPicture(strFil)
14. november 2002 - 11:23
#32
prøv strFil = "C:\test.gif" og ikke strFil = ("C:\test.gif")
14. november 2002 - 11:24
#33
Hvilken fejlbesked?
14. november 2002 - 11:25
#34
Har prøvet... samme besked!
14. november 2002 - 11:27
#35
Har du tjekket at test.gif rent faktisk er et billede?
14. november 2002 - 11:33
#36
JA!..... ikke noget problem der!
14. november 2002 - 11:35
#37
Hvis jeg skriver: strFil = "C:\test.gif" Set Image = LoadPicture(strFil) så kommer den og siger: Run-time error '383': 'Image' property is read-only
14. november 2002 - 11:36
#38
Og så marker den: Set Image = LoadPicture(strFil)
14. november 2002 - 11:39
#39
Suk, gisp... Nu har jeg for en gangs skyld TESTET det jeg havde foreslået. Det kræver at du lægger en skjult picturebox (picture1) på din form: Dim strFil As String Dim pic As PictureBox strFil = ("C:\test.gif") Set pic = Picture1 pic.Picture = LoadPicture(strFil) Printer.Orientation = vbPRORLandscape If Image.Height > Printer.Height Or Image.Width > Printer.Width Then Printer.PaintPicture LoadPicture(strFil, vbLPCustom, , Printer.Width / Printer.TwipsPerPixelX, Printer.Height / Printer.TwipsPerPixelY), 0, 0 Else Printer.PaintPicture LoadPicture(strFil), 0, 0 End If Printer.EndDoc End Sub
14. november 2002 - 12:05
#40
*GGG* Virker stadig ikke!!
14. november 2002 - 12:10
#41
Hvad er der nu galt? Det virker i hvert fald hos mig!
14. november 2002 - 12:21
#42
Den kommer bare ud i for stor størrelse! Den kan ikke være på parpiret!
14. november 2002 - 13:21
#43
Det var da utroligt! Det tilpasser sig perfekt til min printer. Prøv lige dette: prøv Dim strFil As String Dim pic As PictureBox strFil = ("C:\test.gif") Set pic = Picture1 pic.Picture = LoadPicture(strFil) Printer.Orientation = vbPRORLandscape If Image.Height > Printer.Height Or Image.Width > Printer.Width Then Printer.PaintPicture LoadPicture(strFil, vbLPCustom, , (Printer.Width - 100)/ Printer.TwipsPerPixelX, (Printer.Height-100) / Printer.TwipsPerPixelY), 0, 0 Else Printer.PaintPicture LoadPicture(strFil), 0, 0 End If Printer.EndDoc End Sub
14. november 2002 - 13:26
#44
Kan det være fordi Printer.Width returnerer en forkert værdi? Prøv lige at fortæl hvad Printer.Width og height returnerer...
14. november 2002 - 13:27
#45
Nixen... det samme!!
14. november 2002 - 13:30
#46
Bare for at kontrollere det: Kan du prøve med en jpg-fil?
14. november 2002 - 13:30
#47
Printer.Height = 11904 Printer.Width = 16834 Image.Width = 27093 Skal jeg prøve at sende billedet til dig????
14. november 2002 - 13:35
#48
Nu har jeg osse prøvet med en JPG... det er det samme!
14. november 2002 - 13:38
#49
Ja, prøv at sende det. mailto:anonymanonym715@hotmail.com
14. november 2002 - 14:03
#50
Yes: Send på anonymanonym715@hotmail.com
14. november 2002 - 14:11
#51
Er sendt!
14. november 2002 - 14:13
#52
Kunne du ikke prøve at sende den form du har der virker tilbage til mig?? Så kan jeg lige se om jeg kan få det til at virke her????
14. november 2002 - 14:48
#53
Din fil virker sjovt nok heller ikke hos mig.
14. november 2002 - 14:55
#54
Ta daaaaaa......... Dim strFil As String Dim pic As Picture strFil = ("C:\Documents and Settings\TGY.EC\My Documents\My Pictures\test.jpg") Set pic = LoadPicture(strFil) Printer.Orientation = vbPRORLandscape If Image.Height > Printer.Height Or Image.Width > Printer.Width Then Printer.PaintPicture pic, 0, 0, Printer.ScaleWidth, Printer.ScaleHeight Else Printer.PaintPicture pic, 0, 0 End If Printer.EndDoc
14. november 2002 - 14:56
#55
Og slet så bare den picturebox på formen :o)
14. november 2002 - 14:57
#56
He he !!!
14. november 2002 - 14:58
#57
Du får sgu 50 for det!!! Takker!
14. november 2002 - 14:58
#58
Og med en lille - men vigtig - rettelse: Dim strFil As String Dim pic As Picture strFil = ("C:\Documents and Settings\TGY.EC\My Documents\My Pictures\test.jpg") Set pic = LoadPicture(strFil) Printer.Orientation = vbPRORLandscape If pic.Height > Printer.ScaleHeight Or pic.Width > Printer.ScaleWidth Then Printer.PaintPicture pic, 0, 0, Printer.ScaleWidth, Printer.ScaleHeight Else Printer.PaintPicture pic, 0, 0 End If Printer.EndDoc
14. november 2002 - 15:02
#59
Hvad er foreskellen????
14. november 2002 - 15:17
#60
Jeg benytter den korrekte variabel og de korrekte properties til at kontroller om billedet kan være på en side.
Kurser inden for grundlæggende programmering