PHP | חילוץ טקסט בעברית מקובץ PDF
-
אני רואה שעשיתי טעות.
חשבתי שבקטע RTL הפונקציה יביא סדר חזותי מימין לשמאל. למעשה לפי מה שאתה אומר זה מביא את הסדר משמאל לימין.יש דבר שאני לא מבין,
@WWW אמר בPHP | חילוץ טקסט בעברית מקובץ PDF:במקור זה מופיע כך:
Hello !םלוע ,למה? זה לא סדר וויזואלי, אולי זה הסדר של הרינדור ב-PDF? אתה יכול להעלות את ה-PDF?
-
@yossiz אמר בPHP | חילוץ טקסט בעברית מקובץ PDF:
אולי זה הסדר של הרינדור ב-PDF?
זה בדיוק עיקר הבעיה עם קריאה של PDF, כנראה כל מיני צורות של ספריות שאחראיות לסגירה. לא יודע מה במקרה הזה, אבל עבדתי עם מסמכים (לועזית) שהטקסט היה מאונך וכל מיני טריקים הזויים. היה ממש קשה נורא לקחת אפילו שתי תוים אחד ליד השני ובזמנו הוצאתי לפי מיקום עם rectangles שעשיתי לפי השורות.
-
@WWW אמר בPHP | חילוץ טקסט בעברית מקובץ PDF:
עדיין יש קצת בעיות עם תווים בלתי מזוהים.
גם עם זה הסתדתי ב"ה, עם זה: https://stackoverflow.com/a/3466049
/** * Removes invalid XML * * @access public * @param string $value * @return string */ function stripInvalidXml($value) { $ret = ""; $current;// למחוק גורם לשגיאה. if (empty($value)) { return $ret; } $length = strlen($value); for ($i=0; $i < $length; $i++) { $current = ord($value{$i}); if (($current == 0x9) || ($current == 0xA) || ($current == 0xD) || (($current >= 0x20) && ($current <= 0xD7FF)) || (($current >= 0xE000) && ($current <= 0xFFFD)) || (($current >= 0x10000) && ($current <= 0x10FFFF))) { $ret .= chr($current); } else { $ret .= " "; } } return $ret; }
-
@yossiz אמר בPHP | חילוץ טקסט בעברית מקובץ PDF:
@WWW צודק, עכשיו שאני בודק שוב, אני רואה שזה לא שזה מקודד לא נכון, אלא שזה לא מקודד בכלל. (אין ערך יוניקוד לתווים)
צודק.
בדקתי עכשיו בחיפוש באקרובט (וגם בתוכנה 'שלך'...) הוא לא מצליח למצוא כלום בקובץ רק בכותרות... -