Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Δημιουργία PDF από .NET

Îåêßíçóå áðü ôï ìÝëïò Παναγιώτης Καναβός. Τελευταία δημοσίευση από το μέλος KelMan στις 14-01-2011, 09:31. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  13-01-2011, 15:23 62308

    Δημιουργία PDF από .NET

    Τον τελευταίο καιρό ψάχνω να πως μπορεί κανείς να φτιάξει pdf documents με κώδικα - χωρίς φυσικά να καλέσει το Acrobat με Interop! Ο λόγος είναι ότι θέλω να σκανάρω έγγραφα μέσω silverlight και να τα αποθηκεύσω ως PDF.

    Ως τώρα έχω κοιτάξει το iText, το PDFSharp (ουσιαστικά το recompile του για Silverlight, SilverPDF) .

    • Το iText παραείναι port από την Java - περιέχει δικές του υλοποιήσεις ακόμα και για τα certificates, ενώ δεν χρησιμοποιεί πουθενά generics.  Χρειάζονται πάρα πολλές αλλαγές (600+) για να γίνει recompile για Silverlight.
    • To PDFSharp δουλεύει, αν και με ξενίζει λίγο το API του, το οποίο μιμείται τα WinForms με εντολές όπως DrawString, DrawImage κλπ.

    Τέλος, έχω κοιτάξει απέξω-απέξω και το FO.NET το οποίο επεξεργάζεται αρχεία XSL-FO για να δημιουργήσει PDF. Αμφιβάλλω όμως αν έχει νόημα να χρησιμοποιήσει κανείς XSL για να προσθέσει απλά μερικές εικόνες και παραγράφους σε ένα PDF.

    Καμμία άλλη ιδέα κανείς?

    Υ.Γ. Δεν ρωτάω για έτοιμα προϊόντα. Από τη στιγμή που υπάρχει τουλάχιστον ένας τρόπος να γίνει η δουλειά με open source, τον προτιμώ.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
    Δημοσίευση στην κατηγορία: ,
  •  13-01-2011, 15:38 62309 σε απάντηση της 62308

    Απ: Δημιουργία PDF από .NET

    Θέλεις μετατροπή εγγράφων ή σύνθεση νέων;

    Με ενδιαφέρει και εμένα αυτό. Ίσως υπάρχει κάτι που να κάνει HTML > PDF, θα με βόλευε. Πρέπει κάποια στιγμή να το πιάσω το θέμα.
    "When the darkness rises up from inside - that is normal.
    It's when you reach down to pull it up - that the noxious warnings sound."
    Tuzak, Farscape
  •  13-01-2011, 15:53 62310 σε απάντηση της 62309

    Απ: Δημιουργία PDF από .NET

    Για δημιουργία ενδιαφέρομαι. Σκανάρω σελίδες, προσθέτω images. Η δημιουργία ενός ενδιάμεσου format δεν βολεύει πραγματικά. Το ενδιάμεσο format και ειδικά το XSL-FO θα είχε ενδιαφέρον σε σενάρια reporting όπου κάποιος φτιάχνει ένα template και μετά το κάνει merge με δεδομένα.

    Για την ώρα με το PDFSharp/SilverPDF έχω καταλήξει σε κάτι σαν το παρακάτω:

                using (var outStream = File.CreateFile(somePath))
                using (var doc = new PdfDocument())
                {
                                    
                    foreach (var pic in Images)
                    {
                        var page = doc.AddPage();
                        using (var stream = new MemoryStream(pic)
                        using (XGraphics gfx = XGraphics.FromPdfPage(page))
                        {
                            XImage image = XImage.FromStream(stream);                        
                            gfx.DrawImage(image,new XRect(0,0,page.Width,page.Height));
                        }
    
                    }
                    doc.Save(outStream);
                }

    όπου το Images περιέχει τα binary των εικόνων.

    Έχει δουλέψει κανείς με κάτι άλλο?

     


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  13-01-2011, 15:59 62311 σε απάντηση της 62308

    Απ: Δημιουργία PDF από .NET

    Ακολουθώντας τα links αυτής της συζήτησης, έπεσα πάνω στο PDFJet.

    Ακόμα κι ένας άνθρωπος μπορεί ν' αλλάξει τον κόσμο. Μη θέλεις να κυβερνήσεις. Απλά δείξε το μονοπάτι κι ο κόσμος θ' ακολουθήσει!!
  •  14-01-2011, 09:31 62333 σε απάντηση της 62310

    Απ: Δημιουργία PDF από .NET

    Επειδή πριν έναν χρόνο το έψαξα πολύ το θέμα, η απάντηση είναι... εξαρτάται. Το PDF format έχει τεράστιο spec και η κάθε βιβλιοθήκη/component υποστηρίζει ένα μικρό ή μεγάλο μέρος του. Πριν έναν χρόνο λοιπόν για Silverlight ό,τι υπήρχε ήταν pathetic με αποτελέσματα που ήταν απαράδεκτα. Πχ έβαζες να κάνει ένα ντεγκραντέ και έβγαινε με εμφανέστατα σκαλοπατάκια. Και επειδή το ζητούμενο για μένα ήταν pdf υψηλής ποιότητας με προορισμό εκτυπωτικές μηχανές τελικά παράτησα την ιδέα του client-side generation και πήγα με το server-side όπου υπάρχουν καλύτερες βιβλιοθήκες.

    Οπότε Παναγιώτη δεν μπορώ να σε βοηθήσω και πολύ, πέρα από το να σου πω ότι αν υπάρχει κάποια υποψία ότι κάποια στιγμή (τρώγοντας έρχεται η όρεξη) θα χρειαστεί να έχεις πιο πλούσιο περιεχόμενο στο PDF, μπορεί η λύση σου να μην σε καλύπτει...

     


    Vir prudens non contra ventum mingit
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems