Français
Forum

RTF et Ausdrucken

 
- page 1 -



Thomas
Freier
trouvé J'ai eu de Andreas:
KompilierenMarqueSéparation
 $I Profalt.inc
'################################
'Drucken mit dem Richedit-Control
'################################
DEF StartDoc(2)      ! "gdi32","StartDocA"
DEF StartPage(1)     ! "gdi32","StartPage"
DEF EndPage(1)       ! "gdi32","EndPage"
DEF EndDoc(1)        ! "gdi32","EndDoc"
DEF CreateDC(4)      ! "gdi32","CreateDCA"
DEF DeleteDC(1)      ! "gdi32","DeleteDC"
DEF GetDeviceCaps(2) ! "gdi32","GetDeviceCaps"
DEF PrintDlg(1)      ! "comdlg32","PrintDlgA"
Declare Richedit&,RichDLL&,Ende&,Print&,Exit&,FileName$,Driver$,Printer$
Declare Horzres&,Vertres&,PixelsX&,PixelsY&,iWidthTwips&,iHeightTwips&
Declare iTextOut&,iTextLength&,DocName$
Declare PrinterDC&
Declare FormatRange#,PrintDLG#,cRect#
Declare DocInfo#
Dim FormatRange#,48
Dim DocInfo#,12
Clear DocInfo#
Dim PrintDLG#,66
Clear PrintDLG#
Dim cRect#,16
SetTrueColor 1
Window 0,0-640,480
CLS RGB(196,196,196)
Print& = CreateButton(%hwnd,"Drucken",500,40,80,24)
Exit& = CreateButton(%hwnd,"Ende",500,70,80,24)
RichEdit& = Create("RichEdit",%hwnd,"",0,2,460,430)
FileName$ = LoadFile$("Als RTF öffnen","*.RTF")

If FileName$ <> ""

    RTF("LoadRTF",Richedit&,Filename$)

EndIf

DocName$ = "Profan-RTFPrinter"

