Flatten σε PDF
στον περιηγητή σας.
Κλειδώστε διαδραστικά πεδία φόρμας και σχόλια σε στατικό περιεχόμενο. Οι παραλήπτες βλέπουν τις τιμές αλλά δεν μπορούν να τις αλλάξουν. Χωρίς ανέβασμα.
Επαληθεύστε το μόνοι σας: ανοίξτε τα DevTools → καρτέλα Network → ρίξτε ένα αρχείο. Δείτε ότι δεν γίνεται καμία μεταφόρτωση.
Τρία βήματα. Το αρχείο σας δεν φεύγει ποτέ από αυτή την καρτέλα.
Αφήστε το συμπληρωμένο PDF
Επιλέξτε τη συμπληρωμένη φόρμα. Φορτώνεται στη μνήμη του περιηγητή, όχι σε διακομιστή.
Πατήστε Flatten
Ενσωματώνουμε τις τιμές των πεδίων και τα σχόλια απευθείας στη σελίδα, αφαιρώντας τη διαδραστική στρώση.
Κατεβάστε το κλειδωμένο αντίγραφο
Το αποτέλεσμα φαίνεται ίδιο, αλλά οι παραλήπτες δεν μπορούν να αλλάξουν τις τιμές. Το πρωτότυπο μένει ανέπαφο.
Να ψήσετε τη φόρμα μέσα στη σελίδα
Οι λόγοι να ισιώσετε (flatten) ένα PDF αφορούν συνήθως το πάγωμα του τρέχοντος ορατού. Φορολογική φόρμα συμπληρωμένη πληκτρολογώντας στο PDF πάει σε λογιστή — ο παραλήπτης πρέπει να βλέπει τις απαντήσεις αλλά να μην μπορεί να τις επεξεργαστεί. Υπογεγραμμένη συμφωνία ολοκληρώθηκε με συμπληρωμένο πεδίο υπογραφής — προωθώντας την, το πεδίο δεν πρέπει να παραμένει κλικαρίσιμο στοιχείο φόρμας που κάποιος ξανα-γράφει. Σαρωμένο έγγραφο επέστρεψε με σχολιασμούς και σφραγίδες και πρέπει να κυκλοφορήσει σε ευρύτερο κοινό χωρίς το επίπεδο σχολιασμών να μένει επεξεργάσιμο. Εκτυπώσιμο φυλλάδιο στοιχειοθετήθηκε σε InDesign με διαδραστικά widgets φόρμας που πρέπει να εμφανίζονται ως στατικοί placeholder κατά την σελιδοποίηση για εκτύπωση. Η εργασία εδώ είναι μικρή και προβλέψιμη: παίρνετε ένα PDF με πεδία φόρμας ή σχολιασμούς και μετατρέπετε την τρέχουσα οπτική τους κατάσταση σε μόνιμο περιεχόμενο σελίδας.
Αυτό που λαμβάνετε πίσω είναι PDF που μοιάζει το ίδιο στην οθόνη αλλά δεν έχει πια διαδραστικά στοιχεία. Κάθε συμπληρωμένο πεδίο κρατά την τιμή του ως στατικό κείμενο. Κάθε κενό γίνεται ό,τι έδειχνε το φόντο του (συχνά γκρι ορθογώνιο, μερικές φορές τίποτα ορατό). Σχολιασμοί και σφραγίδες ψήνονται παρόμοια στη σελίδα.
Τι κάνει πραγματικά το flatten
Το PDF αποθηκεύει τα πεδία φόρμας ως ξεχωριστό επίπεδο πάνω από τη σελίδα. Η ίδια η σελίδα δεν ξέρει για το περιεχόμενο της φόρμας· το widget του πεδίου τοποθετείται από πάνω της κατά τη θέαση και η τρέχουσα τιμή αποδίδεται στην ορατή περιοχή. Το ίσιωμα γκρεμίζει αυτό το επίπεδο — διατρέχει κάθε πεδίο, αιχμαλωτίζει την οπτική του κατάσταση τη στιγμή της λειτουργίας, ζωγραφίζει αυτό το στιγμιότυπο ως συνηθισμένο περιεχόμενο σελίδας (κείμενο, γραμμές, κουτιά επιλογής ως διαδρομές) και μετά αφαιρεί τον ίδιο τον ορισμό της φόρμας.
Το αποτέλεσμα είναι μια συνεχής στατική σελίδα όπου το ορατό είναι το ζωγραφισμένο. Δεν υπάρχει πια «φόρμα» στο έγγραφο. Ο αναγνώστης δεν μπορεί να πει ότι ποτέ είχε πεδία, και κανένα εργαλείο PDF δεν μπορεί να επανα-επεξεργαστεί τις τιμές χωρίς OCR της σελίδας από το μηδέν.
Τι ισιώνεται και τι όχι
- Πεδία φόρμας (AcroForm). Εισαγωγές κειμένου, κουτιά επιλογής, κουμπιά radio, πτυσσόμενα μενού, listbox, πεδία υπογραφής, κουμπιά. Όλα αυτά ισιώνονται — η τρέχουσα τιμή ή επιλογή γίνεται στατικό περιεχόμενο σελίδας.
- Τα κενά πεδία διατηρούν την εμφάνιση. Ένα ασυμπλήρωτο κουτί κειμένου διατηρεί το περίγραμμά του και (συχνά) μια γραμμή placeholder· αυτό το οπτικό μένει ως ζωγραφισμένα σχήματα. Ένα μη επιλεγμένο κουτί μένει κενό κουτάκι.
- Τα υπολογιζόμενα πεδία αιχμαλωτίζουν την τρέχουσα τιμή τους. Πεδία με τύπους (λειτουργία Acrobat Pro) παγώνουν στην εμφανιζόμενη τιμή — ο τύπος μετά το flatten εξαφανίζεται.
- Οι σχολιασμοί μπορεί να ισιωθούν ή όχι. Σχόλια, επισημάνσεις και σφραγίδες εξαρτώνται από τον προβολέα που τα έγραψε· το form.flatten() του pdf-lib στοχεύει συγκεκριμένα στο AcroForm. Αν χρειάζεται να φύγουν και οι σχολιασμοί, ο σωστός δρόμος είναι πλήρης εξαγωγή από τον προβολέα-πηγή.
- Το υπάρχον στατικό περιεχόμενο σελίδας δεν αγγίζεται. Κείμενο, εικόνες, διάταξη, σελιδοδείκτες μεταφέρονται αμετάβλητα.
Τι επιβιώνει και τι όχι
- Το ορατό περιεχόμενο μένει το ίδιο. Κείμενο, εικόνες, διάταξη, γραμματοσειρές και τιμές φόρμας όπως φαίνονταν τη στιγμή του flatten — διατηρούνται ακριβώς.
- Σελιδοδείκτες, σύνδεσμοι, δομή σελίδας μεταφέρονται. Το flatten στοχεύει στο επίπεδο φόρμας, όχι στη διάρθρωση του εγγράφου.
- Η διαδραστικότητα της φόρμας φεύγει. Όχι άλλα κλικαρίσιμα πεδία, όχι επιλογές dropdown, όχι «tab στο επόμενο πεδίο». Αυτό είναι το νόημα της λειτουργίας.
- Οι ψηφιακές υπογραφές ακυρώνονται. Οποιαδήποτε τροποποίηση του εγγράφου, συμπεριλαμβανομένου του flatten, σπάει τις δεσμεύσεις υπογραφής. Αν το έγγραφο είναι υπογεγραμμένο και η υπογραφή πρέπει να μείνει έγκυρη, μην ισιώνετε — αντιγράψτε το αρχείο και ισιώστε το αντίγραφο.
- Η λειτουργία είναι μονής κατεύθυνσης. Άπαξ ισιωμένο, δεν υπάρχει «un-flatten». Ο ορισμός φόρμας έφυγε. Για επανα-επεξεργασία θα έπρεπε να ξαναδημιουργήσετε τα πεδία από το μηδέν σε επεξεργαστή PDF που υποστηρίζει authoring φόρμας.
Αν κάτι μοιάζει στραβό
- «Δεν συνέβη τίποτα» — δεν υπάρχουν πεδία προς ίσιωμα. Το PDF δεν περιείχε AcroForm. Το εργαλείο σ' αυτή την περίπτωση επανα-αποθηκεύει το αρχείο ως έχει· το αποτέλεσμα είναι λειτουργικά πανομοιότυπο με την είσοδο. Για έλεγχο παρουσίας πεδίων, ανοίξτε σε Adobe Reader και κοιτάξτε «Highlight Existing Fields» — αν τίποτα δεν επισημαίνεται, δεν υπάρχει τίποτα για ίσιωμα.
- Κάποιοι σχολιασμοί δεν ψήθηκαν. Το πέρασμα form.flatten() ισιώνει μόνο widgets AcroForm. Επικαλύψεις σχολιασμού (post-it, μαρκαδόρος, σχέδιο με το χέρι) χρειάζονται άλλη λειτουργία. Για αυτές, εξάγετε ξανά από τον αρχικό προβολέα ή πρώτα ενοποιήστε μέσω edit-pdf.
- Οι συμπληρωμένες τιμές μετά το flatten μοιάζουν λάθος. Η ισιωμένη αναπαράσταση αιχμαλωτίζει ό,τι ζωγραφίστηκε τη στιγμή της λειτουργίας. Αν η φόρμα είχε αντικατάσταση γραμματοσειράς ή πεδίο που εμφανιζόταν διαφορετικά από το αναμενόμενο, το ψήσιμο πιάνει αυτό. Ελέγξτε πρώτα την πηγή σε προβολέα — το flatten θα διατηρήσει αυτό που βλέπετε εκεί.
- Το PDF είναι κρυπτογραφημένο. Περάστε το πρώτα από unlock-pdf· τα κρυπτογραφημένα PDF δεν τροποποιούνται.
Συνηθισμένοι λόγοι ισιώματος
- Στείλτε μια συμπληρωμένη φόρμα σε κάποιον που δεν πρέπει να την επεξεργαστεί. Φορολογικές δηλώσεις στον λογιστή, συμβάσεις στον νομικό, φόρμες HR — το flatten κλειδώνει τις τιμές.
- Συνδυάστε συμπληρωμένες φόρμες σε ένα ενιαίο αρχειακό έγγραφο. Διαφορετικά αντίγραφα της ίδιας φόρμας συμπληρωμένα από διαφορετικά άτομα, συγχωνευμένα σε δέμα. Ισιώστε το καθένα πριν από τη συγχώνευση ώστε κάθε αντίγραφο να διατηρεί τις τιμές του χωρίς συγκρούσεις IDs πεδίων.
- Προετοιμασία για εκτύπωση ή δημόσια διανομή. Τα εκτυπωμένα PDF δεν τιμούν την διαδραστικότητα έτσι κι αλλιώς, αλλά ένας προβολέας που ανοίγει το αρχείο πριν από την εκτύπωση μπορεί να εμφανίζει πεδία διαφορετικά από την έκδοση εκτύπωσης. Ισιώστε εκ των προτέρων ώστε οθόνη και σελίδα να ταιριάζουν.
- Αφαίρεση συμπληρώσιμης συμπεριφοράς από πρότυπο. Πρότυπο σχεδιασμένο με τιμές δείγματος στα πεδία, έτοιμο για αποστολή ως ολοκληρωμένο παράδειγμα. Το flatten παγώνει τις τιμές δείγματος.
Πρακτικές σημειώσεις
- Ισιώστε τελευταίοι. Αν χρειάζεται επίσης να προσθέσετε αριθμούς σελίδων, υδατογράφημα ή συμπίεση — κάντε αυτές τις λειτουργίες πρώτα ενώ το έγγραφο είναι ακόμη επεξεργάσιμο. Άπαξ ισιωμένο, οι αλλαγές που εξαρτώνται από τη συνείδηση φόρμας αποκλείονται.
- Κρατήστε το πρωτότυπο. Η ισιωμένη έκδοση αντικαθιστά λειτουργικότητα που δεν επιστρέφει. Αποθηκεύστε την επεξεργάσιμη πηγή για περίπτωση μεταγενέστερης ενημέρωσης τιμών, μετά ισιώστε ξανά.
- Πρώτα δοκιμάστε σε μία σελίδα. Αν το έγγραφο είναι μεγάλο και δεν είστε σίγουροι πώς θα ψηθεί, χωρίστε μια σελίδα-δείγμα μέσω split-pdf, ισιώστε το δείγμα, ελέγξτε το αποτέλεσμα σε προβολέα, μετά ισιώστε όλο το έγγραφο.
- Το αρχικό αρχείο μένει άθικτο. Αυτό που κατεβάζετε είναι ένα νέο ισιωμένο PDF· η πηγή στον δίσκο δεν αλλάζει.
Τι συμβαίνει με το αρχείο σας
Το ίσιωμα τρέχει στον φυλλομετρητή σας. Ανοίξτε τα DevTools και παρακολουθήστε την καρτέλα Network κατά τη λειτουργία — κανένα εξερχόμενο αίτημα με περιεχόμενο αρχείου. Το PDF μένει στον δίσκο· η ισιωμένη έκδοση είναι μια νέα λήψη δίπλα.
Συχνές ερωτήσεις
Τι σημαίνει flatten;
Το flatten μετατρέπει διαδραστικές στρώσεις — πεδία φόρμας, σχόλια, σημειώσεις — σε στατικό περιεχόμενο σελίδας. Οπτικά τίποτα δεν αλλάζει, αλλά οι τιμές γίνονται μέρος της ίδιας της σελίδας και δεν είναι πια επεξεργάσιμες.
Γιατί να κάνω flatten ένα PDF;
Για να στείλετε τελικό, μη επεξεργάσιμο αντίγραφο: υπογεγραμμένο συμβόλαιο, συμπληρωμένο φορολογικό έντυπο, εγκεκριμένη πρόταση. Εμποδίζει τους παραλήπτες να αλλάξουν τις τιμές κατά λάθος ή σκόπιμα.
Θα αλλάξει η εμφάνιση;
Όχι — οι σελίδες μετά από flatten εμφανίζονται πανομοιότυπα. Η αλλαγή είναι δομική, όχι οπτική: τα πεδία γίνονται ενσωματωμένο κείμενο, τα σχόλια ενσωματωμένα σήματα.
Λειτουργεί σε PDF χωρίς φόρμες;
Ναι. Αν δεν υπάρχουν πεδία ή σχόλια, το flatten είναι ουσιαστικά μια «αποθήκευση εκ νέου». Πιο χρήσιμο όταν έχετε πεδία φόρμας ή σημειώσεις προς κλείδωμα.
Πού πάει το αρχείο μου;
Πουθενά. Το flatten γίνεται εξ ολοκλήρου σε αυτή την καρτέλα. Επαληθεύεται στο DevTools → Network: δεν γίνεται ανέβασμα.