Delphi <-> Lazarus

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.
Antworten
bdlm
Beiträge: 5
Registriert: Di 16. Aug 2011, 12:40

Delphi <-> Lazarus

Beitrag von bdlm »

ich möchte ein Programm mit Delphi entwickelt in Lazarus compilieren. Gibt es eine Unit, ... die fehlende Delphi Componenten (TRichedit) zumindest kompilierbar macht ....

z.B.

{$if def LARAZUS}
type TRichedit = Tmemo
{$end}

Benutzeravatar
theo
Beiträge: 10498
Registriert: Mo 11. Sep 2006, 19:01

Re: Delphi <-> Lazarus

Beitrag von theo »

Nein.

Heinrich Wolf
Beiträge: 323
Registriert: Di 12. Apr 2011, 13:21
OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
CPU-Target: 1core 1,8GHz 32Bit
Wohnort: Fürth
Kontaktdaten:

Re: Delphi <-> Lazarus

Beitrag von Heinrich Wolf »

Doch! Hier gibt es TRichMemo:
https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/richmemo/
Am besten mit svn zu holen. Hat allerdings noch Bugs, besonders unter Linux.

bdlm
Beiträge: 5
Registriert: Di 16. Aug 2011, 12:40

Re: Delphi <-> Lazarus // PNG Image

Beitrag von bdlm »

wie sieht z.B. die beste Moglichkeit aus Delphi code der die Unit pngimage und TPnhObject verwendet durch möglichst geringe Änderungen Lazarus kompatibel umzu schreiben ??

Benutzeravatar
theo
Beiträge: 10498
Registriert: Mo 11. Sep 2006, 19:01

Re: Delphi <-> Lazarus // PNG Image

Beitrag von theo »

bdlm hat geschrieben:wie sieht z.B. die beste Moglichkeit aus Delphi code der die Unit pngimage und TPnhObject verwendet durch möglichst geringe Änderungen Lazarus kompatibel umzu schreiben ??


Lazarus unterstützt PNG nativ. Also kann man alles PNG-spezifische löschen.

bdlm
Beiträge: 5
Registriert: Di 16. Aug 2011, 12:40

Re: Delphi <-> Lazarus

Beitrag von bdlm »

ich suche nach einer Lösung mit der mein Code sowohl unter Delphi als auch unter Lazarus compilierbar ist

Der verzicht des Einbinden der pngiage unit geht einfach

uses ...........

{$ifdef DELPHI}
pngimage,
{$enfif}

......;

wie bekomme ich aber ein TpngObject im Lazarus zum compileren, ich benötige einen Funktions / Class Wrapper

MAC
Beiträge: 770
Registriert: Sa 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
CPU-Target: 32Bit

Re: Delphi <-> Lazarus

Beitrag von MAC »

Was ist denn die Funktion eines TpngObject ???
Bei Lazarus werden, zum beispiel von einem TImage mehrere Formate Automatisch unterstützt , so das es nicht notwendig ist ein Extra Objekt für Png zu erstellen...

Code: Alles auswählen

Signatur := nil;

Heinrich Wolf
Beiträge: 323
Registriert: Di 12. Apr 2011, 13:21
OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
CPU-Target: 1core 1,8GHz 32Bit
Wohnort: Fürth
Kontaktdaten:

Re: Delphi <-> Lazarus

Beitrag von Heinrich Wolf »

Vergleiche http://www.Wolf-Fuerth.de/calprint.src.zip. Da ist sowohl TRichMemo als auch tPortableNetworkGraphic drin und es ist Delphi 5 / Lazarus cross-platform. Es kann PNG lesen und schreiben und RTF schreiben.

Code: Alles auswählen

program CalPrint;
 
//...
 
{$ifdef Ver130}
  { Delphi 5 }
  {$define DelphiPng}
{$endif}
 
//...
 
uses
  //...
  {$ifdef DelphiPng}
    { http://pngdelphi.sourceforge.net
      http://www.delphi-forum.de/topic_PNGImage_90020,0.html
      http://www.torry.net/vcl/graphics/other ... gimage.zip
    }

    PngImage in '..\..\..\PngImage\PngImage.pas',
    PngLang  in '..\..\..\PngImage\PngLang.pas',
    ZLibPas  in '..\..\..\PngImage\ZLibPas.pas',
  {$endif}
  //...
  var     Graphic : tGraphic;
  //...
  begin
    //...
            {$ifdef fpc}
              PicIndexPng : try
                              Graphic := tPortableNetworkGraphic.Create;
                            except
                              Graphic := Nil;
                            end;
            {$else}
              PicIndexGif : try
                              Graphic := tGifImage.Create;
                            except
                              Graphic := Nil;
                            end;
            {$endif}
            {$ifdef DelphiPng}
              PicIndexPng : try
                              Graphic := tPngObject.Create;
                            except
                              Graphic := Nil;
                            end;
            {$endif}
Zuletzt geändert von Heinrich Wolf am Mi 17. Aug 2011, 07:05, insgesamt 1-mal geändert.

Heinrich Wolf
Beiträge: 323
Registriert: Di 12. Apr 2011, 13:21
OS, Lazarus, FPC: WinXP + VMWare Player mit Fedora14, L 1.1, FPC 2.7.1
CPU-Target: 1core 1,8GHz 32Bit
Wohnort: Fürth
Kontaktdaten:

Re: Delphi <-> Lazarus

Beitrag von Heinrich Wolf »

Heinrich Wolf hat geschrieben:Doch! Hier gibt es TRichMemo:
https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/richmemo/
Am besten mit svn zu holen. Hat allerdings noch Bugs, besonders unter Linux.

http://bugs.freepascal.org/view.php?id=19624

Antworten