English
Forum

Pressure Prospeed.DLL is To small

 

Bernd
Krauss
Hi,
with one expression with Prospeed.DLL is the pressure plenty To small. If I around the factor 10 erhöhe, then works it with manchen Printers, on other computer crashes it ex. on the screen becomes the image correctly. displayed. here's the code for procedure. it'll the image = BDatei$ The Coordinates = Bx&, By& The desired wide and Höhe = BreitX&, BreitY& and whether printed go should = Drk% übermittelt.
can someone help?
CompileMarkSeparation
Proc BildAnz

    parameters BDatei$, Bx&, By&, BreitX&, BreitY&, Drk%
    declare BQuelle&, BBreite&, BHoehe&, neubreit&, neuhoch&
    declare neubreitx&, neuhochy&, DrkKlein&, DrkBild&
    declare Faktor%
    let Faktor% = 10
    BQuelle&=LoadExtImage(addr(BDatei$))

    ifnot equ(BQuelle&,0)

        BBreite& = GetBmpWidth(BQuelle&)                          Breite und Hoehe des Bilds
        BHoehe& = GetBmpHeight(BQuelle&)                          ermitteln
        messagebox(Str$(BBreite&),Str$(BHoehe&),0)

        if gt(BBreite& / BHoehe& , BreitX& / BreitY&)

            neubreit& = BreitX&
            neuhoch& = BHoehe&/BBreite&*neubreit&

        else

            neuhoch& = BreitY&
            neubreit& = BBreite&/BHoehe&*neuhoch&

        endif

        if drk%

            let neuhoch& = neuhoch& * Faktor%
            let neubreit& = neubreit& * Faktor%
            DrkKlein&=CreateExtBmp(%HDC,neubreit&,neuhoch&)
            SizeExtBmp (DrkKlein&,0,0,neubreit&,neuhoch&,BQuelle&,0,0,BBreite&,BHoehe&,0)
            DrkBild&=CreateExtBmp(%HDC,neuhoch&,neubreit&)
            Die automatische Zentrierung beim Rotieren ausgleichen

            If neubreit&>=neuhoch&

                neubreitx&=(neubreit&-neuhoch&)/2

            Else

                neubreitx&=(neuhoch&-neubreit&)/2

            EndIf

            neuhochy&=neubreitx&
            Case neubreit&>neuhoch&:neubreitx&=-neubreitx&
            Case neuhoch&>neubreit&:neuhochy&=-neuhochy&
            RotateExtBmp(DrkBild&,neubreitx&,neuhochy&,neubreit&,neuhoch&,DrkKlein&,0,0,90,0)
            let Bx& = Bx& * Faktor%
            let By& = By& * Faktor%
            CopyExtBmp(%hdc,Bx&,By&,neuhoch&,neubreit&,DrkBild&,0,0,0)

        else

            SizeExtBmp (%hdc,Bx&,By&,neubreit&,neuhoch&,BQuelle&,0,0,BBreite&,BHoehe&,0)

        endif

    endif

    FreeAllExtBmps()

='./../../Function-References/XProfan/endproc/'>endproc

 
02/11/07  
 




Frank
Abbing
Please a lauffähigen Demoquellcode post. here can I nirgendwo discern, How your expression vostatten weg should.
too The indicated your Profanversion would of benefit.

Nachtrag of iF:
[tb]minimalbeispiel[/tb]
 
02/11/07  
 




Bernd
Krauss
Hello Frank,
many Thanks for rapid response. here's the lauffähige View source, entschuldige Please, I coming not former moreover. prerequisite is the Prospeed.dll and a Image namens "alf.jpg" in the Programmverzeichnis. I have the from the Prospeed.dll as jpg-File taken.
If to the Program launch, sees one, the image becomes correctly on screen displayed, becomes but To small and on falser place printed. The Parameter drk% in the procedure Bildanz game in this Programmbeispiel no role. Perhaps is the procedure indeed plenty To tricky program. it should a JPG-File at a best. place into rectangle eingepasst and circa 90 strain turned go.
Profanversion is XProfan 10
greetings
Bernd Krauss
here means the lauffähige View source:
CompileMarkSeparation
declare neudll&, Antw%
DEF LoadExtImage(1) !"ProSpeed","LoadExtImage"
DEF SizeExtBmp(11) !"ProSpeed","SizeExtBmp"
DEF CreateExtBmp(3) !"ProSpeed","CreateExtBmp"
DEF RotateExtBmp(10) !"ProSpeed","RotateExtBmp"
DEF CopyExtBmp(9) !"ProSpeed","CopyExtBmp"
DEF GetBmpWidth(1) !"ProSpeed","GetBmpWidth"
DEF GetBmpHeight(1) !"ProSpeed","GetBmpHeight"
DEF FreeAllExtBmps(0) !"ProSpeed","FreeAllExtBmps"
neudll&=usedll("ProSpeed.dll")

