WPCubed Product Support

Image an Mausposition platzieren

5.4k Views 2 users read 2 min
support

Hallo,

mit diesem code geht dies:

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, []);
#3 ♥ 0

Hallo,

ich habe jetzt mal folgenden 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

#2 ♥ 0

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.

procedure TfrmMain.WPViewPDF1MouseUp(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
Var
  i: Integer;
begin
  i := WPViewPDF1.Plus.AddImage('barcode.jpg');
  if i > 0 then
    WPViewPDF1.Plus.UseImage(i,
        WPViewPDF1.command(COMPDF_GetPageUnderMouse),
        WPViewPDF1.Command(COMPDF_GetPageLogX),
        WPViewPDF1.Command(COMPDF_GetPageLogY),
        72, 24, 0, []);
end;

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

#1 ♥ 0