Βρίσκω παλαιότερους νόμους στην ιστοσελίδα του Εθνικού Τυπογραφείου (http://www.et.gr/index.php/2013-01-2...23/search-laws), κατεβάζω το σχετικό pdf το οποίο είναι αναγνώσιμο από atril document viewer (Ubuntu MATE) αλλά δεν μπορώ να κάνω αναζήτηση ή αντιγραφή ελληνικού κειμένου γιατί μάλλον είναι κωδικοποιημένο σε ISO 8859-7 αντί του UTF-8. Στα αγγλικά και τους αριθμούς δεν υπάρχει πρόβλημα, όπως και στα αρχεία pdf της "Ημερήσιας κυκλοφορίας". Αν θέλετε να δοκιμάσετε δείτε το pdf του Ν3325/2005 (θέματα για ίδρυση επιχειρήσεων).
Σε απλά text editors (gedit, pluma) υπάρχει η δυνατότητα επιλογής του προτύπου κωδικοποίησης γραμματοσειρών κάτι που δεν βρήκα στο atril.
Τι μπορώ να κάνω για να λειτουργεί η αναζήτηση και σε ελληνικά εντός των συγκεκριμένων pdf;
Υ.Γ. αντίστοιχο ίσως και μεγαλύτερο πρόβλημα υπάρχει στα pdf της Στατιστικής Αρχής.
Εμφάνιση 1-13 από 13
-
03-03-16, 17:31 ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #1
Τελευταία επεξεργασία από το μέλος GeorgeVita : 04-03-16 στις 16:08.
-
03-03-16, 19:38 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #2
Δεν ξέρω αν κατέβασα το σωστό αρχείο αλλά σε μερικά που κατέβασα οι νόμοι δεν περιέχουν "κείμενο" αλλά "φωτογραφίες" επειδή κάποιος scanάρισε προφανώς το έγγραφο του νόμου. Σε αυτή την περίπτωση εννοείται πως δεν μπορείς να κάνεις αντιγραφή επικόλληση ή να αναζητήσεις κείμενο επειδή δεν υπάρχει "κείμενο".
Σκέψου δηλαδή ότι εδώ που είσαι στο φόρουμ πατάς alt-printscreen και μετά κάνεις επικόλληση σε ένα κενό έγγραφο του word. Αυτό που θα επικολληθεί θα είναι μια φωτογραφία και έτσι δεν θα μπορείς να αναζητήσεις κάτι."I like offending people, because I think people who get offended should be offended" - Linus Torvalds
"Παλιά είχαμε φτωχούς οι οποίοι ζούσανε σε φτωχογειτονιές. Τώρα, η οικονομικά δυσπραγούσα τάξη
κατέχει στέγες υποδεέστερης ποιότητας σε υποβαθμισμένα αστικά κέντρα" - George Carlin
Γα.... την πολιτική ορθότητα.
-
03-03-16, 19:55 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #3
Ισως ισχύει για τους πολύ παλιούς νόμους, στα σχετικά πρόσφατα (λ.χ. 2005) είναι κανονικό pdf με άλλη κωδικοποίηση. Τα εντελώς νέα αρχεία όπως στην "ημερήσια κυκοφορία" είναι εντάξει.
Για να κατεβάσεις/ανοίξεις το pdf, πατάς πάνω στο εικονίδιο
Για την περίληψη ανοίγει δικό τους viewer με φωτογραφία πατώντας το
Βάζω το πλήρες link για ένα pdf χωρίς να γνωρίζω ότι μπορεί να χρησιμοποιηθεί από άλλους λόγω των στοιχείων συνδέσεως που περιέχει:
http://www.et.gr/idocs-nph/search/pd...GZl0ybPrtrDgiH
Τα πολύ πρόσφατα pdf ανοίγουν και με το LibreOffice με λίγα λάθη στην μορφοποίηση σελίδας αλλά το κείμενο είναι εντάξει.
Εν τω μεταξύ, δοκίμασα επίσης edge, ff, adobe reader σε win10 και ισχύει το πρόβλημα με την ανεύρεση/αντιγραφή.
Αυτό που ψάχνω είναι να ανοίγω εύκολα τα αρχεία από πρόγραμμα σε ubuntu, με τη σωστή κωδικοποίηση.
Δείγμα αντιγραφής του κειμένου "ΕΦΗΜΕΡΙΣ ΤΗΣ ΚΥΒΕΡΝΗΣΕΩΣ" από Adobe Reader (win10): ÅÖÇÌÅÑÉÓ ÔÇÓ ÊÕÂÅÑÍÇÓÅÙÓ
Το ίδιο φέρνει και στο atril. Αν ψάξεις με αυτό στο google θα βρείς πολλά αποτελέσματα...
-
03-03-16, 21:06 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #4
Όντως αυτό το αρχείο που έδωσες έχει κείμενο άρα εγώ άνοιγα κάποιο παλαιότερο. Αν το ανοίξεις αυτό με το libreoffice θα πρέπει να βγαίνει το ίδιο αλαμπουρνέζικα με την αντιγραφή-επικόλληση. Γιατί όμως γίνεται αυτό ?
Το συγκεκριμένο pdf χρησιμοποιεί κάποιες custom γραμματοσειρές οι οποίες είναι ενσωματωμένες μέσα στο pdf. Δεν περιέχουν όμως unicode mapping (ίσως για να μειωθεί το μέγεθος του αρχείου). Δηλαδή μέσα στο pdf λέει "έχουμε το χαρακτήρα που βρίσκεται στην θέση 124 της γραμματοσειράς Χ" οπότε το πρόγραμμα σου βλέπει ποιο glyph υπάρχει στην θέση 124 και στο εμφανίζει. Απλά όμως πάει και εμφανίζει το σχεδιάκι που υπάρχει εκεί χωρίς να ξέρει ότι αυτό το σχεδιάκι αντιστοιχεί π.χ στο γράμμα Κ επειδή δεν υπάρχει unicode mapping που να λέει ότι η θέση 124 αντιστοιχεί στο unicode code point τάδε που με τη σειρά του ξέρουμε ότι είναι το γράμμα Κ. Το περιγράφω λίγο απλοϊκά αλλά η γενική ιδέα είναι αυτή. Δηλαδή στο περίπου είναι σαν να είναι πάλι φωτογραφία και όχι κείμενο που είπα στο προηγούμενό μου post.
Δεν ξέρω τι είναι το atril και δεν έχω adobe reader για να το δω αλλά στο okular και στο evince μπορείς να δεις πληροφορίες για τις ενσωματωμένες γραμματοσειρές. Μια άλλη εντολή που μπορείς να χρησιμοποιήσεις είναι η pdffonts που υπάρχει στο πακέτο poppler. Όπως βλέπεις παρακάτω, καμμία από τις γραμματοσειρές δεν περιέχει unicode mapping.
Κώδικας:% pdffonts document.pdf name type encoding uni ------------------- --------- --------- --- OPINOK+MSTT31c49a Type 1C Custom no MSTT31c50a Type 1C Custom no MSTT31c522 Type 1C Custom no OPJBNI+MSTT31c5c9 Type 1C Custom no OPJBNK+MSTT31c5ee Type 1C Custom no OPJBNM+MSTT31c5fb Type 1C Custom no
Ίσως φυσικά να υπάρχει κάποιο πρόγραμμα σε *nix που να στο κάνει με ένα κλικ και να γράφω χαζομάρες τόση ώρα Δεν έχω ασχοληθεί ιδιαίτερα με το θέμα."I like offending people, because I think people who get offended should be offended" - Linus Torvalds
"Παλιά είχαμε φτωχούς οι οποίοι ζούσανε σε φτωχογειτονιές. Τώρα, η οικονομικά δυσπραγούσα τάξη
κατέχει στέγες υποδεέστερης ποιότητας σε υποβαθμισμένα αστικά κέντρα" - George Carlin
Γα.... την πολιτική ορθότητα.
-
04-03-16, 00:59 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #5
Αρχικά ευχαριστώ για το χρόνο σου και τις τεχνικές λεπτομέρειες που παρέχεις.
Το atril είναι αντίστοιχο του evince (document viewer), είδα τις ενσωματωμένες γραμματοσειρές οι οποίες μάλλον ακολουθούν το ANSI WINDOWS-1253.
Δεν με ενδιαφέρει να κάνω "διόρθωση" ή μαζική αντιγραφή στα κείμενα. Η προσέγγισή μου είναι από την πλευρά του απλού χρήστη/πολίτη που διαβάζω το νόμο ή τις στατιστικές κατηγοριοποιήσεις των επαγγελματικών μου δραστηριοτήτων για να ενημερωθώ, άρα προσπαθώ να πετύχω μια απλή αναζήτηση (ctrl-F) ή να κρατήσω μια σημείωση (copy/paste) από "το γράμμα του νόμου". Η μόνη λύση που βλέπω εφικτή είναι η δημιουργία άλλου πίνακα πληκτρολογίου που θα πατάς λ.χ. κεφαλαίο έψιλον και θα γράφει το ισοδύναμο πλήκτρο σε windows-1253 δηλαδή το "Å" (Å).
-
04-03-16, 12:35 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #6
Δεν ξέρω αν βοηθάει, αλλά είναι μία highly technical answer
http://stackoverflow.com/questions/1...ext-from-a-pdf
-
04-03-16, 16:22 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #7"I like offending people, because I think people who get offended should be offended" - Linus Torvalds
"Παλιά είχαμε φτωχούς οι οποίοι ζούσανε σε φτωχογειτονιές. Τώρα, η οικονομικά δυσπραγούσα τάξη
κατέχει στέγες υποδεέστερης ποιότητας σε υποβαθμισμένα αστικά κέντρα" - George Carlin
Γα.... την πολιτική ορθότητα.
-
04-03-16, 16:23 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #8
Σωστά τοποθετείστε, καλές οι πληροφορίες και στο link αλλά αφορούν τους υπαλλήλους μηχανογράφησης που δημοσιεύουν αυτά τα έγγραφα ώστε να τα διορθώσουν και να γίνουν χρησιμότερα στο ευρύ κοινό.
--- edited ---
Ως προσωρινή λύση έφτιαξα την αναζήτηση με προσθήκες στο αρχείο /usr/share/X11/xkb/symbols/gr του xkb.
Σε κάθε πλήκτρο ελληνικού χαρακτήρα συμπλήρωσα τους ορισμούς για "level 5". Παράδειγμα για το πλήκτρο "Ε":
Κώδικας:από: key <AD03> { [ Greek_epsilon, Greek_EPSILON ] }; // ε Ε σε: key <AD03> { type[Group1]="EIGHT_LEVEL", [ Greek_epsilon, Greek_EPSILON , NoSymbol, NoSymbol, U00C5 ] }; // ε Ε
Εννοείται ότι πληκτρολογώ Δεξί windows key+E αλλά βλέπω Å.
Ο κωδικός "U00C5" είναι το ισοδύναμο δεκαεξαδικό σε UTF-8 του Å ("Ε" στο ANSI Windows-1253).
Η προκαθορισμένη αναφορά "EIGHT_LEVEL" είναι λόγω ύπαρξης 3ων στοιχείων επιλογής (shift, AltGr, RWIN)
Τα ενδιάμεσα "NoSymbol" είναι για να μην επηρεαστούν οι αντιστοιχίες όταν πατάμε "AltGr"+πλήκτρο.Τελευταία επεξεργασία από το μέλος GeorgeVita : 04-03-16 στις 17:45.
-
05-03-16, 23:09 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #9
Την λύση για τη μετατροπή της κωδικοποίησης των ελληνικών χαρακτήρων κατά την αντιγραφή-επικόλληση την έδωσα με ένα μικρό πρόγραμμα python το οποίο μετατρέπει τους χαρακτήρες από 192-255 σε ελληνικούς, προσθέτοντας offset 720*. Το πρόγραμμα διαβάζει το clipboard, αλλάζει τους χαρακτήρες και τους γράφει πάλι πίσω στο clipboard. Εφτιαξα ένα keyboard shortcut για να τρέχω τον "αυτοσχέδιο διορθωτή κειμένων εθνικού τυπογραφείου" και ... όλα εντάξει!
Κώδικας:#!/usr/bin/env python # ETpdf.py import pygtk pygtk.require('2.0') import gtk clipboard = gtk.Clipboard() neaData="it is empty!" neaData = clipboard.wait_for_text() neaData=neaData.replace(unichr(192),unichr(192+720)) # ... 193, ... , 255 clipboard.set_text(neaData) clipboard.store()
* λ.χ. για το κεφαλαίο "Ε" έπρεπε να γίνει μετατροπή από "U00C5" σε "U0395"
(offset του Unicode 0x300=768 μείον 48 χαρακτήρες "τσούλημα" από Å σε Ε)
-
06-03-16, 19:47 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #10
-
06-03-16, 20:14 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #11
Από ANSI Windows-1253 σε Unicode είναι συμμετρική η αλλαγή, με εξαίρεση το κεφαλαίο "Α με τόνο" (από την θέση 162 πάει στην 902). Θεωρώ ότι μπορεί να χρειαστώ μετατροπή σε κάτι ακόμη παλαιότερο λ.χ. cp737 που είναι σε πολύ διαφορετικές θέσεις οπότε η αντιστοίχιση με μια μορφή πίνακα ταιριάζει ως πιο παραμετρική.
-
07-03-16, 00:40 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #12
-
07-03-16, 16:21 Απάντηση: ATRIL, πρόβλημα στην αναζήτηση εντός αρχείου pdf με κωδικοποίηση ISO (όχι UTF-8). #13
... ότι πεις!
Για την μετατροπή του αποθηκευμένου κειμένου στο clipboard από ANSI Windows 1253 σε Unicode (ελληνικοί χαρακτήρες),
σύμφωνα με το ftp://ftp.unicode.org/Public/MAPPING...OWS/CP1253.TXT:
Κώδικας:#!/usr/bin/env python # ETpdf2.py import pygtk pygtk.require('2.0') import gtk clipboard = gtk.Clipboard() neaData="it is empty!" neaData = clipboard.wait_for_text() neaData=neaData.replace(unichr(161),unichr(161+740)) neaData=neaData.replace(unichr(162),unichr(162+740)) for char1253 in range(180,181) + range(184,187) + range(188,189) + range(190,210) + range(211,255): neaData=neaData.replace(unichr(char1253),unichr(char1253+720)) clipboard.set_text(neaData) clipboard.store()
Παρόμοια Θέματα
-
[Asus] Usb-AC51 Προβλημα στην αναζητηση SSID
Από panoulisss στο φόρουμ ADSL & Broadband Hardware, routers και modems...Μηνύματα: 3Τελευταίο Μήνυμα: 12-10-15, 21:31 -
Πρόβλημα με συγχρονισμό ή όχι;
Από BlurryBlue στο φόρουμ COSMOTE VDSLΜηνύματα: 4Τελευταίο Μήνυμα: 01-06-15, 09:29 -
Πρόβλημα στην εκτροπή κλήσεων στο FRITZ 7170
Από georgep138 στο φόρουμ AVM ADSL modems και routersΜηνύματα: 0Τελευταίο Μήνυμα: 08-04-15, 12:40 -
Γενικευμένο πρόβλημα στην υπηρεσία Internet της Forthnet [Updated]
Από nnn στο φόρουμ ΕιδήσειςΜηνύματα: 199Τελευταίο Μήνυμα: 04-04-15, 13:09 -
προβλημα στην εγκατάσταση των windows
Από gfg62 στο φόρουμ WindowsΜηνύματα: 6Τελευταίο Μήνυμα: 22-03-15, 21:50
Bookmarks