ฉันต้องการให้หมายเลขหน้าของฉันใน LibreOffice Impress เป็นภาษาเปอร์เซีย ซึ่งหมายถึง ۰۱۲۳۴۵۶۷۸۹ แทน 0123456789
ฉันต้องการให้หมายเลขหน้าของฉันใน LibreOffice Impress เป็นภาษาเปอร์เซีย ซึ่งหมายถึง ۰۱۲۳۴۵۶۷۸۹ แทน 0123456789
คำตอบ:
การตั้งค่าเหล่านี้ใช้ได้กับทุกแอพพลิเคชันและเอกสารของ LibreOffice ดังนั้นคุณสามารถเปลี่ยนแปลงได้จากชุดแอปพลิเคชันใด ๆ
การเปลี่ยนสถานที่
คุณสามารถตั้งค่าเปอร์เซียเป็นค่าเริ่มต้นสำหรับเอกสารทั้งหมดของคุณหรือสำหรับเอกสารปัจจุบันเท่านั้น
จากแถบเมนูเครื่องมือ >> ตัวเลือกจากนั้นขยายการตั้งค่าภาษาและคลิกภาษา
เปลี่ยนสถานที่เป็น Farsi (โปรดทราบว่านี่เป็นอิสระจากการตั้งค่าสำหรับส่วนต่อประสานผู้ใช้ด้านบน)
เปลี่ยนCTLที่จะเริ่มต้น - ฟาร์ซิ สิ่งนี้จะตรวจสอบEnabledโดยอัตโนมัติสำหรับรูปแบบข้อความที่ซับซ้อน (CTL)ด้านล่าง CTL จัดการภาษาจากขวาไปซ้าย
ตรวจสอบเอกสารปัจจุบันตามความต้องการของคุณเท่านั้น
การเปลี่ยนรูปแบบตัวเลขทั่วโลก
คลิกที่เค้าโครงข้อความที่ซับซ้อนทางด้านซ้ายของกล่องโต้ตอบและการเปลี่ยนแปลงเลขที่จะภาษาฮินดี (ไม่แสดงในภาพหน้าจอนี้)
ใช้แทรก >> หมายเลขหน้าเพื่อแสดงกล่องโต้ตอบส่วนหัว / ท้ายกระดาษเพื่อเพิ่มหมายเลขหน้าในสไลด์ของคุณ
การตั้งค่าตัวเลขเป็นภาษาฮินดีในการตั้งค่าภาษาช่วยให้คุณใช้หมายเลข "อาราบิก" โดยไม่ต้องใช้ตัวแก้ไขวิธีการป้อนข้อมูลเช่น Ibus ในบริบทนี้แน่นอนตัวเลขอารบิกมี1,2,3 ...
เป็นไปได้ไหมที่จะใช้หมายเลขภาษาฮินดีในฟังก์ชั่นหมายเลขหน้าท้ายกระดาษโดยไม่เปลี่ยนทุกหมายเลขเป็นภาษาฮินดี?
คำตอบสั้น ๆ : ไม่ผ่านการตั้งค่า GUI นอกเหนือจากการตั้งค่ารูปแบบตัวเลขทั่วโลกดูเหมือนว่าจะไม่มีวิธีการแก้ไขฟังก์ชันที่แทรกหมายเลขหน้า
น่าสนใจพอท้ายกระดาษให้คุณเปลี่ยนวันที่เป็นภาษาเปอร์เซียได้อย่างง่ายดาย ฉันเชื่อว่าหมายเลขหน้าไม่สามารถเปลี่ยนแปลงได้ในลักษณะเดียวกันเนื่องจากหมายเลขหน้าดูเหมือนว่าจะดึงมาจากฟังก์ชั่นเพื่อใช้งานกับเครื่องพิมพ์
การแก้ปัญหาคือการไม่ใช้หมายเลขหน้าท้ายกระดาษในตัวเลยและใส่รูปร่างข้อความของคุณเองในพื้นที่เดียวกันโดยตั้งค่าข้อความตามที่คุณต้องการ สำหรับสไลด์จำนวนน้อยสิ่งนี้จะไม่เลวร้ายเกินไป แต่จะไม่เป็นไปได้มากกว่าหยิบ
วิธีแก้ไขปัญหานี้คือใช้แมโคร LibreOffice Basic เพื่อแทรกหมายเลขหน้าให้คุณ สำหรับภาพรวมโดยย่อของมาโคร LibreOffice และวิธีใช้ในเอกสารของคุณโปรดดูคำตอบนี้
นี่คือรหัสแมโคร:
Sub AddPersianPageNumbers
Dim Doc as Object
Set Doc = ThisComponent
'Get the collection of DrawingPages
Dim DrwPages as Object
Set DrwPages = Doc.getDrawPages()
Dim DrwPg as Object
Dim TxtShp as Object
Dim TxtPoint as New com.sun.star.awt.Point
Dim i as Long
Dim k as Long
Dim strNum as string
Dim strI as string
Dim idx as long
Dim uni as string
'Each slide has it's own Drawpage, so go through the collection
For i = 0 to DrwPages.getCount() - 1
'Get the Drawing Page and create a TextShape
Set DrwPg = DrwPages.getByIndex(i)
Set TxtShp = Doc.createInstance("com.sun.star.drawing.TextShape")
'Add it to the Drawing Page (must do first)
DrwPg.Add(TxtShp)
TxtPoint.X = DrwPg.Width * 0.9
TxtPoint.Y = DrwPg.Height * 0.9
TxtShp.Position = TxtPoint
TxtShp.TextAutoGrowWidth = true
TxtShp.TextAutoGrowHeight = true
'Just changing the font is not enough since it will still show as Arabic
'You can change the locale and ComplexText props for just this para
'but I couldn't find a way to set the para to be seen as ComplexText
'That would have been elegant, but instead just convert
'the page number to a string converted from the Unicode code points
strI = Cstr(i + 1)
for k = 1 to Len(strI)
uni = "&H66" & mid(strI, k, 1) 'Hindi numeral code points are ascii+660
strNum = strNum & Chr(uni)
next k
TxtShp.SetString(strNum)
strNum = ""
TxtShp.CharFontName = "Lohit Hindi"
Next i
End Sub
เครื่องมือ -> ตัวเลือก -> การตั้งค่าภาษา ->
ตัวเลือกทั่วไปของรูปแบบข้อความที่ซับซ้อนตั้งเป็นภาษาฮินดี
และนี่คือภาพหน้าจอของมัน
สามารถทำได้อย่างง่ายดายในสองขั้นตอน
ขั้นตอนที่ 1: เปลี่ยนสถานที่
ไปที่เมนูแล้วคลิก: เครื่องมือ> ตัวเลือกแล้วเลือกภาษาภายใต้การตั้งค่าภาษา
นี่คือการเปลี่ยนแปลงต่อไปนี้:
ขั้นตอนที่ 2: เลือกประเภทฟิลด์
ตอนนี้เลือกข้อความในฟิลด์หมายเลขหน้า (ตรวจสอบให้แน่ใจว่าแบบอักษรถูกต้อง) จากนั้นเลือกเมนู: แก้ไข> ฟิลด์
ในหน้าต่าง 'Edit Fields' ที่เปิดขึ้นให้เปลี่ยนFormatเป็นNative Numbering (ดังที่แสดงด้านบน) คลิก 'ตกลง' เพื่อบันทึกและปิด
คุณทำเสร็จแล้ว!