Hej Litet tips är att istället använda fontobjektet: Hej Hej Andreas Du skapar först fonterna. t.Ex: Hej Hej! Hej Hej Knepigt fel vid utskrift
Jag har en printfunktion som skriver ut ett papper där det står lite olika saker och den texten blir bra men längst ner finns en sidfot som vid första utskriften blir tecken snitten väldigt små typ0( size 2 )men om jag skriver ut samma igen direkt efter så blir texten ok typ (size 8 ) detta funkade perfekt förut när vi körde med win98 mot Unix/banjan men nu efter att vi kör Xp och 2003 server så har detta kommit upp.
Någon med ide´r hur man kan lösa detta
Kod
printer.fontnamn = Arial
Printer.fonsize = 8
+ placeringar och vad som skall skrivas ut
Mvh
TobbeSv: Knepigt fel vid utskrift
<code>
'Förberedelser
Dim Font1 As stdFont
Dim Font2 As stdFont
Set Font1 = New stdFont
Font1.Namn = "Arial"
Font1.Size = 2
Set Font2 = New stdFont
Font2.Namn = "Arial"
Font2.Size = 8
'Skriver ut
Set Printer.Font = Font1
Printer.Print "Test"
Set Printer.Font = Font2
Printer.Print "Test"
Printer.EndDoc
</code>Sv: Knepigt fel vid utskrift
Tack för tipset skall testa, hör av mig om det funkar
mvh
TobbeSv: Knepigt fel vid utskrift
Skulle svara lite tidigare men!
Efter namnbyte på Font1.name ="Arial"
så skriver den ut men att texter size = 2 är liten väldigt liten men att
size 8 inte är mycket större greppar jag inte eller skall
man ange ett större värde typ 20 eller liknade för att detta
skall lirra.
Eller om jag ändrar på 'Set Printer.Font = Font1' och sätter det före
då funkar det men är det rätt?.
Set Font1 = New StdFont
Set Printer.Font = Font1
Font1.Name = "Arial"
Font1.Size = 8
Mvh
Tobbe Sv: Knepigt fel vid utskrift
<code>
Dim Font1 As StdFont
Dim Font2 As StdFont
Set Font1 = New StdFont
Font1.Name = "Arial"
Font1.Size = 8
Set Font2 = New StdFont
Font2.Name = "Arial"
Font2.Size = 8
</code>
Detta gör du bar en gång inna du påbörjar utskrift.
När du kör koden som skriver ut skiftar du font med:
<code>
Set Printer.Font = Font1
</code>
och:
<code>
Set Printer.Font = Font2
</code>
osv...
Innan du skriver ut en text med en speciel font.
Är det så du gör?Sv: Knepigt fel vid utskrift
Funkar att skriva ut men varför blir texten så liten.
Om jag skriver typ
Dim Font1 As StdFont
Set Font1 = New StdFont
Font1.Name = "Arial"
Font1.Size = 8
'Skriver ut
Set Printer.Font = Font1
Printer.CurrentX = 100
Printer.CurrentY = 1000
Printer.Print "Testar olika fonter"
Printer.EndDoc
Så blir texten ca:0.4 mm hög
Vad gör jag för fel !!!
Mvh
TobbeSv: Knepigt fel vid utskrift
Bara några tankar..
Kanske det typsnitt du använder inte finns i skrivaren? (Använd Fonts för att ta reda på vilka som finns)
Kanske du gjort något med "scaling property"? Kolla zoom egenskapen.
Prova sätt en font till skrivaren och kolla sedan vilket värde FontSize fick. Alltså så att verkligen inställningen "gick igenom"...
Hoppas något hjälper!
AndersSv: Knepigt fel vid utskrift
Detta problem uppkom efter att vi byte från Unixserver/Banyan och win98 till
Windows2002 server och XP Pro.
Inga skrivare har byts ut.
Det som händer är att jag har en så kallad sidfot som skall skrivas ut det är där som problemet uppstår att teckensnittet blir väldigt litet på första utskriften men helt ok på andra och tredje, all text över sidfoten är perfekt.
Kan detta bero på något med registeret och behörigheter till olika fonter i XP som inte kanske inte existerade i win98?.
Eller kan något som normalt finns med i Xp vara borttaget eftersom våra konsulet har gått fram men slottermaskinen när dom har satt olika rättigheter/behörigheter för div användare.
Går jag in och tittar på ex Arial så finns det en vis behörighet till fonten
på inloggad vanlig användare så är behörigheten satt till (Läsa och Köra samt skriva)
En fråga till om jag öpnar Fonter i XP och tittar på iconen så har vissa ett O = ??? och vissa har TT = True Type, är arial inte true type!
Hoppas ni förstår mitt problem
Mvh
Tobbe
Sv: Knepigt fel vid utskrift
Tror jag har hittat felet!
Det är så att i koden anropas form3 där texter med namn och adresser plockas från, därför blev det fel i första utskriften men ok i andra, måste vara något som stör när formen laddas.
Jag löste det med att tvinga fram ett värde från form3 innan utskriften görs
Dim sCorp As String
sCorp = form3.text1(0).text
if Len(sCorp)>1 then
Skriv ut
end if
Ingen snygg lösning kanske men funkar.
Mvh
Tobbe