Whatsup - לינוקס, תוכנה חופשית וקוד פתוח בעברית

הגדרת עברית - RTL, כיווניות שמאל ימין וימין שמאל, בקבצי PDF

Anonymous - 06/11/2018 - 21:52
נושא ההודעה: RTL, כיווניות שמאל ימין וימין שמאל, בקבצי PDF
עם מעט קבצי ה PDF, שמכילים טקסט באנגלית, שניסיתי לפתוח ב LibreOffice Draw, הקובץ נפתח באופן שהטקסטים שבו קריאים. בניגוד לכך, עם מעט קבצי ה PDF, שמכילים טקסט בעברית, שניסיתי לפתוח ב LibreOffice Draw, העברית נפתחת משמאל לימין.
כדוגמא בחרתי משהו מקרי מהאינטרנט, http://www.tranzila.com/bank-transfer.pdf. בפיירפוקס הטופס מוצג כמו שצריך. הורדתי אותו, ופתחתי ב LibreOffice Draw. ואצלי הוא מוצג עם עברית משמאל לימין.

עשיתי כעת נסיון. ב LibreOffice Writer כתבתי מסמך שמכיל מלה אחת. יצאתי (מיצוא) אותו כ PDF. פתיחת הקובץ PDF הזה בפירפוקס לא מפתיעה. אותה מלה עברית, בכיווניות מימין לשמאל. מה שרצוי. אבל פתיחת קובץ ה PDF הזה ב LibreOffice Draw מראה את המלה משמאל לימין. ואפילו יצוא מ LibreOffice Draw לקובץ PDF, ופתיחת הקובץ בפירפוקס מראה את המלה בכיווניות שגויה. משמאל לימין.

יותר מזה: אם ב LibreOffice Draw אני כותב טקסט בעברית, הוא מוצג מימין לשמאל. כמו שרצוי. אם אני מיצא את הקובץ לפורמט PDF ופותח בפירפוקס, אז המלה שנכתבה ב LibreOffice Draw הפוכה. משמאל לימין. וגם צריך לזכור ששינוי הכיוון של טקסט פעמים לא ישנה את הכיווניות.

אולי בלבלתי אתכם עם ניסוחים לא ברורים. אני הצלחתי להתבלבל לבד מתי הכיווניות טובה ומתי לא. אני כבר לא בטוח בכל הדוגמאות שלי. אך אני מקוה שקבלתם תחושה מה אני מנסה לומר. ויתכן שזה מוכר לכם עוד לפני. אם דרוש אני יכול לנסות לצרף קבצים וצילומי מסך. בקיצור, איך ניתן לקבל שכל המרכיבים של LibreOffice יפתחו, ויחזירו, קבצי PDF קריאים בעברית? כלומר בלי שפעם זה יהיה מימין לשמאל, ופעם משמאל לימין? האם זהו באג בליברה אופיס? אולי חסר בקונפיגורציה אצלי משהו, למשל ל LibreOffice Draw? אני עם LANG=en_US.UTF-8, בלי משהו שמוזכר בו HE או IL. וזה לא מפריע לי עם פיירפוקס. בטרמינל העברית לא מענינת אותי, גם לא ב KDE וב GNOME‎‏. ואפילו לא בסירי הקבצים למיניהם. LibreOffice Writer עובד טוב מבחינתי אחרי שרשמתי לו מעט הגדרות לעברית שכבר איני זוכר. ב LibreOffice Calc ענין העברית מעט יותר מורגש, אבל עדין בקטנה. אז איני רוצה לשנות locale. רק עם ה PDF זה מפריע.

אולי מדובר על משהו יותר כללי, למשל חסרים בתקן PDF תוי כיווניות?
Anonymous - 07/11/2018 - 06:03
נושא ההודעה: Re: RTL, כיווניות שמאל ימין וימין שמאל, בקבצי PDF
אורח :
כדוגמא בחרתי משהו מקרי מהאינטרנט, http://www.tranzila.com/bank-transfer.pdf. בפיירפוקס הטופס מוצג כמו שצריך.


לא באמת קראתי את כל ההודעה שלך, אבל רק רציתי לספר לך סיפור, כדי לדכא אותך עוד יותר:

