Làm cách nào để đặt LibreScript để sử dụng số trang tiếng Ba Tư / Ả Rập-Ấn Độ / Tiếng Hindi?


17

Tôi muốn có số trang của mình trong LibreScript Impress để được bằng tiếng Ba Tư. Có nghĩa là thay vì 0123456789.


Bạn đã cấu hình tiếng Ba Tư làm ngôn ngữ mặc định cho ứng dụng đó chưa? Bạn có thể thêm một màn hình?
Lucio

Câu trả lời:


22

Các cài đặt này hoạt động trên tất cả các ứng dụng và tài liệu LibreScript, do đó bạn có thể thực hiện các thay đổi từ bất kỳ bộ ứng dụng nào.

Thay đổi ngôn ngữ

Bạn có thể đặt tiếng Ba Tư làm mặc định cho tất cả các tài liệu của mình hoặc chỉ cho tài liệu hiện tại.

Từ thanh menu, Công cụ >> Tùy chọn , sau đó mở rộng Cài đặt ngôn ngữ và nhấp vào Ngôn ngữ

nhập mô tả hình ảnh ở đây

Thay đổi Locale để Farsi. (Lưu ý rằng điều này độc lập với cài đặt cho giao diện người dùng ở trên.)

Thay đổi CTL thành Mặc định - Farsi . Điều này cũng sẽ tự động kiểm tra Kích hoạt cho bố cục văn bản phức tạp (CTL) bên dưới. CTL xử lý các ngôn ngữ từ phải sang trái.

Kiểm tra tài liệu hiện tại chỉ theo khung của bạn.

Thay đổi kiểu số toàn cầu

Nhấp vào Bố cục văn bản phức tạp ở phía bên trái của hộp thoại và thay đổi chữ số thành tiếng Hindi . (không hiển thị trong ảnh chụp màn hình này)

Sử dụng Chèn >> Số trang để hiển thị hộp thoại Đầu trang / Chân trang để thêm số trang vào trang chiếu của bạn.

Đặt chữ số thành Tiếng Hindi trong Cài đặt ngôn ngữ cho phép bạn sử dụng các số "Ả Rập" mà không cần sử dụng trình chỉnh sửa phương thức nhập liệu như Ibus. Trong bối cảnh này, tất nhiên, chữ số Ả Rập1,2,3 ...

Có thể sử dụng số Hindi trong chức năng số trang chân trang mà không thay đổi mỗi số thành tiếng Hindi?

Câu trả lời ngắn: không thông qua các cài đặt GUI. Ngoài cài đặt kiểu số toàn cầu, dường như không có cách nào để sửa đổi chức năng chèn số trang.

Thật thú vị, chân trang cho phép bạn dễ dàng thay đổi ngày sang tiếng Ba Tư. Tôi tin rằng số trang không thể thay đổi theo cách tương tự vì số trang dường như được rút ra từ các chức năng để làm việc với máy in.

Giải pháp là hoàn toàn không sử dụng đánh số trang chân trang tích hợp và thay vào đó hãy chèn hình dạng văn bản của riêng bạn vào cùng khu vực với văn bản được đặt theo cách bạn muốn. Đối với một số lượng nhỏ các slide, điều này sẽ không quá tệ; nhưng sẽ không khả thi với nhiều hơn một chút.

Giải pháp cho này vấn đề là sử dụng một macro LibreOffice Basic để chèn số trang cho bạn. Để biết tổng quan ngắn về các macro LibreScript và cách sử dụng chúng trong tài liệu của bạn, vui lòng xem câu trả lời này .

Đây là mã macro:

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

Tôi muốn tài liệu trông giống nhau trên các máy tính khác! Bằng cách này, nó không.
SeMeKh

Ngoài ra, tôi chỉ muốn "số trang" bằng tiếng Ba Tư. Không phải "tất cả các số được sử dụng".
SeMeKh

@SeMeKh Vui lòng xem câu trả lời được cập nhật
cuộc trò chuyện

0

công cụ-> tùy chọn -> cài đặt ngôn ngữ ->
tùy chọn chung bố cục văn bản phức tạp đặt nó thành tiếng Hin-ddi
và đây là ảnh chụp màn hình của nó


0

Điều này có thể dễ dàng thực hiện trong hai bước.

BƯỚC 1: Thay đổi miền địa phương

Truy cập menu và nhấp: Công cụ> Tùy chọn , sau đó chọn Ngôn ngữ trong Cài đặt ngôn ngữ.

Hình ảnh hiển thị Bước một

Ở đây thay đổi như sau:

  1. Cài đặt ngôn ngữ - thay đổi ngôn ngữ này thành tiếng Ả Rập (hoặc bất kỳ ngôn ngữ nào bạn muốn).
  2. CTL - cũng đặt thành tiếng Ả Rập (chỉ khi bạn đang sử dụng ngôn ngữ sử dụng Bố cục văn bản phức tạp)
  3. Chọn hộp kiểm 'Chỉ dành cho tài liệu hiện tại' nếu bạn muốn thay đổi này chỉ dành cho tài liệu này đang được chỉnh sửa
  4. Nhấp vào 'OK' và lưu cài đặt. Tại thời điểm này, đảm bảo rằng phông chữ được sử dụng trong trường số trang hỗ trợ ngôn ngữ. Trong trường hợp của tôi Time Phông chữ La Mã mới có số ký tự Ả Rập (۰۱۲۳)

BƯỚC 2: Chọn Loại Trường

Bây giờ chọn văn bản trong trường số trang (đảm bảo phông chữ đúng) và sau đó từ menu chọn: Chỉnh sửa> Trường

Hình ảnh hiển thị Bước hai

Trong cửa sổ 'Chỉnh sửa trường' mở ra, thay đổi Định dạng thành Đánh số gốc (như được hiển thị ở trên). Nhấp vào 'OK' để lưu và đóng.

Bạn đã hoàn tất!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.