Выделение формул и изменение шрифта (Writer)

Автор zt9, 6 марта 2011, 06:01

0 Пользователи и 1 гость просматривают эту тему.

zt9

Версия OpenOffice: 3.3.0
как выделить сразу несколько формул и изменить шрифт, например, вместо стандартного 12пт на 16пт?
А то нажимать каждую формулу двойным щелчком, потом выбор в меню Формат->Кегли... Убиться можно, таких формул сотни  :(

Рыбка Рио

#1
Этот макрос изменит шрифт всех формул в документе на DejaVu Serif 16pt:

Sub Main
Doc=ThisComponent
Nobj=Doc.DrawPage.Count-1
For i=0 to Nobj
   Obj=Doc.DrawPage(i)
   If Obj.supportsService("com.sun.star.text.TextEmbeddedObject") then
      Obj1=Obj.getEmbeddedObject
      If not IsNull(Obj1) then
         If Obj1.supportsService("com.sun.star.formula.FormulaProperties") then
            Obj1.FontNameFunctions="DejaVu Serif"
            Obj1.FontNameNumbers="DejaVu Serif"
            Obj1.FontNameText="DejaVu Serif"
            Obj1.FontNameVariables="DejaVu Serif"
            Obj1.BaseFontHeight = 16
            'Obj1.FontFixedIsBold = False
            'Obj1.FontFixedIsItalic = False
            'Obj1.FontFunctionsIsBold = False
            'Obj1.FontFunctionsIsItalic = False
         Endif
      Endif
   Endif
Next
End Sub


Списко всех свойств, которые можно менять:
(Name)                            (Value Type)                      (Value)             (Info.)   (Attr.)    (Handle)  
Alignment                         short                             1                                         30  
AllowMacroExecution               boolean                           False               Attr.     Read_Only      
Args                              [].beans.PropertyValue            -Sequence-          Pseud     Read_Only      
AvailableViewControllerNames      []string                          -Sequence-          Pseud     Read_Only      
BaseFontHeight                    short                             12                                        22  
BasicLibraries                    .script.XLibraryContainer         -INTERFACE-                   Read_Only   59  
BottomMargin                      short                             0                                         55  
Controllers                       .container.XEnumeration           -INTERFACE-         Pseud     Read_Only      
CurrentController                 .frame.XController                -void-              Pseud                    
CurrentSelection                  .uno.XInterface                   -void-              Pseud     Read_Only      
CustomFontNameFixed               string                            DejaVu Sans Mono                           7  
CustomFontNameSans                string                            Arial                                      6  
CustomFontNameSerif               string                            Times New Roman                            5  
DialogLibraries                   .script.XLibraryContainer         -INTERFACE-                   Read_Only   62  
DocumentInfo                      .document.XDocumentInfo           -INTERFACE-         Pseud     Read_Only      
DocumentProperties                .document.XDocumentProperties     -INTERFACE-         Pseud     Read_Only      
DocumentStorage                   .embed.XStorage                   -INTERFACE-         Pseud     Read_Only      
DocumentSubStoragesNames          []string                          -Sequence-          Pseud     Read_Only      
Events                            .container.XNameReplace           -INTERFACE-         Pseud     Read_Only      
FontFixedIsBold                   boolean                           False                                      9  
FontFixedIsItalic                 boolean                           False                                      8  
FontFunctionsIsBold               boolean                           False                                     17  
FontFunctionsIsItalic             boolean                           False                                     16  
FontNameFunctions                 string                            DejaVu Serif                               2  
FontNameNumbers                   string                            DejaVu Serif                               3  
FontNameText                      string                            DejaVu Serif                               4  
FontNameVariables                 string                            DejaVu Serif                               1  
FontNumbersIsBold                 boolean                           False                                     19  
FontNumbersIsItalic               boolean                           False                                     18  
FontSansIsBold                    boolean                           False                                     11  
FontSansIsItalic                  boolean                           False                                     10  
FontSerifIsBold                   boolean                           False                                     13  
FontSerifIsItalic                 boolean                           False                                     12  
FontTextIsBold                    boolean                           False                                     21  
FontTextIsItalic                  boolean                           False                                     20  
FontVariablesIsBold               boolean                           False                                     15  
FontVariablesIsItalic             boolean                           False                                     14  
Formula                           string                             { } newline { ...                         0  
GreekCharStyle                    short                             0                                         29  
Identifier                        string                            com.sun.star.fo...  Pseud                    
ImplementationId                  []byte                            -SEQUENCE-          Pseud     Read_Only      
ImplementationName                string                            com.sun.star.co...  Pseud     Read_Only      
IsScaleAllBrackets                boolean                           False                                     44  
IsTextMode                        boolean                           False                                     28  
LeftMargin                        short                             100                                       52  
LibraryContainer                  .container.XNameContainer         -INTERFACE-         Pseud     Read_Only      
LoadReadonly                      boolean                           False                                     61  
LocalName                         string                            ""                  Attr.     Read_Only      
Location                          string                            ""                  Pseud     Read_Only      
Modified                          boolean                                               Ignored                  
Namespace                         string                            vnd.sun.star.td...  Attr.     Read_Only      
Parent                            .uno.XInterface                   -INTERFACE-         Pseud                    
Printer                           [].beans.PropertyValue                                Ignored                  
PrinterName                       string                            ""                                        56  
PrinterSetup                      []byte                            -void-                                    57  
PropertySetInfo                   .beans.XPropertySetInfo           -INTERFACE-         Pseud     Read_Only      
RDFRepository                     .rdf.XRepository                  -INTERFACE-         Pseud     Read_Only      
RelativeBracketDistance           short                             5                                         43  
RelativeBracketExcessSize         short                             5                                         42  
RelativeFontHeightFunctions       short                             100                                       25  
RelativeFontHeightIndices         short                             60                                        24  
RelativeFontHeightLimits          short                             60                                        27  
RelativeFontHeightOperators       short                             100                                       26  
RelativeFontHeightText            short                             100                                       23  
RelativeFractionBarExcessLength   short                             10                                        38  
RelativeFractionBarLineWeight     short                             5                                         39  
RelativeFractionDenominatorDepth  short                             0                                         37  
RelativeFractionNumeratorHeight   short                             0                                         36  
RelativeIndexSubscript            short                             20                                        35  
RelativeIndexSuperscript          short                             20                                        34  
RelativeLineSpacing               short                             5                                         32  
RelativeLowerLimitDistance        short                             0                                         41  
RelativeMatrixColumnSpacing       short                             30                                        47  
RelativeMatrixLineSpacing         short                             3                                         46  
RelativeOperatorExcessSize        short                             50                                        50  
RelativeOperatorSpacing           short                             20                                        51  
RelativeRootSpacing               short                             0                                         33  
RelativeScaleBracketExcessSize    short                             0                                         45  
RelativeSpacing                   short                             10                                        31  
RelativeSymbolMinimumHeight       short                             0                                         49  
RelativeSymbolPrimaryHeight       short                             0                                         48  
RelativeUpperLimitDistance        short                             0                                         40  
RightMargin                       short                             100                                       53  
RuntimeUID                        string                            28                            Read_Only   60  
ScriptContainer                   .document.XEmbeddedScripts        -INTERFACE-         Attr.     Read_Only      
ScriptProvider                    .script.provider.XScriptProvider  -INTERFACE-         Pseud     Read_Only      
StringValue                       string                            vnd.sun.star.td...  Attr.     Read_Only      
SupportedServiceNames             []string                          -Sequence-          Pseud     Read_Only      
Symbols                           [].formula.SymbolDescriptor       -Sequence-                                58  
Title                             string                            Без имени 2         Pseud                    
TopMargin                         short                             0                                         54  
TransferDataFlavors               [].datatransfer.DataFlavor        -Sequence-          Pseud     Read_Only      
Types                             []type                            -Sequence-          Pseud     Read_Only      
UIConfigurationManager            .ui.XUIConfigurationManager                           Ignored   Read_Only      
URL                               string                            ""                  Pseud     Read_Only      
UntitledPrefix                    string                             :                  Pseud     Read_Only      
ViewData                          .container.XIndexAccess           -void-              Pseud                    


Похожая тема: Изменение шрифта в формулах Math - постфактум
ubuntu 12.04 + LibO3.6.0

Intuki

А как правильно обновлять формулы?

Если работать с документом в Windows 8.1, а потом открыть, например, в Ubuntu 14.04, то формулы отображаются не совсем красиво (знаки операций немного сдвинуты).
После двойного ЛКМ по любой формуле и выхода из нее все нормализуется, но только с ней.

В качестве меры помогло

Sub Main
Doc=ThisComponent
Nobj=Doc.DrawPage.Count-1
For i=0 to Nobj
   Obj=Doc.DrawPage(i)
   If Obj.supportsService("com.sun.star.text.TextEmbeddedObject") then
      Obj1=Obj.getEmbeddedObject
      If not IsNull(Obj1) then
         If Obj1.supportsService("com.sun.star.formula.FormulaProperties") then
            Obj1.BaseFontHeight = 12
         Endif
      Endif
   Endif
Next
End Sub


хотя формулы итак с гарнитурой в 12 пт.
Так же почему-то не с первого прохода обновляются все формулы.

Можно ли лучше?