Einzelnen Beitrag anzeigen

Wapiti

Registriert seit: 26. Jan 2007
15 Beiträge
 
Delphi 2005 Personal
 
#1

Auflösung von DIBs in der Zwischenablage setzen

  Alt 18. Jul 2008, 14:31
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.
Ralf
  Mit Zitat antworten Zitat