Proc BildAnz

    parameters BDatei$, Bx&, By&, BreitX&, BreitY&, Drk%
    declare BQuelle&, BBreite&, BHoehe&, neubreit&, neuhoch&
    declare neubreitx&, neuhochy&, DrkKlein&, DrkBild&
    BQuelle&=LoadExtImage(addr(BDatei$))

    ifnot equ(BQuelle&,0)

        BBreite& = GetBmpWidth(BQuelle&)                          Breite und Hoehe des Bilds
        BHoehe& = GetBmpHeight(BQuelle&)                          ermitteln
        Es wird geprüft, ob an Breite oder Höhe angepasst wird

        if gt(BBreite& / BHoehe& , BreitX& / BreitY&)

            neubreit& = BreitX&
            neuhoch& = BHoehe&/BBreite&*neubreit&

        else

            neuhoch& = BreitY&
            neubreit& = BBreite&/BHoehe&*neuhoch&

        endif

        DrkKlein&=CreateExtBmp(%HDC,neubreit&,neuhoch&)
        SizeExtBmp (DrkKlein&,0,0,neubreit&,neuhoch&,BQuelle&,0,0,BBreite&,BHoehe&,0)
        DrkBild&=CreateExtBmp(%HDC,neuhoch&,neubreit&)
        Die automatische Zentrierung beim Rotieren ausgleichen

        If neubreit&>=neuhoch&

            neubreitx&=(neubreit&-neuhoch&)/2

        Else

            neubreitx&=(neuhoch&-neubreit&)/2

        EndIf

        neuhochy&=neubreitx&
        Case neubreit&>neuhoch&:neubreitx&=-neubreitx&
        Case neuhoch&>neubreit&:neuhochy&=-neuhochy&
        RotateExtBmp(DrkBild&,neubreitx&,neuhochy&,neubreit&,neuhoch&,DrkKlein&,0,0,90,0)
        CopyExtBmp(%hdc,Bx&,By&,neuhoch&,neubreit&,DrkBild&,0,0,0)

    endif

    FreeAllExtBmps()

endproc

cls
rectangle 100 , 100  , 300, 400
BildAnz "alf.jpg" , 100 , 100 , 300, 200 , 0
let Antw%=messagebox ("Willst du drucken?", "Druck?", 4)

if Antw%=6

    cls
    startprint
    rectangle 100 , 100  , 300, 400
    BildAnz "alf.jpg" , 100 , 100 , 300, 200 , 1
    endprint

endif

FreeAllExtBmps()
freedll
eudll& end
 
02/13/07  
 




Frank
Abbing
alas Yes, I see, what you mean. explain can I it to you but not. becomes a interne Profan-printer-HDC story his.
ProSpeeds CopyExtBmp() is Yes only one Calling the API BitBlt(). and the functions too wrong, habs ausgetestet and thereby all Schnickschnack omitted. it's located means not on the Dll.
If Roland that here liessst, becomes it sure what moreover say can. otherwise must You it time directly kontakten.
 
02/13/07  
 




RGH
Hi,

API-functions heading XProfan fundamentally unchanged moreover. API-functions go means fundamentally "auf Own Gefahr" there akin.
at that Print is To mind, that the Druckseite in the Normalfall around the factor 10 larger is, as The Coordinates- and has info in XProfan. any Koordinatenangaben and has info at Print through the API are therefore circa this factor To multiplizieren.
(ex XProfan 10 can whom factor through of/ one Set-function take on and through of/ one Get-function read. Particulars see Help.)

Greeting
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
02/14/07  
 




Bernd
Krauss
Hello Roland,
many Thanks for speedy Info. with the factor 10 goes it. The "Absturz", from the I initially wrote has aufgeklärt: with the factor 10 lasts The Berechnung for pressure on my middle-aged P III 600 such a long time, I always thought, PC be abgestürzt. That the Set and Get-function have I though withal studies the XProfan 10 Help not understood. which Set-function should I take and which Syntax? and with which Get function should I what read? I have simply The Coordinates Bx& and By& and neubreit& and neuhoch& with 10 multipliziert. is the too ok?
greetings
Bernd
 
02/15/07  
 




RGH
Bernd Krauss
That the Set and Get-function have I though withal studies the XProfan 10 Help not understood. which Set-function should I take and which Syntax? and with which Get function should I what read?


large SORRY! there have I very these Set-function in the Help forget:

with @Set("PrintRes", n%) can whom factor change. Wennn You for n% the value 1 take, ought to it of course functions, without that You whom factor in Your Program einbaust, but the expression might then something grobkörnig his, there only with about 80dpi (20 cm = ca. 8 inch. 640 spots on 8 inch power even 80 spots/inch) printed becomes. The Druckauflösung corresponds to then means about 3 spots/mm. If the reicht, about for Farb-photos, is the The simplest Solution. with Liniengrafiken could then though Treppchen To see his. (in the Standardeinstellung with factor 10 corresponds to The Druckauflösung about 800dpi ... circa there Treppchen To see, need it already a Laserdrucker, thin diaogonale lines and a good Lupe.)

with @Get("PrintRes") can the tuned worth read go.

Greeting
Roland
 
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
02/15/07  
 




RGH
large SORRY! there have I very these Set-function in the Help forget:

 
02/15/07  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

no Systemprofil laid out. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Please register circa a Posting To verfassen.
 

Topic-Options

2.427 Views

Untitledvor 0 min.
Erasmus.Herold05/08/16
Peter Max Müller03/27/13

Themeninformationen



Admins  |  AGB  |  Applications  |  Authors  |  Chat  |  Privacy Policy  |  Download  |  Entrance  |  Help  |  Merchantportal  |  Imprint  |  Mart  |  Interfaces  |  SDK  |  Services  |  Games  |  Search  |  Support

One proposition all XProfan, The there's!


My XProfan
Private Messages
Own Storage Forum
Topics-Remember-List
Own Posts
Own Topics
Clipboard
Log off
 Deutsch English Français Español Italia
Translations

Privacy Policy


we use Cookies only as Session-Cookies because of the technical necessity and with us there no Cookies of Drittanbietern.

If you here on our Website click or navigate, stimmst You ours registration of Information in our Cookies on XProfan.Net To.

further Information To our Cookies and moreover, How You The control above keep, find You in ours nachfolgenden Datenschutzerklärung.


all rightDatenschutzerklärung
i want none Cookie