Image an Mausposition platzieren

  • Hallo,

    Ich habe schon einen Beitrag dazu gelesen.
    Dort werden auf die commands
    COMPDF_GETMOUSE_X
    COMPDF_GETMOUSE_Y
    verwiesen.

    Nur wird das Image nicht an der Position eingefügt.

    Bei COMPDF_GETMOUSE_XY ist die Position zu weit links oben,
    bei COMPDF_GetPageLogXY zu weit rechts unten.

    Muss man noch was rechnen?

    Danke, Frank

  • Hallo,

    ich habe jetzt mal folgenden Code:

    Code
    px := WPViewPDF1.Command(COMPDF_GETMOUSE_X);
      py := WPViewPDF1.Command(COMPDF_GETMOUSE_Y);
      pxl := WPViewPDF1.Command(COMPDF_GetPageLogX);
      pyl := WPViewPDF1.Command(COMPDF_GetPageLogY);
      pw := WPViewPDF1.Command(COMPDF_GetPageWidth);
      ph := WPViewPDF1.Command(COMPDF_GetPageHeight);


    Wenn ich rechts unten klicke, sollten ja px und pw sowie py und ph
    etwa gleich sein.
    Aber
    px = 791
    py = 1121
    pw = 595 (A4 72 dpi)
    ph = 842 (A4 72 dpi)

    Das ist etwa ein Faktor von 0.75

    Wenn ich jetzt meine errechneten X und Y mit 0.75 multipliziere, stimmt die Position etwa.

    Aber ich verstehe es nicht.
    Was sagen die Werte denn nun aus?

    Herzlichen Dank,

    Frank Reim

    • Offizieller Beitrag

    Hallo,

    mit diesem code geht dies:

    Code
    i := WPViewPDF1.Plus.AddImage('s:\a.jpg');
      if i > 0 then
        WPViewPDF1.Plus.UseImage(i,
            WPViewPDF1.command(COMPDF_GetPageUnderMouse),
           MulDiv( WPViewPDF1.Command(COMPDF_GetPageLogX), 72, Screen.PixelsPerInch),
           MulDiv( WPViewPDF1.Command(COMPDF_GetPageLogY), 72, Screen.PixelsPerInch),
            72, 24, 0, []);