Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Auflösung von DIBs in der Zwischenablage setzen (https://www.delphipraxis.net/117464-aufloesung-von-dibs-der-zwischenablage-setzen.html)

Wapiti 18. Jul 2008 14:31


Auflösung von DIBs in der Zwischenablage setzen
 
Ich möchte in den Zwischenablagedaten die Auflösung der DIBs einstellen um beim Einfügen die richtigen Abmaße auch bei Auflösungen ungleich 72 dpi zu bekommen. IrfanView kann die Auflösung setzen. Beim Import ins Office wird dann die richtige Größe verwendet.

Meine Versuche gingen in die Richtung, mir den Zwischenablageintrag zu holen und darin die Auflösungswerte zu verändern.
Delphi-Quellcode:
if Clipboard.HasFormat(CF_DIB) then
begin
  hData := clipboard.GetAsHandle(CF_DIB);
  pbih := PBITMAPINFOHEADER(GlobalLock(hData));
  try
    if assigned(pbih) then
    begin
      pbih.biXPelsPerMeter := 1181; // 300 dpi
      pbih.biYPelsPerMeter := 1181;
    end;
  finally
    GlobalUnLOCK(hData);
  end;
end;
Das ganze klappt aber so noch nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz