Announcement

Collapse
No announcement yet.

C/C++ Grafik API für PHP erstellen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • C/C++ Grafik API für PHP erstellen

    Hallo!

    Ich habe die Absicht eine C/C++ Grafik API zu schreiben auf deren C/C++ Funktionen man mittels PHP zugreifen kann. Die API greift wiederum auf andere C++ Grafiklibraries zu und soll eigentlich nur eine Schnittstelle zu PHP darstellen. (sowas wie gd)

    Ich muss sagen, dass meine PHP Kenntnisse schon eine Weile her sind und wollte euch fragen, ob ihr mir Infos darüber geben könntet, wie ich das am besten angehen könnte, da ich im web noch nicht viel dazu gefunden habe.

    lg + danke

    int0

  • #2
    Mich würde da mal interessieren, wie du die Verbindung C/C++Wrapper <-> PHP machen willst.
    Christian

    Comment


    • #3
      Genau das ist die Frage, die ich mir (und dem entwickler-forum :P) stelle ...

      Comment


      • #4
        Dann wird das wohl aus meiner Sicht vergebliche Liebsmüh sein:

        PHP ist eine plattformunabhängige, serverseitige Scriptsprache. Ich sehe da keine Möglichkeit sinnvoll auf DLLs o.a. zuzugreifen, die eine Schnittstelle sein könnten. Des Weiteren macht das nur Sinn, wenn PHP als Scriptsprache außerhalb eines Webservers eingesetzt wird. Wer sollte da aber nun ausgerechnet PHP wählen, um eine Grafikausgabe zu realisieren, anstatt Java,C++ o.a.? Dann ist es auch nicht mit der Grafikausgabe getan, vielmehr müsste die gesamte Ausgabe (Fenster, Messages usw.) für das Zielsystem implementiert werden. Die erwähnte Lib GD gibt nur an den Browser aus bzw. schreibt ins Filesystem. Sie macht keine Grafikausgabe im eigentlichen Sinne. auch gibt es keine C/C++ Grafiklib. Vielmehr gibt es dort nur Wrapper für ein bestimmtes Betriebssystem.

        Denke hier eine Verbindung schaffen zu wollen, ist weniger sinnvoll.
        Christian

        Comment


        • #5
          ich hab dir mal die aufgabenstellung per private message geschickt - würde gerne wissen, wie du diese angabe interpretierst.
          würde mich freuen, wenn ich deine meinung dazu lesen könnte!

          lg

          Comment


          • #6
            Das ist keine Grafikausgabe (jedenfalls nicht so wie ich sie verstehen würde).Für die geplante Web-Lösung erfolgt keine Grafikausgabe. Vielmehr wird die Grafik in ein Bild gesetzt und an den Browser gesandt. Das ist - so wie ich es verstehe - keine "Grafikausgabe"

            Das wäre ja ein "Ersatz" zu GD. Das kann nun mit den PHP-Mitteln zu Erweiterung der Sprache gemacht werden. Sourcen runterladen und erweitern, kompilieren
            Christian

            Comment


            • #7
              ok, danke dir!

              ich habe mir nun gedacht einfach eine c api zu schreiben, die auf die graphikfunktionen der libraries (agg) zugreift. die api wird einfach über "system()" aufgerufen - mitgeschickt werden parameter, die eben die spezifikationen angeben - die graphiklib erzeugt dann das passende bild und gibt halt eine erfolgsmeldung aus. den rückgabewert bekommt man von der "system()" funktion mitgegeben und diese kann das fertige bild dann in den browser laden.

              Comment


              • #8
                Klar geht das auch so, aber dann hast du ja für n-Aufrufe deiner Grafik API n-"System"aufrufe, die sich ja nun dann schlecht verwenden/unterscheiden lassen. Denke, du willst sowas drin haben als Aufruf wie "RenderGrafik" oder "SetRGB" usw.
                Christian

                Comment


                • #9
                  ja genau ... aber versteh noch nicht ganz wieso das nicht gehen soll? wie würdest du das lösen? mit erweitern?

                  lg

                  Comment


                  • #10
                    Hallo,

                    es ist sicher eine interessante Aufgabe, eine C/C++ API für Verarbeitung von Grafiken zu schreiben.

                    Falls die Aufgabenstellung es aber nicht erfordert, eine eigene API zu implementieren, würde ich dir ImageMagick vorschlagen. Damit lässt sich einiges anstellen und die Binaries gibt es für verschiedene Systeme.

                    Es gibt auch in PHP geschriebene APIs dafür. Das wäre vielleicht eine interessante Alternative zur Eigententwicklung.

                    Gruß
                    purcaholic

                    Comment

                    Working...
                    X