Come impostare LibreOffice per usare i numeri di pagina persiano / arabo-indicatore / hindi?


17

Voglio che i miei numeri di pagina in LibreOffice Impress siano in persiano. Il che significa ۰۱۲۳۴۵۶۷۸۹ invece di 0123456789.


Hai configurato il persiano come lingua predefinita per quell'applicazione? Potresti aggiungere uno screenshot?
Lucio,

Risposte:


22

Queste impostazioni funzionano su tutte le applicazioni e tutti i documenti di LibreOffice, quindi puoi apportare modifiche da qualsiasi set di applicazioni.

Modifica delle impostazioni internazionali

Puoi impostare Persiano come predefinito per tutti i tuoi documenti o solo per il documento corrente.

Dalla barra dei menu, Strumenti >> Opzioni , quindi espandi le Impostazioni lingua e fai clic su Lingue

inserisci qui la descrizione dell'immagine

Cambia Locale in farsi. (Si noti che questo è indipendente dall'impostazione per l'interfaccia utente sopra.)

Cambia CTL in Default - Farsi . Ciò controllerà anche automaticamente Abilitato per il layout di testo complesso (CTL) di seguito. CTL gestisce le lingue da destra a sinistra.

Controlla il documento corrente solo in base alla tua preferenza.

Modifica dello stile numerico globale

Fai clic su Layout di testo complesso sul lato sinistro della finestra di dialogo e modifica i numeri in hindi . (non mostrato in questo screenshot)

Usa Inserisci >> Numero pagina per mostrare la finestra di dialogo Intestazione / Piè di pagina al fine di aggiungere i numeri di pagina alle diapositive.

L'impostazione dei numeri su Hindi nelle impostazioni della lingua consente di utilizzare numeri "arabi" senza utilizzare un editor del metodo di input come Ibus. In questo contesto, ovviamente, i numeri arabi sono 1,2,3 ...

È possibile utilizzare i numeri hindi nella funzione del numero di pagina del piè di pagina della diapositiva senza modificare tutti i numeri in hindi?

Risposta breve: non tramite le impostazioni della GUI. A parte l'impostazione dello stile di numero globale, non sembra esserci alcun modo per modificare la funzione che inserisce i numeri di pagina.

È interessante notare che il piè di pagina consente di modificare facilmente la data in persiano. Credo che i numeri di pagina non possano essere modificati in modo simile perché i numeri di pagina sembrano essere disegnati dalle funzioni per funzionare con la stampante.

La soluzione è di non utilizzare affatto la numerazione delle pagine del piè di pagina integrata e invece inserire la propria forma di testo nella stessa area con il testo impostato nel modo desiderato. Per un piccolo numero di diapositive, questo non sarebbe troppo male; ma non sarebbe fattibile con più di una manciata.

La soluzione a questo problema è usare una macro di LibreOffice Basic per inserire i numeri di pagina per te. Per una breve panoramica delle macro di LibreOffice e su come usarle nel tuo documento, consulta questa risposta .

Ecco il codice 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

Voglio che il documento abbia lo stesso aspetto anche su altri computer! In questo modo no.
SeMeKh

Inoltre, voglio solo che i "numeri di pagina" siano in persiano. Non "tutti i numeri utilizzati".
SeMeKh

@SeMeKh Si prega di vedere la risposta aggiornata
Chaskes

0

strumenti-> opzioni -> impostazioni delle lingue ->
opzioni generali di layout di testo complesso impostalo su hindi
ed ecco una sua schermata


0

Questo può essere fatto facilmente in due passaggi.

PASSAGGIO 1: modifica delle impostazioni internazionali

Vai al menu e fai clic su: Strumenti> Opzioni , quindi seleziona Lingue in Impostazioni lingua.

Immagine che mostra il passaggio uno

Qui cambia quanto segue:

  1. Impostazioni locali: cambia in arabo (o nella lingua che desideri).
  2. CTL: imposta anche questo sull'arabo (solo se stai usando una lingua che utilizza Layout di testo complesso)
  3. Spuntare la casella di controllo "Solo per il documento corrente" se si desidera questa modifica solo per questo documento che viene modificato
  4. Fai clic su "OK" e salva l'impostazione. A questo punto assicurati che il carattere utilizzato nel campo del numero di pagina supporti la lingua. Nel mio caso Time New Roman font ha un numero arabo Caratteri (۰۱۲۳)

PASSAGGIO 2: selezionare il tipo di campo

Ora seleziona il testo nel campo del numero di pagina (assicurati che il carattere sia corretto) e quindi dal menu seleziona: Modifica> Campi

Immagine che mostra il passaggio due

Nella finestra "Modifica campi" che si apre, cambia il formato in Numerazione nativa (come mostrato sopra). Fai clic su "OK" per salvare e chiudere.

Hai finito!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.