לפני כמה ימים, על מערכת הפעלה "חלונות", פתחתי קובץ PDF בעברית בתוך פיירפורס. פיירפוס הציג את הקובץ בצורה מצויינת. את הקובץ הזה הייתי צריך להדפיס. אז אמרתי לפיירפוקס להדפיס אותו. והתוצאה היתה אותיות שיכורות: האותיות לא הצליחו ממש לעמוד זו לצד זו בסדר מופתי אלא עשו כל מיני תעלולים.

מוסר ההשכל: לא מספיק לבחון את התוכנה על המסך. צריך לראות איך היא מדפיסה.
Anonymous - 07/11/2018 - 08:35
נושא ההודעה: Re: RTL, כיווניות שמאל ימין וימין שמאל, בקבצי PDF
אורח :

אולי מדובר על משהו יותר כללי, למשל חסרים בתקן PDF תוי כיווניות?


זו שאלה חסרת משמעות, כי PDF אומר לכל תו בנפרד איפה הוא נמצא.
זה לא כמו קובץ טקסט שהאותית רשומות והתוכנה מסדרת אותן אחת אחרי השניה לפי הפונט והגדרות kerning וכיוב'. בקובץ PDF כתוב "תצייר את הגלופה של א' בפונט פרנק ריהל במיקום (12.4,46.7) ואז את הגלופה של האות ב' בפונט פרנק ריהל במקום (16.2,46.7)". כתלות במי יצר אותו יכול להיות שהתווים יכתבו בקובץ לפי סדר לוגי או לפי סדר ויזואלי, או אפילו בסדר אקראי, ועדיין זה יראה בסדר בכל קורא PDF תקני, כי כתוב בדיוק איפה לצייר כל אות.
Anonymous - 07/11/2018 - 14:56
נושא ההודעה: Re: RTL, כיווניות שמאל ימין וימין שמאל, בקבצי PDF
ירחמיאל :
אורח :
כדוגמא בחרתי משהו מקרי מהאינטרנט, http://www.tranzila.com/bank-transfer.pdf. בפיירפוקס הטופס מוצג כמו שצריך.


לא באמת קראתי את כל ההודעה שלך, אבל רק רציתי לספר לך סיפור, כדי לדכא אותך עוד יותר:

לפני כמה ימים, על מערכת הפעלה "חלונות", פתחתי קובץ PDF בעברית בתוך פיירפורס. פיירפוס הציג את הקובץ בצורה מצויינת. את הקובץ הזה הייתי צריך להדפיס. אז אמרתי לפיירפוקס להדפיס אותו. והתוצאה היתה אותיות שיכורות: האותיות לא הצליחו ממש לעמוד זו לצד זו בסדר מופתי אלא עשו כל מיני תעלולים.

מוסר ההשכל: לא מספיק לבחון את התוכנה על המסך. צריך לראות איך היא מדפיסה.

בצד ימין (שלושה קוים) יש לך פתיחת תפריט, בעזרתו אתה יכול לראות כיצד תראה ההדפסה שלך.
Anonymous - 08/11/2018 - 06:14
נושא ההודעה: האם טעה האורח שכתב שזו שאלה חסרת משמעות?
Anonymous :
אורח :

אולי מדובר על משהו יותר כללי, למשל חסרים בתקן PDF תוי כיווניות?


זו שאלה חסרת משמעות, כי PDF אומר לכל תו בנפרד איפה הוא נמצא.
זה לא כמו קובץ טקסט שהאותית רשומות והתוכנה מסדרת אותן אחת אחרי השניה לפי הפונט והגדרות kerning וכיוב'. בקובץ PDF כתוב "תצייר את הגלופה של א' בפונט פרנק ריהל במיקום (12.4,46.7) ואז את הגלופה של האות ב' בפונט פרנק ריהל במקום (16.2,46.7)". כתלות במי יצר אותו יכול להיות שהתווים יכתבו בקובץ לפי סדר לוגי או לפי סדר ויזואלי, או אפילו בסדר אקראי, ועדיין זה יראה בסדר בכל קורא PDF תקני, כי כתוב בדיוק איפה לצייר כל אות.

נראה לי שאתה טועה. יתכן שבסופו של דבר ה PDF אומר לכל תו בנפרד איפה להיות. אך בדרך יש לו text object, וכנראה שלאוביקטים האלו LibreOffice Draw מתיחס. נסה לחפש pdf text object בגוגל. כבר לפי ההשלמה האוטומטית של שורת החיפוש אפשר להרגיש שזה בכיוון. וגם תוצאות החיפוש מראות שזה כיוון טוב.
אפילו בטוח שאתה טועה. אם זה היה בדיוק כמו שאתה אומר, למה LibreOffice Draw יודע להציג טקסט באנגלית משמאל לימין, ואינו יודע להציג טקסט בעברית מימין לשמאל? אם זה כמו שאתה אומר, אמרו לו איך בדיוק להציג את הטקסט. מה מימין למה. רק שיעקוב אחרי ההוראות.
במחשבה נוספת, ניסיתי לחפש pdf RTL text object. התוצאה השניה היתה https://developers.itextpdf.com/ja/node/2079.
mksoft - 08/11/2018 - 10:03
נושא ההודעה:
כנאמר לעיל, אין כיווניות במסמך PDF. זהו פורמט תצוגה/הדפסה - כלומר סידור ויזואלי, לא לוגי.

מחוללי pdf אמורים להיות מודעים לכיווניות לפני שהם מייצרים את התוצאה הסופית - כדי "לסדר" את הטקסט נכון. זה מה שמצאת בקישור של itext.

בזמנו כתבתי ספריה כזו בפייתון, שמאפשרת "להכין" את הטקסט הדו־כיווני גם כאשר מחוללים pdf (או תמונה, או כל דבר אחר שאמור להיות מוצג):
https://pypi.org/project/python-bidi/

יש כמובן כלים (יותר טובים ומתוזחקים מן הסתם) כמן fribidi או ICU.
חתול - 12/11/2018 - 18:53
נושא ההודעה:
אני מניח שאתה מתכוון לבאג הזה.
https://bugs.documentfoundation.org/show_bug.cgi?id=89471
Anonymous - 12/11/2018 - 22:12
נושא ההודעה: https://bugs.documentfoundation.org/show_bug.cgi?id=89471
חתול :
אני מניח שאתה מתכוון לבאג הזה.
https://bugs.documentfoundation.org/show_bug.cgi?id=89471

כנראה שלכך אני מתכון.
כנראה, מודגש, משתי סבות: (1) לא ברור לי האם אתה הבנת אותי. (2) מאד התקשיתי להבין מה הבעיה שהבאג מעלה.
אלמלא הכפילות עם הבאג בערבית שמוזכר שם, https://bugs.documentfoundation.org/show_bug.cgi?id=116318 , המחשבה שלי שאנחנו מתכונים לאותו דבר היתה עוד פחות מבוססת. ומוזכרת שם גם כפילות עם באג בפרסית. גם עם הבאג הפרסי, ממנו לבד וללא ההקשר, התקשיתי להבין את הבעיה שהוא מעלה.

  1. האם לנסות להסביר טוב יותר כאן, ולך, למה הכונה שלי?
  2. האם התגובה של mksoft התיחסה לבאג זה?
  3. האם יש מקום לפרט הרבה יותר בתאור הבאג ב https://bugs.documentfoundation.org כדי שגם אנשים שיש להם רק פונטים באנגלית, ויודעים אנגלית בלבד, יוכלו להבין על מה מדובר, ואולי אפילו לשחזר אצלם את הבעיה? אולי העיקר הוא ש A (Andy) ו Buovjaga הבינו, ואין טעם להשקיע כדי שאולי גם אחרים יבינו?

חתול - 12/11/2018 - 23:43
נושא ההודעה:
הבעיה שאתה מתאר פשוטה, טקסט ב־PDF בעברית מוצג הפוך ב־Draw. זה גם מה שכתוב בבאג.
אני מסכים שבבאג חסר פירוט ותמונות אבל הכותרת ברורה למדי.
Anonymous - 12/11/2018 - 23:54
נושא ההודעה: Re: RTL, כיווניות שמאל ימין וימין שמאל, בקבצי PDF
ירחמיאל :
לפני כמה ימים, על מערכת הפעלה "חלונות", פתחתי קובץ PDF בעברית בתוך פיירפורס. פיירפוס הציג את הקובץ בצורה מצויינת. את הקובץ הזה הייתי צריך להדפיס. אז אמרתי לפיירפוקס להדפיס אותו. והתוצאה היתה אותיות שיכורות: האותיות לא הצליחו ממש לעמוד זו לצד זו בסדר מופתי אלא עשו כל מיני תעלולים.


אכפת לך לשתף את הקובץ המדובר? כמדומני שמדובר בבאג די ישן ב־Firefox אבל לא יזיק עוד testcase לאותו באג אם קיים אחד כזה.
einpoklum - 13/11/2018 - 00:11
נושא ההודעה:
זהו אחד הבאגים החמורים ביותר בתמיכה של LibreOffice במערכות כתב מימין-לשמאל (וזאת להבדיל משאלת התמיכה בכיווניות מימין לשמאל - שני הדברים הללו לא זהים).

אכן, זה מאוד מתסכל. בקבוצת ה-QA של כיווניות מימין-לשמאל ב-LibreOffice - מתאם הקבוצה החרוץ שלנו, ליאור קפלן, ביקש מאיתנו לקראת כנס LO האחרון בטיראנה לדרג את הבעיות החריפות ביותר בתחום, וכל מי שהתייחס לכך דירג את זה במקום הראשון.

אבל אין לי מושג היכן זו עומד מבחינת סדר-העדיפות של המפתחים, וגם לא כמה קשה לסדר את הבעיה הזו ב-Draw. מה שכולנו יכולים להבין הוא שלא כל היישומים בתוך LO עובדים באותה שיטה, כך שתיקונים במקום אחד לא עוברים תמיד באופן אוטומטי לכל מקום אחר.

נ.ב. - קבוצת ה-QA פעילה כקבוצת Telegram. קישור לקבוצה ניתן למצוא כאן:
https://bugs.documentfoundation.org/show_bug.cgi?id=43808
באחת התגובות.
Anonymous - 13/11/2018 - 15:50
נושא ההודעה: האם יש מקום להשקיע טקסט ותמונות, ולדעתי קבצים, בבאג להבהרה?
חתול :
הבעיה שאתה מתאר פשוטה, טקסט ב־PDF בעברית מוצג הפוך ב־Draw. זה גם מה שכתוב בבאג.
אני מסכים שבבאג חסר פירוט ותמונות אבל הכותרת ברורה למדי.


  1. האם השקעה של הרבה עבודה מצידי בטקסט תמונות וקבצים לבאג תעזור, או שהמידע כבר עבר ממנו למי שצריך? אם המידע עבר ממנו למי שצריך, יתכן שכל דבר נוסף רק יכביד על מי שכן מבין ובכל זאת מעין בבאג?
  2. לענין תוספת קבצים: נניח שאני רושם קובץ odt עם 2 אותיות עבריות, רק כדי להפוך ל pdf. מסמך odt שמכיל רק רק 2 אותיות עבריות זו לצד זו (אולי 4 לטובת שלום). האם סיני שאמסור לו את ה odt, והוא יפתח אותו יהפוך ל pdf, יקבל בדיוק את ה pdf שאני מקבל? כלומר פרט לכך שאולי לסיני לא מותקנים פונטים עבריים לתצוגה, הקבצים יהיו זהים אצלי ואצלו? בזהים הכונה לכך שפקודת cmp של יוניקס על ה pdf של כל אחד מאיתנו לא תמצא הבדל. ובזהים הכונה לכך שאם הסיני ירשום odt עם 2 אותיות עבריות, וימסור לי רק את ה odt, הקובץ pdf שאני איצר יהיה זהה, מבחינת cmp, לקובץ pdf שלו.

Anonymous - 13/11/2018 - 15:58
נושא ההודעה: נא להבהיר כתב מימין לשמאל לעומת תמיכה בכיווניות מימין לשמאל
einpoklum :
זהו אחד הבאגים החמורים ביותר בתמיכה של LibreOffice במערכות כתב מימין-לשמאל (וזאת להבדיל משאלת התמיכה בכיווניות מימין לשמאל - שני הדברים הללו לא זהים).

האם מערכת כתב היא אחת שמבינה לבד מתי דרושה תצוגה מימין לשמאל או משמאל לימין, ותמיכה בכיווניות היא רק היכולת להציג בכיוון שאומרים לה? נא לפרט על ההבדלים בין מערכת כתב לתמיכה בכיווניות.
Anonymous - 13/11/2018 - 16:19
נושא ההודעה: Re: נא להבהיר כתב מימין לשמאל לעומת תמיכה בכיווניות מימין לש
פותח השרשור :
האם מערכת כתב היא אחת שמבינה לבד מתי דרושה תצוגה מימין לשמאל או משמאל לימין, ותמיכה בכיווניות היא רק היכולת להציג בכיוון שאומרים לה? נא לפרט על ההבדלים בין מערכת כתב לתמיכה בכיווניות.

שאל את עצמך: כשאתה כותב פסקה במסמך, הנמשכת על פני יותר משורה - היכן יופיע הטקסט בשורה האחרונה בפסקה: מתחת לצד שמאל של השורה שמעל, או מתחת לצד ימין?

התשובה היא: תלוי בכיוון הטקסט בפסקה. האם הוא מכוון מימין-לשמאל או משמאל-לימין? (אגב, אפשר לכוון גם מלמעלה-מטה ולהיפך אבל הבה נתעלם מזה). ולעומת זאת, זה ממש לא תלוי בשאלה "האם הטקסט נכתב באותיות עבריות או לטיניות".

בתוך רצף לוגי של תווים , שאלת המיקום היחסי שלהם בהצגה משותפת כן תלויה במערכת הכתב - האם היא מיועדת לכתיבה משמאל-לימין או מימין-לשמאל. אבל אפשר לכתוב פסקה בעברית המכוונת משמאל-לימין או באנגלית המכוונת מימין-לשמאל. ואתה יודע זאת - כי אם תיגש ב-LO Writer או ב-MS Word לפסקה בעברית ותשנה את הכיוון בה (לא את היישור!) ל-LTR במקום RTL, תראה שזה אכן קורה; וכנ"ל לגבי פסקה באנגלית.
Anonymous - 13/11/2018 - 21:01
נושא ההודעה: מעריך שהם נדרשים גם להגדיר, לא רק לקודד. וזה מגביר את הקושי.
einpoklum :
אין לי מושג היכן זו עומד מבחינת סדר-העדיפות של המפתחים, וגם לא כמה קשה לסדר את הבעיה הזו ב-Draw.

גם לי אין מושג. אני סבור שאנחנו לא עוזרים להם מספיק. בהכונה. להשאיר להם את הקידוד. אבל לכון אותם יותר. אכן יש שם אנשים שכל ההבטים ברורים להם, אולי אפילו יותר ברורים מאשר לנו. אך כנראה שהם מעטים. היה עוזר אם היינו מכונים יותר. את הכיוון יש כאן אנשים שידעים. אבל צריך להגדיר אותו באופן שישאר רק לקודד. ואז גם יהיה קל יותר לפרסם את זה, בתקוה שבסוף ימצא מישהו שינסה גם לקודד.

כתבתי מסמך ב writer שמכיל מלה של שתי אותיות עבדיות. זה כל המסמך. יצאתי ל pdf. פירפוקס הראה מה שציפיתי. אולי בגלל שב libreoffice יש לי הגדרה, או שתים, של ברירת מחדל ל RTL, או שזו הגדרה לעברית ולא ל RTL, ואולי אין קשר. פתחתי את ה pdf ב draw. ידוע מה ראיתי: שתי האותיות התחלפו במקום. לא עשיתי דבר נוסף פרט ליצוא מ draw ל pdf. שתי האותיות עדין לא בסדר הנכון. אז שיתחילו בכך שישמרו את הסדר המקורי. או שכבר ב pdf של writer הסדר הפוך, שאולי זה אחד הדברים ש mksoft כתב? נניח שאמסור את ה odt עם שתי האותיות לסיני. ואבקש ממנו ליצא ל pdf ולפתוח בפירפוקס. מה יקרה אצלו, להוציא ענין הפונטים? ונניח שאמסור לסיני רק את ה pdf שיצאתי מ writer. איך פירפוקס יפתח אותו אצל הסיני, להוציא ענין הפונטים?
Anonymous - 14/11/2018 - 12:29
נושא ההודעה:
כמו שכבר אמרו כאן, ברגע ש-PDF נוצר (בהנחה שהוא נוצר נכון), הוא יוצג (בכל מציג תקין) או יודפס בדיוק כמו שהתכוונת – המיקום של כל תו, סימן ואובייקט גראפי מוגדר ו"נעול". לכן אם יצרת PDF עם טקסט בעברית והוא תקין (למשל, evince או ה-plugin של פיירפוקס מציגים אותו תקין), הוא יראה אותו הדבר גם בסין.

