freie library zum splitten von pdfs?



  • sers leute,

    bin auf der suche nach einer library, mit der ich existierende pdf-files splitten kann (also zB die seiten 1 und 2 in ein neues dokument und seite 3 in ein anderes). kann da jemand welche empfehlen (gratis natürlich ;-)?

    hätte zwar das hier http://www.pdfsharp.net/wiki/SplitDocument-sample.ashx - gefunden, aber (achtung, anfängerfrage :-P)das ist in c# geschrieben.
    deshalb kann ich die pdfSharp-solution mit meinem visual studio c++ ja nicht builden bzw. selbst wenn ich ein .lib- / .dll-file hätte, könnte ich das in meinem c++-projekt nicht verwenden (nachdems ja in c# is), oder?

    vielen dank im voraus & mfg
    zoidberg



  • Ist in der Lib eventuell eine C++-Header-Datei dabei, die eine Schnittstelle zu der lib oder dll definiert?



  • Ghostscript ist dein Freund:
    http://www.aboutpdf.com/content/view/24/28/



  • Bei QPDF ist eine Bibliothek dabei, die das können sollte.



  • Ich denke mal, dass du hier bestimmt fündig wirst:
    http://sourceforge.net/search/?type_of_search=soft&words=pdf+split&search=Search



  • super, danke. werd mir die sachen mal anschauen und mich bei problemen melden. 😉

    @Max3000: hab auf der seite leider keine .lib, sondern nur den source code gefunden. mit c++-header würde es gehen?

    mfg
    zoidberg



  • hey, also wollts mal mit qpdf (http://sourceforge.net/projects/qpdf/files/) versuchen...bin aber anfänger, und krieg das nicht so ganz hin. :-|

    im readme steht jetzt

    "To compile with qpdf, just add the lib directory to your library path and the include directory to your include path."

    mit library path ist nehm ich an gemeint, dass ich unter den projekteigenschaften/linker auf das .lib-file verlinken soll.
    was ist mit dem include path gemeint? soll ich da das include directory in meinen projektordner kopieren?

    versteht das net ganz, hoffe, ihr könnt mir helfen 🙂

    mfg
    zoidberg



  • Nein. Du musst die lib nicht nur linken, sondenr erstmal schlichtweg den Pfad angeben, wo er denn diese Library finden soll (kann ja nicht sein, dass die IDE zuerst deine ganze HD durchsuchen muss um die .lib zu finden. ;)).

    Üblicherweise kannst du ähnlich, wie den Library Pfad auch einen Includepfad angeben. Und dort machst du eigentilch das gleiche, wie bei den Bibliotheken einfach für den "include-Ordner" (heisst üblicherweise so).

    Was hast du denn für eine IDE?

    Bei Visual Studio kannst du das hier einstellen:
    Tools -> Options -> Projects and Solutions -> VC++ Directories
    Dort kannst du dann in einem Dropdown Include oder Library Pfade angeben.



  • hab visual c++ studio express 2008. library- und include-directory sind jetzt in den vc++-directories eingetragen.

    bei den solution-eigenschaften gibt es ja diverse einstellungen unter configuration properties/linker/general bzw. /input wie zB "additional library directories". muss ich da auch noch was einstellen?

    mfg
    zoidberg



  • Nein.
    Das dort wäre dann nur Projektspezifisch, während die erste Variante (von mir oben genannt) global gehen.

    Du musst eigentlich nur noch die Bibliothek linken. Aber das hast du ja glaube ich schon gemacht.



  • hm...haut nicht so richtig hin. ich hab versucht, eine instanz von qpdf zu erstellen - krieg dann die meldung

    'QPDF' : undeclared identifier
    

    dacht ich mir, ich mach mal

    #include <qpdf/QPDF.hh>
    

    so wie es auch im manual steht: http://qpdf.sourceforge.net/files/qpdf-manual.html#ref.using-library. dann kommt aber immer das:

    fatal error C1083: Cannot open include file: 'qpdf\QPDF.hh': No such file or directory
    

    bzw. wenn ich das include in anführungszeichen statt <> setz, dann das hier:

    fatal error C1083: Cannot open include file: 'qpdf/DLL.h': No such file or directory
    

    vielleicht hab ich ja vorher was falsch gemacht...also schritt für schritt, was ich bis jetzt gemacht hab:

    1. http://sourceforge.net/projects/qpdf/files/ runtergeladen
    2. auf die library gelinkt: unter project - properties - linker - general - additional library directories den pfad zu dem ordner eingetragen, in dem das .lib-file liegt.
    3. unter project - properties - linker - input - additional dependencies den pfad auf das .lib-file selbst eingetragen (kA, is das nötig?)
    4. unter Tools -> Options -> Projects and Solutions -> VC++ Directories -> include files das verzeichnis eingetragen, in dem das header-file liegt.
    5. unter Tools -> Options -> Projects and Solutions -> VC++ Directories -> library files das verzeichnis eingetragen, in dem das .lib-file liegt.
    6. jetzt wollt ich versuchen, das header-file (QPDF.hh - siehe oben) zu #includen, dann kommt aber obige fehlermeldung...

    hab ich da was falsch gemacht bzw. fehlt noch irgendwas?

    find das so frustrierend, wenn ich da stundenlang an irgendwas herumkonfigurieren muss, statt was sinnvolles damit machen zu können und dann auch noch keine gscheite anleitung find (bzw. zu deppert bin, die zu verstehen - kommt ja für mich irgendwie auf das selbe raus). 😞

    danke für eure mühe & mfg
    zoidberg


Log in to reply