שרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש
-
@דאנציג כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
אם ישנה אפשרות לעצב את מספר ההערה,
זה אפשר בקלות על ידי חיפוש והחלפה. האם צריך לזה גם לחצן?
-
@pcinfogmach
אם זה מוגדר אחרת מכל המסמך, כן, אך אם לא... -
@pcinfogmach
אם כך התשובה היא שלא צריך. -
@pcinfogmach
מישהו יכול לכתוב לי מסודר מה צריך לפתח בשביל כותרות? -
@pcinfogmach
שאלה לגבי הגדלת והקטנת רווחים.
מה עדיף?
לעשות קוד שיגדיל את כל הרווחים ב 1 יותר ממה שהם או שיגדיל את כל הרווחים שיהיו באופן שווה.
השאלה היא האם מצוי שיש רווחים בגדלים שונים בפיסקה אחת? -
@pcinfogmach כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
מישהו יכול לכתוב לי מסודר מה צריך לפתח בשביל כותרות?
בשביל כותרות הכי פשוט שתסתכל במדריך של @תודה-רבה-4 כאן בפיסקא של כותרות עליונות.
יש לציין שבשונה ממה שהוא עושה, התוספים לוורד משתמשים בדרך כלל בטאבים, ושלוש טאבים לא צריך, כיון שיש בוורד מובנה כבר... -
@pcinfogmach כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
השאלה היא האם מצוי שיש רווחים בגדלים שונים בפיסקה אחת?
וודאי - מה שכתוב בסוגריים.
-
@צדיק-וטוב-לו-0
מה שכתוב בסוגריים יש לו רווחים אחרים משאר הטקסט? (גם ברמה של הגדרות הטקסט באפשרויות גופן?) -
@דאנציג כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
בשביל כותרות הכי פשוט שתסתכל במדריך של @תודה-רבה-4 כאן בפיסקא של כותרות עליונות.
אשמח אם תוכל למקד אותי קצת יותר כי רוב הדברים שם זה אפשרויות מובנות של וורד
-
@pcinfogmach טעות שלי בהבנת השאלה (חשבתי שהכוונה לגודל גופן).
איני יודע איך עובדים הרווחים בסוגריים, אבל אם הגופן יותר קטן, אולי זה משפיע גם לבי הרווח? אין לי מושג. -
@pcinfogmach כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
אשמח אם תוכל למקד אותי קצת יותר כי רוב הדברים שם זה אפשרויות מובנות של וורד
וזה מה שרוב התוספים נותנים, רק במקום לעשות זאת בעשר פעולות, ובצורה שכל טעות קריטית, וצריך להתחיל הכל מהתחלה, התוסף נותן לך את האפשרויות המובנות בוורד, רק בצורה יותר קלה פשוטה לתפעול, ומהירה - time is money...
-
@צדיק-וטוב-לו-0 כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
איני יודע איך עובדים הרווחים בסוגריים, אבל אם הגופן יותר קטן, אולי זה משפיע גם לבי הרווח? אין לי מושג.
@מניין תוכל לעזור לנו פה בבקשה?
-
@pcinfogmach כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
@צדיק-וטוב-לו-0 כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
איני יודע איך עובדים הרווחים בסוגריים, אבל אם הגופן יותר קטן, אולי זה משפיע גם לבי הרווח? אין לי מושג.
@מניין תוכל לעזור לנו פה בבקשה?
על פי סברא לא נראה שזה משפיע כי הגדרות הגופן לא קשור לגודל הגופן, הכל הוא ביחס לגודל האותיות.
-
עקב פניות חוזרות ונשנות התחלתי לשקול בנייה של פקודה ליישור טורים בהערות שוליים.
הדרך היחידה למיטב ידעיתי היא על ידי חילוץ הטקסט והכנסתו לתוך תיבות טקסט או אולי מסגרות הייתי שמח לשמוע רעיונות על איך להתקדם עם זה
-
חשבתי על רעיון בשביל מספור עברי לכה"פ בהערות שוליים
להשתמש באפשרות "סימון מותאם אישית"
הייתי שמח לשמוע הצעות איך לעשות את זה
ובפרט האם יש דרך להקל על מספור ברצף באופן זההנה קוד דוגמא שהכנתי משהו חפלפ אבל רק כדי לתפוס את העיקרון. (הסימון ChrW(8203) הינו רווח בלתי נראה ומשמש במקרה זה עבור סימון המיספור לצורך חיפוש)
Attribute VB_Name = "מספור_עברי" Option Explicit Sub Macro21() ' ' Macro21 Macro ' ' Dim rng As Range Dim prev As String Dim ref As String Set rng = Selection.Range ref = ChrW(8203) & "א" & ChrW(8203) Selection.find.ClearFormatting Selection.find.Replacement.ClearFormatting With Selection.find .text = ChrW(8203) & "*" & ChrW(8203) .Replacement.text = "" .Forward = False .Wrap = wdFindStop .Format = False .MatchCase = False .MatchWholeWord = False .MatchKashida = False .MatchDiacritics = False .MatchAlefHamza = False .MatchControl = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = True .Execute If .found Then prev = Selection End If End With If prev = ChrW(8203) & "א" & ChrW(8203) Then ref = ChrW(8203) & "ב" & ChrW(8203) rng.Select With rng .Footnotes.Add Range:=Selection.Range, Reference:=ref End With End Sub
-
אז הנה טיוטא של הרעיון שלי להערות שוליים עברי יותר משצב - אשמח לקבל הערות והארות.
עריכה: וכעת הקוד מוכן.הוראות
מאקרו הערות שוליים יותר משצב
אפשר להוסיף עוד הערות שוליים והלריץ שוב כדי לעדכן את המיספור
יש להמתין בסבלנות בעת הרצת המאקרו גם אם וורד אומר שהוא נתקע כביכול – ההמרה הראשונה לוקחת יותר זמן מעדכון
ככל שיש יותר הערות שוליים להמיר במסמך כן יארך זמן פעולת המאקרו.
וכמובן מומל לשמור גיבוי של המסמך לפני שמתחיליםOption Explicit Sub המר_הערות_שוליים_למספור_עברי_יותר_משצב() Application.ScreenUpdating = False Dim origRange As Range Set origRange = Selection.Range Dim i As Integer Dim ftnoteText As String Dim ftnoteRefrence As Range For i = 1 To ActiveDocument.Footnotes.Count Set ftnoteRefrence = ActiveDocument.Footnotes(i).Reference If ftnoteRefrence <> ChrW(8203) Then ftnoteText = ActiveDocument.Footnotes(i).Range.Text ftnoteRefrence.Characters(1).Delete ftnoteRefrence.Select ActiveDocument.Footnotes.Add Range:=Selection.Range, Text:=ftnoteText, Reference:=ChrW(8203) End If Next i Call AddHebrewFootnoteRefrenceStyle Call DeleteAllRefrenceLetters Call MainDocHebrewRefrence Call FootnotesRefrence Call DeleteDoubleSpace origRange.Select Application.ScreenUpdating = True Application.ScreenRefresh End Sub Private Sub FootnotesRefrence() Dim doc As Document Dim rng As Range Dim i As Long Dim ftnoteNumber As Long Dim hebrewftNoteNumber As String For i = 1 To ActiveDocument.Footnotes.Count Set rng = ActiveDocument.Footnotes(i).Range ftnoteNumber = ActiveDocument.Footnotes(i).Index hebrewftNoteNumber = ConvertToHebrew(ftnoteNumber) With rng .start = .start - 1 .End = .start .Text = hebrewftNoteNumber & " " .style = ActiveDocument.Styles("הפניה להערת שוליים עברי") End With Next i End Sub Private Sub MainDocHebrewRefrence() Dim doc As Document Dim rng As Range Dim i As Long Dim ftnoteNumber As Long Dim hebrewftNoteNumber As String For i = 1 To ActiveDocument.Footnotes.Count Set rng = ActiveDocument.Footnotes(i).Reference ftnoteNumber = ActiveDocument.Footnotes(i).Index hebrewftNoteNumber = ConvertToHebrew(ftnoteNumber) With rng .start = .End .Text = hebrewftNoteNumber .style = ActiveDocument.Styles("הפניה להערת שוליים עברי") End With Next i End Sub Private Sub AddHebrewFootnoteRefrenceStyle() On Error GoTo skp ActiveDocument.Styles.Add Name:="הפניה להערת שוליים עברי", Type:= _ wdStyleTypeCharacter With ActiveDocument.Styles("הפניה להערת שוליים עברי") .BaseStyle = -39 End With skp: End Sub Private Sub DeleteAllRefrenceLetters() Dim rng1 As Range Set rng1 = ActiveDocument.Content Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting On Error GoTo skp rng1.Find.style = ActiveDocument.Styles("הפניה להערת שוליים עברי") With rng1.Find .Text = "" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchKashida = False .MatchDiacritics = False .MatchAlefHamza = False .MatchControl = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With rng1.Find.Execute Replace:=wdReplaceAll Dim rng2 As Range Dim ftnoteNumber As Long ftnoteNumber = ActiveDocument.Footnotes.Count Set rng2 = ActiveDocument.Footnotes(1).Range rng2.End = ActiveDocument.Footnotes(ftnoteNumber).Range.End Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With rng2.Find .Text = "" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .style = ActiveDocument.Styles("הפניה להערת שוליים עברי") .Format = True .MatchCase = False .MatchWholeWord = False .MatchKashida = False .MatchDiacritics = False .MatchAlefHamza = False .MatchControl = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With rng2.Find.Execute Replace:=wdReplaceAll skp: End Sub Private Sub DeleteDoubleSpace() Dim rng As Range Dim ftnoteNumber As Long ftnoteNumber = ActiveDocument.Footnotes.Count Set rng = ActiveDocument.Footnotes(1).Range rng.End = ActiveDocument.Footnotes(ftnoteNumber).Range.End Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With rng.Find .Text = "( )\1@" .Replacement.Text = "\1" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchKashida = False .MatchDiacritics = False .MatchAlefHamza = False .MatchControl = False .MatchWildcards = True .MatchSoundsLike = False .MatchAllWordForms = False End With rng.Find.Execute Replace:=wdReplaceAll skp: End Sub Function ConvertToHebrew(ByVal ftnoteNumber As Long) As String Dim MyArray As Variant Dim MyaArray As Variant Dim v As Long Dim s As String Dim i As Long s = "" MyArray = Array(400, 300, 200, 100, 90, 80, 70, 60, 50, 40, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1) MyaArray = Array("ת", "ש", "ר", "ק", "צ", "פ", "ע", "ס", "נ", "מ", "ל", "כ", _ "י", "ט", "ח", "ז", "ו", "ה", "ד", "ג", "ב", "א") v = Val(ftnoteNumber) Do While v > 0 If v = 15 Or v = 16 Then s = s & "ט" v = v - 9 End If For i = 0 To UBound(MyArray) If v >= MyArray(i) Then s = s & MyaArray(i) v = v - MyArray(i) Exit For End If Next i Loop If s = "רצח" Then s = "רחצ" If s = "רע" Then s = "ער" If s = "רעב" Then s = "ערב" If s = "שד" Then s = "דש" If s = "שמד" Then s = "שדמ" If s = "תשמד" Then s = "תדשם" If s = "רעה" Then s = "ערה" If s = "רעד" Then s = "עדר" ConvertToHebrew = s End Function
-
@pcinfogmach
החבר המבוקש אינו נמצא:
הסגנון הפניה להערת שוליים. -
@pcinfogmach כתב בשרשור עזרה בפיתוח התוסף לוורד - עיצוב ספרי קודש:
@pcinfogmach
מישהו יכול לכתוב לי מסודר מה צריך לפתח בשביל כותרות?אני יכול לכתוב מצב הכי אידיאלי שהייתי רוצה שיהיה, ותעשה כמה שידך מגיע:
- צריך ליצור שלש טאבים, שיתמקמו: 1 ל25% אחוז רוחב של בין השוליים מצד ימין, 2 לחצי מהרוחב שבין השוליים, 3 75% מהרוחב שבין השוליים.
- טאב מיושר לפנימי\חיצוני ולמקם שם מספור עמודים עברי בלי באג שצ"ג.
- שהתוסף יתן אפשרות להכניס בטאב האמצעי שדה של כותרות משתנה לפי סגנון (פרק א', פרק ב').
שדרוג: - שיתן אפשרות בעת הפעלת המאקרו להכניס המילים שאמורים להופיע בטאב הראשון (לדוגמא 'אמרי') ובטאב השלישי (לדוגמא 'יחזקאל'). ולהחיל על זה סגנון (תו) מיוחד, כדי שיהא אפשר אח"כ לעצב את זה בקלות.
הוספה לתוסף - 1:
כפתור, שיעדכן את המיקומים של הטאב, אם במקרה שינו את השוליים של המסמך.הוספה לתוסף - 2:
כפתור שיאפשר לשלוט טוב יותר במיקומים של הטאב הראשון והשלישי, כי לפעמים (תלוי בעימוד של הספר) רוצים להכניס פנימה יותר את המילים (כלומר שלא יהיה 25 75, אלא 27 73), ולפעמים רוצים להוציא יותר המילים.