draw הוא לא כלי להצגת PDF. הוא מייבא, בדרך שלו, את התוכן של ה-PDF, וכנראה – מכיוון שה-PDF לא מכיל הגדרות כיווניות – לא יודע לבחור את הכיווניות. אולי הוא היה יכול לעשות זאת, בהסתמך על ערכי היוניקוד של התווים, אבל אולי אין לא יומרות.

ושוב לגבי ה-PDF – אם הפונטים embedded, כלומר כל הפונטים שבשימוש במסמך שמורים בתוך הקובץ, אז הוא יוצג לגמרי תקין גם בסין (או בטימבוקטו).
Anonymous - 14/11/2018 - 18:45
נושא ההודעה: עד כמה קשה לדעת את המיקום היחסי בין כל שני סימני טקסט?
עמית :
draw הוא לא כלי להצגת PDF.

ההתיחסות, אולי שגויה, שלי היא ש draw הוא כלי לעריכה גרפית של PDF. ובתור שכזה, הוא משתדל, במגבלות שלו, להתיחס גם למיקום היחסי של האוביקטים במסמך. האם אוביקט א הוא מימין לאוביקט ב, משמאל לו, או בתוכו?
עמית :
הוא מייבא, בדרך שלו, את התוכן של ה-PDF, וכנראה – מכיוון שה-PDF לא מכיל הגדרות כיווניות – לא יודע לבחור את הכיווניות. אולי הוא היה יכול לעשות זאת, בהסתמך על ערכי היוניקוד של התווים, אבל אולי אין לא יומרות.

draw טורח, וטוב שכך, להציג את האותיות, וסימני הפיסוק האחרים, שבטקסט. אולי לא בגופן שה PDF אמור להציג את הטקסט. אז במקרה של טקסט, היה מועיל לעברים, ערבים ופרסים, וגם לאחרים, אם draw היה הולך הלאה, ומציג את האותיות וסימני הפיסוק האחרים בהתאם למיקום היחסי הסופי שלהם. אמנם ה PDF אינו מכיר כיווניות, אך בסופו של דבר הוא כן יודע מה אמור להיות המיקום היחסי בין כל שתי אותיות, ותוי פיסוק אחרים, במסמך. עד כמה קשה ל draw לדעת מה המיקום היחסי בין כל שתי אותיות, ותוי פיסוק אחרים, בטקסט שהוא מציג, ולסדר אותם בהתאם? במלים אחרות, עד כמה קשה ל draw לשכלל את היכולות שכן יש לו להצגת PDF?
האם ספרית הפיתון ש mksoft קישר עושה זאת, או שלא קלטתי את הפעולה שלה?
עמית :

ושוב לגבי ה-PDF – אם הפונטים embedded, כלומר כל הפונטים שבשימוש במסמך שמורים בתוך הקובץ, אז הוא יוצג לגמרי תקין גם בסין (או בטימבוקטו).

העליתי את השאלה כדי להציע דרך אחרת להעביר את הבעיה בתאור הבאג. נראה לי שבמקום לצרף לבאג טקסט שאינו בשפת האם של המקודד, היה מועיל לצרף odt - קובץ של writer, עם 2 אותיות בלבד. כדי שהמקודד יוכל ליצא ל PDF. וליבא ל draw.
כל הזמנים הם GMT + 2 שעות