Whilenot Ende&

    Waitinput

    If GetFocus(Exit&)

        Ende& = 1

    ElseIf GetFocus(Print&)

        Long PrintDLG#,0  = 66
        Long PrintDLG#,4  = %hwnd
        Long PrintDLG#,20 = $0140'PD_RETURNDC,PD_PRINTSETUP
        PrintDlg(PrintDLG#)
        PrinterDC& = Long(PrintDLG#,16)

        If PrinterDC&

            HorzRes& = GetDeviceCaps(PrinterDC&,8)
            VertRes& = GetDeviceCaps(PrinterDC&,10)
            PixelsX& = GetDeviceCaps(PrinterDC&,88)
            PixelsY& = GetDeviceCaps(PrinterDC&,90)
            iWidthTwips& = Int((HorzRes&/PixelsX&))*1440
            iHeightTwips& = Int((VertRes&/PixelsY&))*1440
            Long cRect#,0 = 0
            Long cRect#,4 = 0
            Long cRect#,8 = iWidthTwips&
            Long cRect#,12 = iHeightTwips&
            Long DocInfo#,0 = 12
            Long DocInfo#,4 = ADDR(Docname$)
            Long FormatRange#,0 = PrinterDC&'HDC
            Long FormatRange#,4 = PrinterDC&'TargetHDC
            Long FormatRange#,8 = 0'linker Rand in Twips
            Long FormatRange#,12 = 0'oberer Rand in Twips
            Long FormatRange#,16 = iWidthTwips&'rechter Rand in Twips
            Long FormatRange#,20 = iHeightTwips&'unterer Rand in Twips
            Long FormatRange#,24 = 0'linker Rand in Twips
            Long FormatRange#,28 = 0'oberer Rand in Twips
            Long FormatRange#,32 = iWidthTwips&'rechter Rand in Twips
            Long FormatRange#,36 = iHeightTwips&'unterer Rand in Twips
            Long FormatRange#,40 = 0'CharRange-MIN
            Long FormatRange#,44 = -1'CharRange MAX ( -1 = alles )
            iTextOut& = 0
            iTextLength& = SendMessage(RichEdit&, 14, 0, 0)- SendMessage(RichEdit&,186,0,0)
            StartDoc(PrinterDC&,DocInfo#)

            Whilenot OR(iTextOut& >= iTextLength&,itextOut& = -1)

                StartPage(PrinterDC&)
                Long FormatRange#,44 = -1
                iTextOut& = SendMessage(RichEdit&, 1081, 1, FormatRange#)
                Long FormatRange#,40 = iTextOut&
                SendMessage(RichEdit&,1075,0,cRect#)
                EndPage(PrinterDC&)

            Wend

            EndDoc(PrinterDC&)
            SendMessage(RichEdit&, 1081, 1, 0)

        Endif

    Endif

EndWhile

Dispose FormatRange#
Dispose DocInfo#
Dispose PrintDLG#
DeleteDCà>PrinterDC&)
Fin

malheureusement endet qui Druck pour 3 Seiten. WordPad druckt alles. comment geht's avec XProfan?

2.867 kB
Hochgeladen:06.10.2010
Downloadcounter89
Download
 
Gruß Thomas
Windows XP SP2, XProfan X2
06.10.2010  
 



 
- page 2 -


« cette Beitrag wurde comme Solution gekennzeichnet. »

- page 3 -



Uwe
''Pascal''
Niemeier
Hi Thomas!

Anscheinend wird aus qui FORMATRANGE-Struktur pas seulement qui trop bedruckende Bereich ausgelesen, mais pour dem Drucken aussi qui réellement genutzte Bereich hinterlegt (ou bien quelque chose comme dans qui Art). tout autor doit qui betroffene paragraphe qui Struktur chez chaque Schleifendurchlauf récente bestückt volonté.

SeeYou
Pascal

6 kB
Version:2
Kurzbeschreibung: RTF drucken
Hochgeladen:26.10.2010
Downloadcounter151
Download
 
26.10.2010  
 




Thomas
Freier
Prima, maintenant fonctionne es aussi chez mir. seulement durchsteigen, pourquoi cela so ist, peux je pas. aussi peux je une Einstellung pour den oberen Randabstand pas ausmachen ou bien besteht cet Possibilité pas?
 
Gruß Thomas
Windows XP SP2, XProfan X2
08.10.2010  
 



mettons liesse sich qui obere rebord wohl...
KompilierenMarqueSéparation
KompilierenMarqueSéparationgibt chez mir 0 aus - vlt. per separatem Thema klären bzw. exposition la fois vlt. chez cherche pour Ränder/ z.B.  [...]  .
 
09.10.2010  
 




Thomas
Freier
qui Ansatz ist déjà OK. merci iF, ça va très bien. je mets den Randabstand à gauche et dessus comment folgt:
KompilierenMarqueSéparation
var RANDLI%=0'in Twips
var RANDOB%=500'in Twips
var CXPHYSOFFSET%=GETDEVICECAPS(HDCC&, 112)+RANDLI%
var CYPHYSOFFSET%=GETDEVICECAPS(HDCC&, 113)+RAND
pre>

Den bedruckbaren Bereich trop holen lohnt aujourd'hui à peine, là qui meisten Drucker randlos drucken peut. alors werde je seulement une oberen- et Heft-rebord vorgeben, bzw. einstellen laisser.
 
Gruß Thomas
Windows XP SP2, XProfan X2
09.10.2010  
 



Ah, ok & de rien. ^ ^
 
09.10.2010  
 



simple seulement 1 RTF komplett ausdrucken funktioniert chez mir so maintenant entier super:

(hab dispose fr# dans qui Funktion oublier qc)

931 kB
Hochgeladen:13.10.2010
Downloadcounter2
Download
 
13.10.2010  
 




Thomas
Freier
chez mir "hängt" toujours une Dossier. Erste Vermutung, là qui Dossier seulement vorm Druck erzeugt wird, dass qui Drucker déjà sur qui erzeugende Dossier zugreift, bevor qui Speichervorgang finissez ist, scheint pas trop zutreffen.
Könnte einer einmal sur seinem System qui beigefügte Dossier avec qui TEXT130.exe testen.
avec anderer Software ist vous problemlos trop ouvrir et trop drucken.

3.252 kB
Hochgeladen:14.10.2010
Downloadcounter59
Download
 
Gruß Thomas
Windows XP SP2, XProfan X2
14.10.2010  
 



Stimmt, "hängt" zeigt chez mir cela il aus dem Boucle pas herauskommt et hunderte Seiten dans Auftrag gibt. ^ ^

demain la fois regarder quoi là "abgeht" bzw. pourquoi cela Pause-Argument scheinbar nie zutrifft.
 
14.10.2010  
 




Thomas
Freier
oui, ist fou, den autre RTFs avec plus ou bien moins Bildern wurden planmäßig gedruckt. aussi cet Blatt wird réglé gedruckt, si pour dem letzten Bild encore Text ou bien une Leerzeile eingefügt wird. Es entsteht ensuite une neue page. cela Problem ist probablement: cela dernier, sur diesem Blatt mögliche Bild (objet), löst weder une Seitenwechsel encore Druckende aus.
 
Gruß Thomas
Windows XP SP2, XProfan X2
14.10.2010  
 



SendMessage em_formatRange gibt qui dernier Position zurück, cette Wert pourrait z.B. de page trop page pas "gleich" son - vlt. passt quelque chose pas sur qui page weshalb on là qui Position vlt. "manuell" continuer sollte. je prüfe dans dem Beispiel qui Position aussi anders comme rein de msdn traduit damits avec StartPrint/ nextPage klappt sans StartDoc-Api - vlt. hab je ici quoi übersehen.
 
15.10.2010  
 




Thomas
Freier

.... vlt. hab je ici quoi übersehen.


et quelque chose übersehen?
 
Gruß Thomas
Windows XP SP2, XProfan X2
20.10.2010  
 



Ah, garnicht geschaut - Uwe et Dieter sommes là deutlich kompetentere Ansprechpartner weshalb je de ausging cela bereits geholfen ist.
 
20.10.2010  
 




Thomas
Freier
je serait es besser trouver, si deine Scrips, qui oui très bien sommes, aussi bekannt gewordene faute pas plus hätten.
Ist doch aussi possible, dass Uwes Beispiel sous certain Umständen dans einer Endlosschleife endet. Zur Sicherheit hat il maintenant qui max. trop druckenden Seiten vorgegeben. voilà beim Einsatz naturellement cela Problem, dass sich qui Seitenanzahl des Dokumentes selten ermitteln läßt.
 
Gruß Thomas
Windows XP SP2, XProfan X2
21.10.2010  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

17.083 Views

Untitledvor 0 min.
Uwe Lang18.02.2024
H.Brill18.09.2020
boh111.09.2020
Alibre25.12.2019
plus...

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie