Compare commits
35 commits
Author | SHA1 | Date | |
---|---|---|---|
ca46b20e41 | |||
e62d44cd89 | |||
a5ac4cbb43 | |||
6d138ae938 | |||
d06657e3ee | |||
7a389b1b17 | |||
fa35152083 | |||
05041fc38b | |||
82dc861e82 | |||
6843f73923 | |||
1f4f9d757d | |||
075bfc85aa | |||
b0b5460032 | |||
797ff48837 | |||
fe1fc573eb | |||
82c63c82ca | |||
941ac1c9cc | |||
5dcf629d0d | |||
1eaa629949 | |||
be702bc60f | |||
f39f25b053 | |||
5bb9600439 | |||
f58b4f58de | |||
48ebe71c8e | |||
ab552a70db | |||
8785038720 | |||
8611814942 | |||
2b37cfe542 | |||
d05aed70d6 | |||
79f8164650 | |||
c5dfb15133 | |||
13ba8d4f0c | |||
c44890068b | |||
c5da7ca352 | |||
8411b36a8f |
55
Addons.xcu
|
@ -3,6 +3,10 @@
|
|||
<node oor:name="AddonUI">
|
||||
<node oor:name="OfficeToolBar">
|
||||
<node oor:name="pro.litvinovg.ePublishing.panel" oor:op="replace">
|
||||
<prop oor:name="Docked" oor:op="fuse"><value>true</value></prop>
|
||||
<prop oor:name="HideFromToolbarMenu" oor:op="fuse"><value>false</value></prop>
|
||||
<prop oor:name="Locked" oor:op="fuse"><value>false</value></prop>
|
||||
|
||||
<node oor:name="buttonShrinkText" oor:op="replace">
|
||||
<prop oor:name="Context" oor:type="xs:string">
|
||||
<value>com.sun.star.text.TextDocument,com.sun.star.text.WebDocument</value>
|
||||
|
@ -79,11 +83,35 @@
|
|||
<value>_self</value>
|
||||
</prop>
|
||||
</node>
|
||||
<node oor:name="balanceTail" oor:op="replace">
|
||||
<prop oor:name="Context" oor:type="xs:string">
|
||||
<value>com.sun.star.text.TextDocument,com.sun.star.text.WebDocument</value>
|
||||
</prop>
|
||||
<prop oor:name="Title" oor:type="xs:string">
|
||||
<value xml:lang="ru">Балансировка хвоста</value>
|
||||
<value xml:lang="fr">Équilibrer la dernière ligne</value>
|
||||
<value xml:lang="en">Balance the last line </value>
|
||||
<value xml:lang="sr">Уравнотежите последњу линију</value>
|
||||
<value xml:lang="hr">Uravnotežite posljednji redak</value>
|
||||
<value xml:lang="bs">Uravnotežite posljednji redak</value>
|
||||
</prop>
|
||||
<prop oor:name="URL" oor:type="xs:string">
|
||||
<value>macro:///ePublishing.Archive.balanceCurParaLastLine</value>
|
||||
</prop>
|
||||
<prop oor:name="Target" oor:type="xs:string">
|
||||
<value>_self</value>
|
||||
</prop>
|
||||
</node>
|
||||
|
||||
|
||||
</node>
|
||||
</node>
|
||||
<node oor:name="OfficeToolBar">
|
||||
<node oor:name="pro.litvinovg.ePublishing.makeuppanel" oor:op="replace">
|
||||
<prop oor:name="Docked" oor:op="fuse"><value>true</value></prop>
|
||||
<prop oor:name="HideFromToolbarMenu" oor:op="fuse"><value>false</value></prop>
|
||||
<prop oor:name="Locked" oor:op="fuse"><value>false</value></prop>
|
||||
|
||||
<node oor:name="percentPlus" oor:op="replace">
|
||||
<prop oor:name="Context" oor:type="xs:string">
|
||||
<value>com.sun.star.text.TextDocument,com.sun.star.text.WebDocument</value>
|
||||
|
@ -171,7 +199,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/paragraph.png</value>
|
||||
<value>%origin%/icons/paragraph.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -181,7 +209,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/links.png</value>
|
||||
<value>%origin%/icons/links.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -191,7 +219,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/press_text.png</value>
|
||||
<value>%origin%/icons/press_text.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -202,7 +230,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/incChar.png</value>
|
||||
<value>%origin%/icons/incChar.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -212,7 +240,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/decChar.png</value>
|
||||
<value>%origin%/icons/decChar.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -222,7 +250,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/incKern.png</value>
|
||||
<value>%origin%/icons/incKern.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -232,7 +260,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/decKern.png</value>
|
||||
<value>%origin%/icons/decKern.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -242,10 +270,21 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/endnotes.png</value>
|
||||
<value>%origin%/icons/endnotes.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
<node oor:name="balance-tail" oor:op="replace">
|
||||
<prop oor:name="URL" oor:type="xs:string">
|
||||
<value>macro:///ePublishing.Archive.balanceCurParaLastLine</value>
|
||||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/tail.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
xmlns:dep="http://openoffice.org/extensions/description/2006"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<identifier value="pro.litvinovg.epublishing" />
|
||||
<version value="0.7.5" />
|
||||
<version value="0.7.16" />
|
||||
<platform value="all" />
|
||||
<display-name>
|
||||
<name lang="ru">Инструменты для создания электронных изданий</name>
|
||||
|
@ -33,8 +33,8 @@
|
|||
</extension-description>
|
||||
|
||||
<icon>
|
||||
<default xlink:href="icons/addon_icon.png" />
|
||||
<high-contrast xlink:href="icons/addon_icon.png" />
|
||||
<default xlink:href="icons/addon_icon.svg" />
|
||||
<high-contrast xlink:href="icons/addon_icon.svg" />
|
||||
</icon>
|
||||
</description>
|
||||
|
||||
|
|
|
@ -1,9 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Archive" script:language="StarBasic" script:moduleType="normal">Sub archMark20
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Archive" script:language="StarBasic" script:moduleType="normal">Sub archMark29
|
||||
|
||||
End Sub
|
||||
|
||||
Public Const MAX_CHAR_KERNING = 15
|
||||
Public Const MIN_CHAR_KERNING = -10
|
||||
Public Const MIN_SPACING_TO_SHRINK = 500
|
||||
|
||||
Sub resetNotesStyle
|
||||
Dim oDescriptor As Object
|
||||
Dim dispatcher As Object
|
||||
|
@ -168,13 +172,16 @@ sub convertIndesignPageBreaks
|
|||
Exit Sub
|
||||
EndIf
|
||||
turnOffTracking()
|
||||
setZoomToSpeedUpTasks()
|
||||
|
||||
balanceFootNotes()
|
||||
Dim oViewCursor As Object
|
||||
oViewCursor = thisComponent.getCurrentController.getViewCursor
|
||||
oViewCursor.jumpToFirstPage
|
||||
|
||||
Dim oSearch As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim testCurs As Object
|
||||
Dim firstLowercase As Boolean
|
||||
Dim firstBreak As Boolean
|
||||
firstBreak = true
|
||||
|
@ -186,6 +193,7 @@ sub convertIndesignPageBreaks
|
|||
Dim nextPara As Object
|
||||
Dim prevPara As Object
|
||||
Dim nextParaFirstCharacter As String
|
||||
Dim stringContents As String
|
||||
firstLowercase = false
|
||||
|
||||
oSearch = ThisComponent.createSearchDescriptor()
|
||||
|
@ -198,7 +206,15 @@ sub convertIndesignPageBreaks
|
|||
oTextCursor.gotoRange(oFound,false)
|
||||
oTextCursor.gotoStartOfParagraph(false)
|
||||
oTextCursor.gotoEndOfParagraph(true)
|
||||
oTextCursor.goRight(1,true)
|
||||
testCurs = oTextCursor.Text.createTextCursorByRange(oTextCursor.End)
|
||||
testCurs.goRight(1,false)
|
||||
testCurs.gotoEndOfParagraph(true)
|
||||
'In case two page breaks go together
|
||||
stringContents = testCurs.String
|
||||
If stringContents <> pageBreakMarker Then
|
||||
oTextCursor.goRight(1,true)
|
||||
EndIf
|
||||
|
||||
oTextCursor.String = ""
|
||||
oTextCursor.BreakType = com.sun.star.style.BreakType.PAGE_BEFORE
|
||||
'Go to Start of new paragraph to shrink prev page if necessary
|
||||
|
@ -216,6 +232,7 @@ sub convertIndesignPageBreaks
|
|||
Wait 100
|
||||
pageNumber = getPageNumber(oTextCursor.Text.createTextCursorByRange(oTextCursor.End))
|
||||
EndIf
|
||||
|
||||
'check first character
|
||||
oTextCursor.goRight(1,true)
|
||||
nextPara = oTextCursor.End
|
||||
|
@ -246,9 +263,10 @@ sub convertIndesignPageBreaks
|
|||
EndIf
|
||||
End If
|
||||
|
||||
If pageNumber - prevPageNumber < 2 Then
|
||||
' stretchPrevPage(prevPara)
|
||||
EndIf
|
||||
|
||||
'If pageNumber - prevPageNumber < 2 Then
|
||||
'stretchPrevPage(prevPara)
|
||||
'EndIf
|
||||
|
||||
prevPageNumber = pageNumber
|
||||
oFound = ThisComponent.findNext(oFound.End, oSearch)
|
||||
|
@ -259,14 +277,16 @@ end Sub
|
|||
|
||||
Sub configureHeadings
|
||||
configureArchiveHeading1
|
||||
configureOtherArchiveHeadings
|
||||
configureArchiveHeadings()
|
||||
End Sub
|
||||
|
||||
|
||||
Sub configureArchiveHeading1
|
||||
Dim outline1() As Object
|
||||
Dim oViewCursor As Object
|
||||
Dim oSavePosition As Object
|
||||
Dim initPosition As Object
|
||||
Dim initPageNum As Integer
|
||||
fixViewCursor()
|
||||
oViewCursor = thisComponent.getCurrentController.getViewCursor
|
||||
oSavePosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
outline1 = getHeadingWithLevel(1)
|
||||
|
@ -274,33 +294,35 @@ Sub configureArchiveHeading1
|
|||
Dim pageNumberCursor As Object
|
||||
Dim i As Integer
|
||||
Dim j As Integer
|
||||
Dim initialPageCount As Integer
|
||||
initialPageCount = ThisComponent.currentController.pageCount
|
||||
For i = LBound(outline1) To UBound(outline1)
|
||||
oViewCursor.goToRange(outline1(i), false)
|
||||
oViewCursor.jumpToEndOfPage()
|
||||
pageNumberCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
pageNumberCursor.goToStartOfWord(false)
|
||||
startViewPageNum = getPageNumber(pageNumberCursor)
|
||||
initPosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
initPageNum = oViewcursor.getPage()
|
||||
|
||||
Do While startViewPageNum = getPageNumber(pageNumberCursor) And initialPageCount = ThisComponent.currentController.pageCount
|
||||
outline1(i).ParaTopMargin = outline1(i).ParaTopMargin + 100
|
||||
Do While Not isContentPageChanged(initPosition, initPageNum) AND outline1(i).ParaBottomMargin < 10000
|
||||
outline1(i).ParaBottomMargin = outline1(i).ParaBottomMargin + 100
|
||||
Loop
|
||||
Do While isContentPageChanged(initPosition, initPageNum)
|
||||
If outline1(i).ParaBottomMargin < 0 Then
|
||||
Exit Do
|
||||
EndIf
|
||||
outline1(i).ParaBottomMargin = outline1(i).ParaBottomMargin - 100
|
||||
Loop
|
||||
If outline1(i).ParaTopMargin >= 100 Then
|
||||
outline1(i).ParaTopMargin = outline1(i).ParaTopMargin - 100
|
||||
EndIf
|
||||
Next i
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
End Sub
|
||||
|
||||
Sub configureOtherArchiveHeadings
|
||||
Sub configureArchiveHeadings()
|
||||
Dim outline1() As Object
|
||||
Dim oViewCursor As Object
|
||||
Dim oSavePosition As Object
|
||||
Dim initPosition As Object
|
||||
Dim initPageNum As Integer
|
||||
Dim savePosition As Object
|
||||
fixViewCursor()
|
||||
oViewCursor = thisComponent.getCurrentController.getViewCursor
|
||||
oSavePosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
savePosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
|
||||
Dim startViewPageNum As Integer
|
||||
Dim pageNumberCursor As Object
|
||||
Dim i As Integer
|
||||
Dim j As Integer
|
||||
|
@ -312,23 +334,25 @@ Sub configureOtherArchiveHeadings
|
|||
If outline1(i).BreakType <> 4 Then
|
||||
oViewCursor.goToRange(outline1(i), false)
|
||||
oViewCursor.jumpToEndOfPage()
|
||||
pageNumberCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
pageNumberCursor.goToStartOfWord(false)
|
||||
startViewPageNum = getPageNumber(pageNumberCursor)
|
||||
initPosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
initPageNum = oViewcursor.getPage()
|
||||
|
||||
Do While startViewPageNum = getPageNumber(pageNumberCursor) And initialPageCount = ThisComponent.currentController.pageCount
|
||||
Do While Not isContentPageChanged(initPosition, initPageNum)
|
||||
outline1(i).ParaTopMargin = outline1(i).ParaTopMargin + 100
|
||||
If (outline1(i).ParaTopMargin > outline1(i).ParaBottomMargin) Then
|
||||
Exit Do
|
||||
EndIf
|
||||
Loop
|
||||
If outline1(i).ParaTopMargin >= 100 Then
|
||||
Do While isContentPageChanged(initPosition, initPageNum)
|
||||
If outline1(i).ParaBottomMargin < 0 Then
|
||||
Exit Do
|
||||
EndIf
|
||||
outline1(i).ParaTopMargin = outline1(i).ParaTopMargin - 100
|
||||
EndIf
|
||||
Loop
|
||||
EndIf
|
||||
Next i
|
||||
Next j
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
oViewCursor.goToRange(savePosition,false)
|
||||
End Sub
|
||||
|
||||
|
||||
|
@ -351,7 +375,7 @@ Sub stretchPrevPage()
|
|||
Dim curPara As Object
|
||||
oViewCursor = thisComponent.getCurrentController.getViewCursor
|
||||
oSavePosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
oViewCursor.goToRange(prevPara, false)
|
||||
|
||||
'oViewCursor.goToStartOfLine(false)
|
||||
pageNumberCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
pageNumberCursor.goToStartOfWord(false)
|
||||
|
@ -434,18 +458,80 @@ Sub stretchPrevPage()
|
|||
Next i
|
||||
Exit Sub
|
||||
EndIf
|
||||
|
||||
|
||||
|
||||
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
End Sub
|
||||
|
||||
Sub balanceCurParaLastLine()
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim paraEnd As Object
|
||||
Dim success As Boolean
|
||||
Dim adjustType As Integer
|
||||
fixViewCursor()
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCursor.ParaIsHyphenation = true
|
||||
success = balanceParaTail(oViewCursor.Start, false)
|
||||
End Sub
|
||||
|
||||
Sub adjustLastLineCurPara()
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim paraEnd As Object
|
||||
Dim success As Boolean
|
||||
Dim adjustType As Integer
|
||||
Dim hyph As Boolean
|
||||
fixViewCursor()
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oTextCursor = oViewCursor.Text.CreateTextCursorByRange(oViewCursor)
|
||||
paraEnd = getParaEnd(oTextCursor)
|
||||
oTextCursor.goToRange(paraEnd,false)
|
||||
oTextCursor.goLeft(1,true)
|
||||
If (oTextCursor.String = " ") Then
|
||||
oTextCursor.String = ""
|
||||
EndIf
|
||||
adjustType = oTextCursor.ParaAdjust
|
||||
hyph = oTextCursor.ParaIsHyphenation
|
||||
oTextCursor.ParaIsHyphenation = true
|
||||
success = balanceParaTail(oTextCursor.Start, true)
|
||||
If success And adjustType = 2 Then
|
||||
oTextCursor.ParaLastLineAdjust = 2
|
||||
Else
|
||||
oTextCursor.ParaIsHyphenation = hyph
|
||||
EndIf
|
||||
End Sub
|
||||
|
||||
Sub balanceFootNotes()
|
||||
Dim allNotes As Object
|
||||
Dim aNote As Object
|
||||
Dim x As Long
|
||||
allNotes = ThisComponent.FootNotes
|
||||
For x = 0 to allNotes.Count -1
|
||||
aNote = allNotes.getByIndex(x)
|
||||
balanceFootNote(aNote)
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Sub balanceFootNote(textElement As Object)
|
||||
Dim enum1Element As Object
|
||||
Dim enum1 As Object
|
||||
Dim oViewCursor As Object
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
enum1 = textElement.createEnumeration()
|
||||
While enum1.hasMoreElements
|
||||
enum1Element = enum1.nextElement
|
||||
If enum1Element.supportsService("com.sun.star.text.Paragraph") Then
|
||||
oViewCursor.goToRange(enum1Element,false)
|
||||
balanceCurParaLastLine()
|
||||
EndIf
|
||||
Wend
|
||||
End Sub
|
||||
|
||||
|
||||
Sub adjustLastLine(anchor As Object)
|
||||
anchor.ParaAdjust = 2
|
||||
'anchor.ParaLastLineAdjust = 2
|
||||
balancePara(anchor)
|
||||
Dim oViewCursor As Object
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCursor.goToRange(anchor,false)
|
||||
adjustLastLineCurPara()
|
||||
End Sub
|
||||
|
||||
Sub adjustFirstLine(anchor As Object)
|
||||
|
@ -460,96 +546,374 @@ Function isLowerCase(character As String) As Boolean
|
|||
Else
|
||||
charNum = ASC(character)
|
||||
End If
|
||||
If ((charNum > 1071 AND charNum < 1104) Or (charNum > 60 AND charNum < 123)) Then
|
||||
If ((charNum > 1071 AND charNum < 1120) Or (charNum > 96 AND charNum < 123)) Then
|
||||
isLowerCase = true
|
||||
Exit Function
|
||||
EndIf
|
||||
isLowerCase = false
|
||||
End Function
|
||||
|
||||
Sub balancePara(targetPara As Object)
|
||||
' Globalscope.BasicLibraries.LoadLibrary( "MRILib" )
|
||||
|
||||
|
||||
Function balanceParaTail(targetPara As Object, strictMode As Boolean) As Boolean
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim oPara As Object
|
||||
Dim oParaStart As Object
|
||||
Dim oParaEnd As Object
|
||||
Dim oContent As Object
|
||||
Dim oContentStart As Object
|
||||
Dim oContentEnd As Object
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCursor.goToRange(targetPara, false)
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
|
||||
oContentStart = getParaStart(oTextCursor)
|
||||
oContentEnd = getParaEnd(oTextCursor)
|
||||
oContent = getParaSelected(oContentStart,oContentEnd)
|
||||
balanceParaTail = balanceContentTail(oContent, strictMode)
|
||||
End Function
|
||||
|
||||
Function balanceContentTail(oContent As Object, strictMode As Boolean) As Boolean
|
||||
' Globalscope.BasicLibraries.LoadLibrary( "MRILib" )
|
||||
balanceContentTail = false
|
||||
Dim oViewCursor As Object
|
||||
Dim paraLen As Integer
|
||||
Dim lineCount As Integer
|
||||
Dim initialLineCount As Integer
|
||||
Dim lineLen As Integer
|
||||
Dim mathExpect As Integer
|
||||
Dim initialLineLen As Integer
|
||||
Dim minLastLineLength As Integer
|
||||
paraLen = 0
|
||||
lineLen = 0
|
||||
minLastLineLength = 0
|
||||
initialLineCount = 0
|
||||
|
||||
Dim medianLen As Integer
|
||||
Dim paraLines() As Object
|
||||
Dim fallBackSuccess As Boolean
|
||||
fallBackSuccess = false
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCursor.goToRange(targetPara, false)
|
||||
paraLen = Len(oContent.String)
|
||||
paraLines = getContentLines(oContent)
|
||||
initialLineCount = getParaLinesCount(paraLines)
|
||||
lineLen = getParaLineLength(paraLines, 0)
|
||||
initialLineLen = lineLen
|
||||
medianLen = calculateMedianParaLen(oContent)
|
||||
minLastLineLength = medianLen * 0.93
|
||||
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
oPara = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
'Go to start of para
|
||||
oTextCursor.gotoStartOfParagraph(false)
|
||||
'Get start position
|
||||
oParaStart = oTextCursor.getStart()
|
||||
'Go to end of para
|
||||
oTextCursor.gotoEndOfParagraph(false)
|
||||
'Get end position
|
||||
oParaEnd = oTextCursor.getEnd()
|
||||
'return Text cursor to start
|
||||
oTextCursor.goToRange(oParaStart,false)
|
||||
'oPara is full para cursor
|
||||
oPara.goToRange(oParaStart,false)
|
||||
oPara.goToRange(oParaEnd,true)
|
||||
If Not IsEmpty(oContent.CharKerning) Then
|
||||
initialCharKerning = oContent.CharKerning
|
||||
Else
|
||||
initialCharKerning = 0
|
||||
End If
|
||||
|
||||
Do
|
||||
'Not first iteration
|
||||
If minLastLineLength <> 0 Then
|
||||
If oPara.CharKerning < 50 Then
|
||||
If(IsEmpty(oPara.CharKerning)) Then
|
||||
oPara.CharKerning = 0
|
||||
Else
|
||||
oPara.CharKerning = oPara.CharKerning + 2
|
||||
End If
|
||||
Else
|
||||
'Failed to balance para
|
||||
Exit Sub
|
||||
If initialLineCount < 2 Then
|
||||
Exit Function
|
||||
EndIf
|
||||
|
||||
Do While lastLineIsNotBalanced(lineLen, minLastLineLength)
|
||||
decreaseCharKerning(oContent)
|
||||
paraLines = getContentLines(oContent)
|
||||
lineCount = getParaLinesCount(paraLines)
|
||||
lineLen = getParaLineLength(paraLines,0)
|
||||
If (lineCount < initialLineCount ) OR (oContent.CharKerning < MIN_CHAR_KERNING) Then
|
||||
'Tightened last line but it is still smaller than we need
|
||||
fallBackSuccess = tryExpandPrevLines(oContent, minLastLineLength)
|
||||
If Not fallBackSuccess Then
|
||||
If strictMode Then
|
||||
oContent.CharKerning = initialCharKerning
|
||||
balanceContentTail = false
|
||||
Else
|
||||
paraLines = getContentLines(oContent)
|
||||
lineLen = getParaLineLength(paraLines,0)
|
||||
If (lineLen < initialLineLen) Then
|
||||
oContent.CharKerning = initialCharKerning
|
||||
balanceContentTail = false
|
||||
Else
|
||||
balanceContentTail = true
|
||||
EndIf
|
||||
EndIf
|
||||
oViewCursor.collapseToEnd()
|
||||
Exit Function
|
||||
EndIf
|
||||
Exit Do
|
||||
EndIf
|
||||
|
||||
oViewCursor.goToRange(oParaStart,false)
|
||||
oTextCursor.goToRange(oParaStart,false)
|
||||
lineCount = 0
|
||||
While NOT oTextCursor.isEndOfParagraph()
|
||||
oViewCursor.gotoEndOfLine(true)
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
lineLen = Len(oTextCursor.getString())
|
||||
paraLen = paraLen + lineLen
|
||||
lineCount = lineCount + 1
|
||||
oViewCursor.collapseToEnd()
|
||||
Wend
|
||||
'set initial line count
|
||||
If initialLineCount = 0 Then
|
||||
initialLineCount = lineCount
|
||||
ElseIf lineCount > initialLineCount Then
|
||||
'Undo last iteration as line overflow happened.
|
||||
'And exit
|
||||
If(IsEmpty(oPara.CharKerning)) Then
|
||||
oPara.CharKerning = 0
|
||||
Else
|
||||
oPara.CharKerning = oPara.CharKerning - 2
|
||||
End If
|
||||
Exit sub
|
||||
Loop
|
||||
oViewCursor.collapseToEnd()
|
||||
balanceContentTail = true
|
||||
End Function
|
||||
|
||||
Function shrinkContentWithKerning(oContent As Object) As Boolean
|
||||
' Globalscope.BasicLibraries.LoadLibrary( "MRILib" )
|
||||
shrinkContentWithKerning = false
|
||||
Dim paraLen As Integer
|
||||
Dim lineCount As Integer
|
||||
Dim saveLineCount As Integer
|
||||
Dim initialLineCount As Integer
|
||||
Dim contentLines() As Object
|
||||
Dim kerningValue As Integer
|
||||
contentLines = getContentLines(oContent)
|
||||
initialLineCount = getParaLinesCount(contentLines)
|
||||
saveLineCount = initialLineCount
|
||||
If Not IsEmpty(oContent.CharKerning) Then
|
||||
initialCharKerning = oContent.CharKerning
|
||||
Else
|
||||
initialCharKerning = 0
|
||||
End If
|
||||
kerningValue = initialCharKerning
|
||||
'Reduce kerning is useless if content is less than 2 lines long
|
||||
If initialLineCount < 2 Then
|
||||
Exit Function
|
||||
EndIf
|
||||
|
||||
Do While oContent.CharKerning > MIN_CHAR_KERNING
|
||||
decreaseCharKerning(oContent)
|
||||
contentLines = getContentLines(oContent)
|
||||
lineCount = getParaLinesCount(contentLines)
|
||||
If lineCount < saveLineCount Then
|
||||
kerningValue = oContent.CharKerning
|
||||
saveLineCount = lineCount
|
||||
EndIf
|
||||
mathExpect = paraLen / lineCount
|
||||
minLastLineLength = mathExpect * 0.9
|
||||
Loop Until minLastLineLength < lineLen
|
||||
Loop
|
||||
'If decrease kerning didn't reduce lines then retreat to latest value that changed lines count
|
||||
If kerningValue <> oContent.CharKerning Then
|
||||
oContent.CharKerning = kerningValue
|
||||
EndIf
|
||||
If initialCharKerning <> kerningValue Then
|
||||
shrinkContentWithKerning = true
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Function tryExpandPrevLines(oPara As Object, minLastLineLength As Integer) As Boolean
|
||||
Dim lineCount As Integer
|
||||
Dim finishLineCount As Integer
|
||||
Dim initialLineCount As Integer
|
||||
Dim paraLine As Object
|
||||
Dim finishLastline As Object
|
||||
Dim lineNum As Integer
|
||||
Dim failedLines() As Integer
|
||||
Dim lastLineCharKerning As Integer
|
||||
Dim paraLines() As Object
|
||||
Dim lineCharKerning As Integer
|
||||
paraLines = getContentLines(oPara)
|
||||
lineLen = getParaLineLength(paraLines,0)
|
||||
initialLineCount = getParaLinesCount(paraLines)
|
||||
lineCount = initialLineCount
|
||||
lineNum = 0
|
||||
Do While lineCount = initialLineCount And lastLineIsNotBalanced(lineLen, minLastLineLength)
|
||||
If (lineNum + 1 < lineCount And Not IsInArray(failedLines, lineNum + 1)) Then
|
||||
lineNum = lineNum + 1
|
||||
EndIf
|
||||
paraLine = paraLines(UBound(paraLines) - lineNum)
|
||||
increaseCharKerning(paraLine)
|
||||
paraLines = getContentLines(oPara)
|
||||
lineCount = getParaLinesCount(paraLines)
|
||||
lineLen = getParaLineLength(paraLines,0)
|
||||
If lineNum > 1 And (lineCount <> initialLineCount Or paraLine.CharKerning > MAX_CHAR_KERNING) Then
|
||||
AddToArray(failedLines, lineNum)
|
||||
lineCharKerning = decreaseCharKerning(paraLine)
|
||||
paraLines = getContentLines(oPara)
|
||||
lineCount = getParaLinesCount(paraLines)
|
||||
If lineCount > initialLineCount Then
|
||||
Do While lineCount > initialLineCount And lineCharKerning > MIN_CHAR_KERNING
|
||||
lineCharKerning = decreaseCharKerning(paraLine)
|
||||
paraLines = getContentLines(oPara)
|
||||
lineCount = getParaLinesCount(paraLines)
|
||||
Loop
|
||||
EndIf
|
||||
lineLen = getParaLineLength(paraLines,0)
|
||||
lineNum = 0
|
||||
ElseIf lineNum = 1 And paraLine.CharKerning > MAX_CHAR_KERNING Then
|
||||
tryExpandPrevLines = false
|
||||
Exit Function
|
||||
EndIf
|
||||
Loop
|
||||
If Not lastLineIsNotBalanced(lineLen, minLastLineLength) And lineCount = initialLineCount Then
|
||||
tryExpandPrevLines = true
|
||||
Else
|
||||
tryExpandPrevLines = false
|
||||
EndIf
|
||||
normalizeLastLine(oPara)
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
Sub normalizeLastLine(oPara As Object)
|
||||
Dim lineCount As Integer
|
||||
Dim finishLineCount As Integer
|
||||
Dim initialLineCount As Integer
|
||||
Dim paraLine As Object
|
||||
Dim finishLastline As Object
|
||||
Dim lineNum As Integer
|
||||
Dim failedLines() As Integer
|
||||
Dim lastLineCharKerning As Integer
|
||||
Dim paraLines() As Object
|
||||
Dim oTextCursor As Object
|
||||
oTextCursor = oPara.Text.createTextCursorByRange(oPara)
|
||||
oTextCursor.collapseToEnd()
|
||||
If ( oTextCursor.CharKerning > 0 ) Then
|
||||
Exit Sub
|
||||
EndIf
|
||||
|
||||
'increase last line kerning to 0
|
||||
paraLines = getContentLines(oPara)
|
||||
lineCount = getParaLinesCount(paraLines)
|
||||
finishLineCount = lineCount
|
||||
finishLastline = paraLines(UBound(paraLines))
|
||||
'try just set 0 char kerning to last line, reduce kerning if failed
|
||||
lastLineCharKerning = 0
|
||||
finishLastline.CharKerning = lastLineCharKerning
|
||||
paraLines = getContentLines(oPara)
|
||||
lineCount = getParaLinesCount(paraLines)
|
||||
If lineCount > finishLineCount Then
|
||||
Do While lineCount > finishLineCount AND lastLineCharKerning > MIN_CHAR_KERNING
|
||||
lastLineCharKerning = lastLineCharKerning - 2
|
||||
finishLastline.CharKerning = lastLineCharKerning
|
||||
paraLines = getContentLines(oPara)
|
||||
lineCount = getParaLinesCount(paraLines)
|
||||
Loop
|
||||
EndIf
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Function getParaLinesCount(paraLines() As Object) As Integer
|
||||
getParaLinesCount = UBound(paraLines) + 1
|
||||
End Function
|
||||
|
||||
Function getParaLineLength(paraLines() As Object, lineNumber As Integer) As Integer
|
||||
Dim arrIndex As Integer
|
||||
arrIndex = UBound(paraLines) - lineNumber
|
||||
If (arrIndex >= 0) Then
|
||||
getParaLineLength = Len(paraLines(arrIndex).String)
|
||||
Else
|
||||
'Throw an error?
|
||||
getParaLineLength = 0
|
||||
EndIf
|
||||
|
||||
End Function
|
||||
|
||||
Function getContentLines(oContent As Object) As Variant
|
||||
Dim oTextCursor As Object
|
||||
Dim oViewCursor As Object
|
||||
Dim paraLine As Object
|
||||
Dim paraLines() As Object
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
'initial value is 1 As paragraph can't be 0 lines long
|
||||
oTextCursor = oContent.Text.createTextCursorByRange(oContent)
|
||||
oTextCursor.collapseToStart()
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
While NOT oTextCursor.isEndOfParagraph()
|
||||
oViewCursor.gotoEndOfLine(true)
|
||||
If (Len(oViewCursor.String) = 0) Then
|
||||
oTextCursor.goToRange(oViewCursor,false)
|
||||
oTextCursor.goRight(1,false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
oViewCursor.gotoEndOfLine(true)
|
||||
EndIf
|
||||
If (Len(oViewCursor.String) > 0) Then
|
||||
paraLine = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
AddToArray(paraLines, paraLine)
|
||||
EndIf
|
||||
oViewCursor.collapseToEnd()
|
||||
oTextCursor.goToRange(oViewCursor,false)
|
||||
Wend
|
||||
getContentLines = paraLines
|
||||
End Function
|
||||
|
||||
Function decreaseCharKerning(oPara As Object) As Integer
|
||||
Dim initialCharKerning As Integer
|
||||
Dim textExcerpts As Object
|
||||
Dim textExcerpt As Object
|
||||
initialCharKerning = MIN_CHAR_KERNING + 2
|
||||
If Not (IsEmpty(oPara.CharKerning)) Then
|
||||
initialCharKerning = oPara.CharKerning
|
||||
EndIf
|
||||
If (initialCharKerning >= MIN_CHAR_KERNING) Then
|
||||
oPara.CharKerning = initialCharKerning - 2
|
||||
EndIf
|
||||
decreaseCharKerning = initialCharKerning - 2
|
||||
End Function
|
||||
|
||||
Function increaseCharKerning(oPara As Object) As Integer
|
||||
Dim initialCharKerning As Integer
|
||||
Dim textExcerpts As Object
|
||||
Dim textExcerpt As Object
|
||||
initialCharKerning = MAX_CHAR_KERNING - 2
|
||||
If Not (IsEmpty(oPara.CharKerning)) Then
|
||||
initialCharKerning = oPara.CharKerning
|
||||
EndIf
|
||||
oPara.CharKerning = initialCharKerning + 2
|
||||
increaseCharKerning = initialCharKerning + 2
|
||||
End Function
|
||||
|
||||
Function lastLineIsNotBalanced(lineLen As Integer,minLastLineLength As Integer) As Boolean
|
||||
lastLineIsNotBalanced = true
|
||||
If lineLen = 0 Then
|
||||
lastLineIsNotBalanced = false
|
||||
Exit Function
|
||||
EndIf
|
||||
If lineLen >= minLastLineLength Then
|
||||
lastLineIsNotBalanced = false
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Function getParaStart(oTextCursor As Object) As Object
|
||||
If NOT oTextCursor.isStartOfParagraph() Then
|
||||
oTextCursor.gotoStartOfParagraph(false)
|
||||
EndIf
|
||||
getParaStart = oTextCursor.getStart()
|
||||
End Function
|
||||
|
||||
Function getParaEnd(oTextCursor As Object) As Object
|
||||
If NOT oTextCursor.isEndOfParagraph() Then
|
||||
oTextCursor.gotoEndOfParagraph(false)
|
||||
EndIf
|
||||
getParaEnd = oTextCursor.getEnd()
|
||||
End Function
|
||||
|
||||
Function getParaSelected(oParaStart As Object,oParaEnd As Object) As Object
|
||||
Dim oPara As Object
|
||||
oPara = oParaStart.Text.createTextCursorByRange(oParaStart)
|
||||
oPara.goToRange(oParaEnd,true)
|
||||
getParaSelected = oPara
|
||||
End Function
|
||||
|
||||
|
||||
Function calculateMedianParaLen(oPara As Object) As Integer
|
||||
Dim oTextCursor As Object
|
||||
Dim oViewCursor As Object
|
||||
Dim lineCount As Integer
|
||||
Dim lineLen As Integer
|
||||
Dim linesLen As Integer
|
||||
linesLen = 0
|
||||
calculateMedianParaLen = 0
|
||||
lineCount = 0
|
||||
lineLen = 0
|
||||
If (Len (oPara.String) = 0) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCursor.goToRange(oPara, false)
|
||||
oViewCursor.collapseToStart()
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
oParaStart = getParaStart(oTextCursor)
|
||||
oViewCursor.goToRange(oParaStart,false)
|
||||
While NOT oTextCursor.isEndOfParagraph()
|
||||
oViewCursor.gotoEndOfLine(true)
|
||||
lineLen = Len(oViewCursor.getString())
|
||||
If lineLen > 0 Then
|
||||
linesLen = linesLen + lineLen
|
||||
lineCount = lineCount + 1
|
||||
oViewCursor.collapseToEnd()
|
||||
oTextCursor.goToRange(oViewCursor,false)
|
||||
Else
|
||||
oTextCursor.goToRange(oViewCursor,false)
|
||||
oTextCursor.goRight(1,false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
EndIf
|
||||
Wend
|
||||
If lineCount > 0 Then
|
||||
calculateMedianParaLen = linesLen / lineCount
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Sub convertBookmarksToFootnotes()
|
||||
Dim description As String
|
||||
description = getTranslation("convertIndesignFoonotesConfirmation")
|
||||
|
@ -588,9 +952,7 @@ Sub convertBookmarksToFootnotes()
|
|||
EndIf
|
||||
convertLinkToFootnote(forwardLink,backwardLink)
|
||||
EndIf
|
||||
|
||||
Next i
|
||||
|
||||
resetNotesStyle
|
||||
MsgBox getTranslation("convertIndesignFootnotesFinish")
|
||||
End Sub
|
||||
|
@ -670,13 +1032,6 @@ Sub removeFootnoteSignInText
|
|||
character = oViewCursor.String
|
||||
Loop
|
||||
oViewCursor.goRight(1,true)
|
||||
character = oViewCursor.String
|
||||
Do While isLinkCharacter(character)
|
||||
oViewCursor.String = ""
|
||||
oViewCursor.goRight(1,true)
|
||||
character = oViewCursor.String
|
||||
Loop
|
||||
oViewCursor.goRight(1,false)
|
||||
End Sub
|
||||
|
||||
Function isLinkCharacter(character As String) As Boolean
|
||||
|
@ -763,8 +1118,10 @@ End Sub
|
|||
Sub replaceParaStyle
|
||||
|
||||
dim oldStyleName As String
|
||||
dim oldStyleNameLocalized As String
|
||||
dim oldStyle As Object
|
||||
dim newStyleName As String
|
||||
dim newStyleNameLocalized As String
|
||||
dim paragraphStyles As Object
|
||||
dim userInput As Integer
|
||||
Dim listBox As Object
|
||||
|
@ -796,11 +1153,11 @@ Sub replaceParaStyle
|
|||
listBox.addItems(sortedDPSN , 0)
|
||||
oDialog.Title = getTranslation("replaceParaStyleDialogTitle")
|
||||
oDialog.Execute()
|
||||
newStyleName = oDialog.model.Tag
|
||||
If newStyleName="0" or newStyleName="" Then
|
||||
newStyleNameLocalized = oDialog.model.Tag
|
||||
If newStyleNameLocalized="0" or newStyleNameLocalized="" Then
|
||||
Exit sub
|
||||
EndIf
|
||||
foundIndex = getIndex(displayParaStyleNames, newStyleName)
|
||||
foundIndex = getIndex(displayParaStyleNames, newStyleNameLocalized)
|
||||
'set style system name instead of display name
|
||||
newStyleName = paraStyleNames(foundIndex)
|
||||
|
||||
|
@ -808,11 +1165,10 @@ Sub replaceParaStyle
|
|||
MsgBox getTranslation("replaceParaStyleStylesEqualsNotification")
|
||||
Exit sub
|
||||
EndIf
|
||||
|
||||
If oldStyleName <> "" Then
|
||||
oldStyle = paraStyles.getByName(oldStyleName)
|
||||
If NOT oldStyle.isUserDefined Then
|
||||
MsgBox getTranslation("replaceParaStyleCurrentStyleIsStandard")
|
||||
replaceDefaultParaStyle(getLocalizedParaStyleName(oldStyleName), newStyleNameLocalized)
|
||||
Exit sub
|
||||
EndIf
|
||||
oldStyle.ParentStyle = newStyleName
|
||||
|
@ -830,10 +1186,70 @@ Sub replaceParaStyle
|
|||
EndIf
|
||||
EndIf
|
||||
Wend
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Function getLocalizedParaStyleName(styleName as String) As String
|
||||
Dim style As Object
|
||||
Dim styles As Object
|
||||
styles = ThisComponent.StyleFamilies
|
||||
style = styles.getByName(styles.elementNames(1)).getByName(styleName)
|
||||
getLocalizedParaStyleName = style.DisplayName
|
||||
End Function
|
||||
|
||||
sub replaceDefaultParaStyle(fromStyle As String, toStyle As String)
|
||||
|
||||
dim document as object
|
||||
dim dispatcher as object
|
||||
document = ThisComponent.CurrentController.Frame
|
||||
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
|
||||
dim args1(21) as new com.sun.star.beans.PropertyValue
|
||||
args1(0).Name = "SearchItem.StyleFamily"
|
||||
args1(0).Value = 2
|
||||
args1(1).Name = "SearchItem.CellType"
|
||||
args1(1).Value = 0
|
||||
args1(2).Name = "SearchItem.RowDirection"
|
||||
args1(2).Value = true
|
||||
args1(3).Name = "SearchItem.AllTables"
|
||||
args1(3).Value = false
|
||||
args1(4).Name = "SearchItem.SearchFiltered"
|
||||
args1(4).Value = false
|
||||
args1(5).Name = "SearchItem.Backward"
|
||||
args1(5).Value = false
|
||||
args1(6).Name = "SearchItem.Pattern"
|
||||
args1(6).Value = true
|
||||
args1(7).Name = "SearchItem.Content"
|
||||
args1(7).Value = false
|
||||
args1(8).Name = "SearchItem.AsianOptions"
|
||||
args1(8).Value = false
|
||||
args1(9).Name = "SearchItem.AlgorithmType"
|
||||
args1(9).Value = 0
|
||||
args1(10).Name = "SearchItem.SearchFlags"
|
||||
args1(10).Value = 65536
|
||||
args1(11).Name = "SearchItem.SearchString"
|
||||
args1(11).Value = fromStyle
|
||||
args1(12).Name = "SearchItem.ReplaceString"
|
||||
args1(12).Value = toStyle
|
||||
args1(13).Name = "SearchItem.Locale"
|
||||
args1(13).Value = 255
|
||||
args1(14).Name = "SearchItem.ChangedChars"
|
||||
args1(14).Value = 2
|
||||
args1(15).Name = "SearchItem.DeletedChars"
|
||||
args1(15).Value = 2
|
||||
args1(16).Name = "SearchItem.InsertedChars"
|
||||
args1(16).Value = 2
|
||||
args1(17).Name = "SearchItem.TransliterateFlags"
|
||||
args1(17).Value = 1280
|
||||
args1(18).Name = "SearchItem.Command"
|
||||
args1(18).Value = 3
|
||||
args1(19).Name = "SearchItem.SearchFormatted"
|
||||
args1(19).Value = false
|
||||
args1(20).Name = "SearchItem.AlgorithmType2"
|
||||
args1(20).Value = 1
|
||||
args1(21).Name = "Quiet"
|
||||
args1(21).Value = true
|
||||
dispatcher.executeDispatch(document, ".uno:ExecuteSearch", "", 0, args1())
|
||||
end sub
|
||||
|
||||
Function getIndex(array As variant, value As variant) As Integer
|
||||
Dim id As Integer
|
||||
Dim nRight As Integer
|
||||
|
@ -888,4 +1304,26 @@ Sub subShellSort(mArray)
|
|||
h = h \ 3
|
||||
Loop
|
||||
End Sub
|
||||
|
||||
sub setZoomToSpeedUpTasks
|
||||
dim document as object
|
||||
dim dispatcher as object
|
||||
dim args1(2) as new com.sun.star.beans.PropertyValue
|
||||
dim args2(1) as new com.sun.star.beans.PropertyValue
|
||||
|
||||
document = ThisComponent.CurrentController.Frame
|
||||
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
|
||||
args1(0).Name = "Zoom.Value"
|
||||
args1(0).Value = 60
|
||||
args1(1).Name = "Zoom.ValueSet"
|
||||
args1(1).Value = 28703
|
||||
args1(2).Name = "Zoom.Type"
|
||||
args1(2).Value = 0
|
||||
dispatcher.executeDispatch(document, ".uno:Zoom", "", 0, args1())
|
||||
args2(0).Name = "ViewLayout.Columns"
|
||||
args2(0).Value = 1
|
||||
args2(1).Name = "ViewLayout.BookMode"
|
||||
args2(1).Value = false
|
||||
dispatcher.executeDispatch(document, ".uno:ViewLayout", "", 0, args2())
|
||||
end sub
|
||||
</script:module>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Books" script:language="StarBasic" script:moduleType="normal">Sub markBooks6
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Books" script:language="StarBasic" script:moduleType="normal">Sub markBooks7
|
||||
End Sub
|
||||
|
||||
Sub setUniqPageStyles
|
||||
|
@ -362,7 +362,7 @@ Sub setUniqPageStylesDEPRECATED
|
|||
End Sub
|
||||
|
||||
|
||||
Function hasPageStyleWith(pageStyleName)
|
||||
Function hasPageStyleWith(pageStyleName As String) As Boolean
|
||||
Dim enum1 As Object
|
||||
Dim enum1Element As Object
|
||||
Dim curPage As String
|
||||
|
@ -387,7 +387,7 @@ Function hasPageStyleWith(pageStyleName)
|
|||
hasPageStyleWith = false
|
||||
End Function
|
||||
|
||||
Function findFirstPageNumberWithStyle(pageStyleName)
|
||||
Function findFirstPageNumberWithStyle(pageStyleName As String) As Integer
|
||||
Dim enum1 As Object
|
||||
Dim enum1Element As Object
|
||||
Dim curPage As String
|
||||
|
@ -396,6 +396,7 @@ Function findFirstPageNumberWithStyle(pageStyleName)
|
|||
Dim oViewCursor As Object
|
||||
Dim anchor As Object
|
||||
Dim oSavePosition As Object
|
||||
Dim curPageStyleName As String
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oSavePosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
enum1 = ThisComponent.Text.createEnumeration()
|
||||
|
|
|
@ -221,7 +221,6 @@ Sub runEndnotesConversionDialog(foundEndNotes As Variant)
|
|||
dialog.getControl("description").SetText(getTranslation("EndnotesNativeDialogDescriptionSelect"))
|
||||
dialog.getControl("cancel").Label = getTranslation("buttonCancel")
|
||||
dialog.getControl("start").Label = getTranslation("buttonOk")
|
||||
Thiscomponent.CurrentController.select(ThisComponent.Text)
|
||||
dialog.setvisible(true)
|
||||
Do While waitingForDialog
|
||||
If dialog.getControl("cancel").model.state = 1 then
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Footnotes" script:language="StarBasic" script:moduleType="normal">sub footMark7
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Footnotes" script:language="StarBasic" script:moduleType="normal">sub footMark8
|
||||
End Sub
|
||||
|
||||
Sub openFootNotesDialog
|
||||
|
@ -284,4 +284,27 @@ Private Sub doNotTrack
|
|||
args1(0).Value = true
|
||||
dispatcher.executeDispatch(document, ".uno:ShowTrackedChanges", "", 0, args1())
|
||||
End Sub
|
||||
|
||||
Sub FixFootnotes()
|
||||
Dim description As String
|
||||
Dim allNotes As Object
|
||||
Dim aNote As Object
|
||||
Dim oViewCursor As Object
|
||||
turnOffTracking
|
||||
AcceptAllTrackedChanges
|
||||
oViewCursor = ThisComponent.currentController.getViewCursor()
|
||||
'Globalscope.BasicLibraries.LoadLibrary( "MRILib" )
|
||||
allNotes = ThisComponent.FootNotes
|
||||
For x = 0 to allNotes.Count -1
|
||||
aNote = allNotes.getByIndex(x)
|
||||
anchor = aNote.anchor
|
||||
oViewCursor.goToRange(anchor,false)
|
||||
oViewCursor.collapseToStart()
|
||||
oViewCursor.goToRange(anchor,true)
|
||||
unoCut()
|
||||
oViewCursor.goLeft(1,false)
|
||||
unoPaste()
|
||||
Next
|
||||
|
||||
End Sub
|
||||
</script:module>
|
|
@ -15,6 +15,7 @@ Private Sub convertHyphInDoc()
|
|||
statusIndicator = ThisComponent.getCurrentController.StatusIndicator
|
||||
statusIndicator.Start(getTranslation("hyphenationsInProgress"),10)
|
||||
turnOffTracking
|
||||
setZoomToSpeedUpTasks()
|
||||
AcceptAllTrackedChanges
|
||||
convertHyphInText(ThisComponent.Text)
|
||||
' Globalscope.BasicLibraries.LoadLibrary( "MRILib" )
|
||||
|
@ -434,7 +435,5 @@ Private Function confirm(description)
|
|||
|
||||
End Function
|
||||
|
||||
Sub Macro1
|
||||
|
||||
End Sub
|
||||
</script:module>
|
|
@ -263,7 +263,7 @@ Sub getFNAreaStart
|
|||
End Sub
|
||||
|
||||
|
||||
Function changeCharWidth(delta) As Boolean
|
||||
Function changeCharWidth(delta As Integer) As Boolean
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim charScale As Integer
|
||||
|
@ -277,7 +277,7 @@ Function changeCharWidth(delta) As Boolean
|
|||
oViewCursor.charScaleWidth = charScale + delta
|
||||
End Function
|
||||
|
||||
Function changeKern(delta) As Boolean
|
||||
Function changeKern(delta As Integer) As Boolean
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim kerning As Integer
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="PageStyles" script:language="StarBasic" script:moduleType="normal"> Dim pDialog As Object
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="PageStyles" script:language="StarBasic" script:moduleType="normal">
|
||||
Dim pDialog As Object
|
||||
Sub pageStylesDialog
|
||||
|
||||
Dim listBox As Object
|
||||
|
@ -356,8 +357,8 @@ Function covertMMtoLong(dimension As String) As Long
|
|||
convertMMtoLong = -1
|
||||
Exit Function
|
||||
EndIf
|
||||
dimension = customReplace(dimension, ",", ".")
|
||||
If Not IsNumeric(dimension) Then
|
||||
dimension = customReplace(dimension, ".", ",")
|
||||
If Not IsNumeric( dimension ) Then
|
||||
convertMMtoLong = -1
|
||||
Exit Function
|
||||
EndIf
|
||||
|
|
|
@ -18,6 +18,7 @@ Sub makeLinksWithLevel(level)
|
|||
Dim outline() As Object
|
||||
Dim oAnchor1Name As String
|
||||
Dim oAnchor2Name As String
|
||||
Dim message As String
|
||||
Dim i As Integer
|
||||
heading = getHeadingWithLevel(level)
|
||||
outline = getOutlineWithLevel(level)
|
||||
|
@ -31,7 +32,10 @@ Sub makeLinksWithLevel(level)
|
|||
createLink(outline(i),"",oAnchor2Name)
|
||||
Next i
|
||||
Else
|
||||
MsgBox getTranslation("TOCErrorContentsNotMatchHeadings1") & " " & level & " (" & (Ubound(outline)+1) & getTranslation("TOCErrorContentsNotMatchHeadings2") & " " & level & " " & getTranslation("TOCErrorContentsNotMatchHeadings3") & (Ubound(heading)+1) & ")"
|
||||
message = getTranslation("TOCErrorContentsNotMatchHeadings1") & " " & level & " (" & (Ubound(outline)+1) &") " & _
|
||||
getTranslation("TOCErrorContentsNotMatchHeadings2") & " " & level & " " & _
|
||||
getTranslation("TOCErrorContentsNotMatchHeadings3") & " (" & (Ubound(heading)+1) & ")"
|
||||
showTOCLinksDialog(message, heading(), outline() )
|
||||
EndIf
|
||||
ElseIf Ubound(outline) = -1 Then
|
||||
' MsgBox (getTranslation("TOCErrorNoContents1") & " " & level & " " & getTranslation("TOCErrorNoContents2"))
|
||||
|
@ -131,6 +135,95 @@ Function getOutlineWithLevel(curNum)
|
|||
getOutlineWithLevel = par()
|
||||
End Function
|
||||
|
||||
|
||||
Sub showTOCLinksDialog(message As String, heading() As Object, outline() As Object)
|
||||
Dim pDialog As Object
|
||||
Dim grid As Object
|
||||
Dim headingsColumn As Object
|
||||
Dim tocColumn As Object
|
||||
Dim oGridControl As Object
|
||||
Dim oColumnModel As Object
|
||||
Dim oDataModel As Object
|
||||
Dim rect As Object
|
||||
Dim i As Integer
|
||||
Dim j As Integer
|
||||
Dim outlineCell As String
|
||||
Dim headingCell As String
|
||||
DialogLibraries.LoadLibrary("ePublishing")
|
||||
pDialog = CreateUnoDialog( DialogLibraries.ePublishing.toc_links )
|
||||
|
||||
'grid = pDialog.getControl("grid")
|
||||
grid = pDialog.Model.createInstance("com.sun.star.awt.grid.UnoControlGridModel")
|
||||
grid.Name = "tocGrid"
|
||||
grid.ShowColumnHeader = True
|
||||
grid.ShowRowHeader = True
|
||||
grid.VScroll = true
|
||||
grid.Sizeable = true
|
||||
grid.Step = 0
|
||||
|
||||
oColumnModel = createUnoService( "com.sun.star.awt.grid.DefaultGridColumnModel")
|
||||
|
||||
tocColumn = createUnoService( "com.sun.star.awt.grid.GridColumn")
|
||||
tocColumn.Title = getTranslation("tocItemText")
|
||||
tocColumn.ColumnWidth = 100
|
||||
tocColumn.Resizeable = true
|
||||
'tocColumn.Flexibility = true
|
||||
|
||||
oColumnModel.addColumn( tocColumn )
|
||||
|
||||
headingsColumn = createUnoService( "com.sun.star.awt.grid.GridColumn")
|
||||
headingsColumn.Title = getTranslation("headingItemText")
|
||||
headingsColumn.ColumnWidth = 100
|
||||
headingsColumn.Resizeable = true
|
||||
'headingsColumn.Flexibility = true
|
||||
|
||||
oColumnModel.addColumn( headingsColumn )
|
||||
|
||||
grid.ColumnModel = oColumnModel
|
||||
'grid.Sizeable = False
|
||||
'gridStep = 0
|
||||
|
||||
oDataModel = createUnoService( "com.sun.star.awt.grid.DefaultGridDataModel")
|
||||
If Ubound(outline) > Ubound(heading) Then
|
||||
For i = 0 To (Ubound(outline))
|
||||
outlineCell = outline(i).getString()
|
||||
j = i MOD (Ubound(heading) + 1)
|
||||
headingCell = heading(j).getString()
|
||||
oDataModel.addRow ( i+1 , Array(outlineCell, headingCell) )
|
||||
Next
|
||||
Else
|
||||
For i = 0 To (Ubound(heading))
|
||||
headingCell = heading(i).getString()
|
||||
If i > Ubound(outline) Then
|
||||
outlineCell = ""
|
||||
Else
|
||||
outlineCell = outline(i).getString()
|
||||
EndIf
|
||||
oDataModel.addRow ( i+1 , Array(outlineCell, headingCell) )
|
||||
Next i
|
||||
EndIf
|
||||
grid.GridDataModel = oDataModel
|
||||
|
||||
oGridControl = createUnoService("com.sun.star.awt.grid.UnoControlGrid")
|
||||
oGridControl.setModel(grid)
|
||||
pDialog.addControl("gridtab", oGridControl)
|
||||
rect = pDialog.getPosSize()
|
||||
oGridControl.setPosSize(10,60,rect.Width - 20,rect.Height - 120, com.sun.star.awt.PosSize.POSSIZE)
|
||||
|
||||
|
||||
|
||||
|
||||
pDialog.getControl("Ok").Label = getTranslation("buttonOk")
|
||||
pDialog.getControl("message").SetText(message)
|
||||
pDialog.Title = getTranslation("tocDialogLabel")
|
||||
pDialog.Execute()
|
||||
pDialog.dispose()
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Sub addToArray(xArray(),vNextElement)
|
||||
Dim iUB As Integer
|
||||
Dim iLB As Integer
|
||||
|
|
|
@ -29,7 +29,7 @@ End Function
|
|||
Function getRussian(identifier As String) As String
|
||||
Select Case identifier
|
||||
Case "buttonOk"
|
||||
getRussian = "Применить"
|
||||
getRussian = "OK"
|
||||
Exit Function
|
||||
Case "buttonCancel"
|
||||
getRussian = "Отмена"
|
||||
|
@ -140,10 +140,10 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Число параграфов со стилем Оглавление "
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings2"
|
||||
getRussian = ") не кратно числу Заголовоков"
|
||||
getRussian = " не кратно числу Заголовоков"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings3"
|
||||
getRussian = "уровня ("
|
||||
getRussian = "уровня "
|
||||
Exit Function
|
||||
Case "complileJournalIssueConfirmation"
|
||||
getRussian = "Вы уверены, что хотите запустить сборку выпуска ?"
|
||||
|
@ -295,6 +295,15 @@ Function getRussian(identifier As String) As String
|
|||
Case "EndnotesConversionTwoOptions"
|
||||
getRussian = "Найдены и стандартные и ручные концевые сноски. Можно сконвертировать стандартные в ручные (установите курсор в нужном параграфе) или ручные в стандартные"
|
||||
Exit Function
|
||||
Case "tocDialogLabel"
|
||||
getRussian = "Ошибка"
|
||||
Exit Function
|
||||
Case "tocItemText"
|
||||
getRussian = "Текст оглавления"
|
||||
Exit Function
|
||||
Case "headingItemText"
|
||||
getRussian = "Текст заголовка"
|
||||
Exit Function
|
||||
Case Else
|
||||
getRussian = "Перевод не найден"
|
||||
End Select
|
||||
|
@ -415,10 +424,10 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "Number of paras with style Contents "
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings2"
|
||||
getEnglish = ") dosn't match number of headings with "
|
||||
getEnglish = " dosn't match number of headings with "
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings3"
|
||||
getEnglish = "level ("
|
||||
getEnglish = "level "
|
||||
Exit Function
|
||||
Case "complileJournalIssueConfirmation"
|
||||
getEnglish = "Compile journal issue from articles?"
|
||||
|
@ -570,6 +579,15 @@ Function getEnglish(identifier As String) As String
|
|||
Case "EndnotesConversionTwoOptions"
|
||||
getEnglish = "Both standard and manual endnotes are found. You can convert standard to manual (place the cursor in the desired paragraph) or manual to standard"
|
||||
Exit Function
|
||||
Case "tocDialogLabel"
|
||||
getEnglish = "Error"
|
||||
Exit Function
|
||||
Case "tocItemText"
|
||||
getEnglish = "Contents item text"
|
||||
Exit Function
|
||||
Case "headingItemText"
|
||||
getEnglish = "Heading text"
|
||||
Exit Function
|
||||
Case Else
|
||||
getEnglish = "No translation"
|
||||
End Select
|
||||
|
@ -689,10 +707,10 @@ Function getFrench(identifier As String) As String
|
|||
getFrench = "Nombre de paragraphes avec style Table des matières."
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings2"
|
||||
getFrench = ") n'est pas un multiple du nombre de titres"
|
||||
getFrench = " n'est pas un multiple du nombre de titres"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings3"
|
||||
getFrench = "au niveau ("
|
||||
getFrench = "au niveau "
|
||||
Exit Function
|
||||
Case "complileJournalIssueConfirmation"
|
||||
getFrench = "Êtes-vous sûr de vouloir compiler un journal à partir d'articles ?"
|
||||
|
@ -844,6 +862,15 @@ Function getFrench(identifier As String) As String
|
|||
Case "EndnotesConversionTwoOptions"
|
||||
getFrench = "Des notes de fin standard et manuelles sont trouvées. Vous pouvez convertir standard en manuel (placez le curseur dans le paragraphe souhaité) ou manuel en standard"
|
||||
Exit Function
|
||||
Case "tocDialogLabel"
|
||||
getFrench = "Erreur"
|
||||
Exit Function
|
||||
Case "tocItemText"
|
||||
getFrench = "Texte de l'élément de contenu"
|
||||
Exit Function
|
||||
Case "headingItemText"
|
||||
getFrench = "Texte d'en-tête"
|
||||
Exit Function
|
||||
Case Else
|
||||
getFrench = "No translation"
|
||||
End Select
|
||||
|
@ -963,10 +990,10 @@ Function getCroatian(identifier As String) As String
|
|||
getCroatian = "Broj paragrafa sa stilom Sadržaj"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings2"
|
||||
getCroatian = ") nije višestruko od broja Zaglavlja"
|
||||
getCroatian = " nije višestruko od broja Zaglavlja"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings3"
|
||||
getCroatian = "Nivoa ("
|
||||
getCroatian = "Nivoa "
|
||||
Exit Function
|
||||
Case "complileJournalIssueConfirmation"
|
||||
getCroatian = "Da li ste sigurni da želite da pokrenete gradnju izdanja ?"
|
||||
|
@ -1118,6 +1145,15 @@ Function getCroatian(identifier As String) As String
|
|||
Case "EndnotesConversionTwoOptions"
|
||||
getCroatian = "Pronađene su i standardne i ručne bilješke. Možete pretvoriti standardni u ručni (postavite kursor u željeni odlomak) ili ručni u standardni"
|
||||
Exit Function
|
||||
Case "tocDialogLabel"
|
||||
getCroatian = "Pogreška"
|
||||
Exit Function
|
||||
Case "tocItemText"
|
||||
getCroatian = "Sadržaj teksta stavke"
|
||||
Exit Function
|
||||
Case "headingItemText"
|
||||
getCroatian = "Tekst zaglavlja"
|
||||
Exit Function
|
||||
Case Else
|
||||
getCroatian = "No translation"
|
||||
End Select
|
||||
|
@ -1237,10 +1273,10 @@ Function getSerbian(identifier As String) As String
|
|||
getSerbian = "Број параграфа са стилом Садржај"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings2"
|
||||
getSerbian = ") није вишеструко од броја Заглавља"
|
||||
getSerbian = " није вишеструко од броја Заглавља"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings3"
|
||||
getSerbian = "Нивоа ("
|
||||
getSerbian = "Нивоа "
|
||||
Exit Function
|
||||
Case "complileJournalIssueConfirmation"
|
||||
getSerbian = "Да ли сте сигурни да желите да покренете градњу издања ?"
|
||||
|
@ -1392,6 +1428,15 @@ Function getSerbian(identifier As String) As String
|
|||
Case "EndnotesConversionTwoOptions"
|
||||
getSerbian = "Пронађене су и стандардне и ручне белешке. Можете претворити стандардни у ручни (поставите курсор у жељени одломак) или ручни у стандардни"
|
||||
Exit Function
|
||||
Case "tocDialogLabel"
|
||||
getSerbian = "Грешка"
|
||||
Exit Function
|
||||
Case "tocItemText"
|
||||
getSerbian = "Садржај текста ставке"
|
||||
Exit Function
|
||||
Case "headingItemText"
|
||||
getSerbian = "Текст заглавља"
|
||||
Exit Function
|
||||
Case Else
|
||||
getSerbian = "No translation"
|
||||
End Select
|
||||
|
@ -1511,10 +1556,10 @@ Function getBosnian(identifier As String) As String
|
|||
getBosnian = "Broj paragrafa sa stilom Sadržaj"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings2"
|
||||
getBosnian = ") nije višestruko od broja Zaglavlja"
|
||||
getBosnian = " nije višestruko od broja Zaglavlja"
|
||||
Exit Function
|
||||
Case "TOCErrorContentsNotMatchHeadings3"
|
||||
getBosnian = "Nivoa ("
|
||||
getBosnian = "Nivoa "
|
||||
Exit Function
|
||||
Case "complileJournalIssueConfirmation"
|
||||
getBosnian = "Da li ste sigurni da želite da pokrenete gradnju izdanja ?"
|
||||
|
@ -1666,6 +1711,15 @@ Function getBosnian(identifier As String) As String
|
|||
Case "EndnotesConversionTwoOptions"
|
||||
getBosnian = "Pronađene su i standardne i ručne bilješke. Možete pretvoriti standardni u ručni (postavite kursor u željeni odlomak) ili ručni u standardni"
|
||||
Exit Function
|
||||
Case "tocDialogLabel"
|
||||
getBosnian = "Greška"
|
||||
Exit Function
|
||||
Case "tocItemText"
|
||||
getBosnian = "Sadržaj teksta stavke"
|
||||
Exit Function
|
||||
Case "headingItemText"
|
||||
getBosnian = "Tekst zaglavlja"
|
||||
Exit Function
|
||||
Case Else
|
||||
getBosnian = "No translation"
|
||||
End Select
|
||||
|
|
|
@ -5,4 +5,5 @@
|
|||
<library:element library:name="replaceParaStyle"/>
|
||||
<library:element library:name="PageConfig"/>
|
||||
<library:element library:name="EndnotesConversion"/>
|
||||
<library:element library:name="toc_links"/>
|
||||
</library:library>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="journals" script:language="StarBasic">Private sub journalsMark31
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="journals" script:language="StarBasic">Private sub journalsMark36
|
||||
End sub
|
||||
|
||||
Dim templateName As String
|
||||
|
@ -29,6 +29,7 @@ Private Sub makeUpIssue
|
|||
If NOT confirm(description) Then
|
||||
Exit Sub
|
||||
EndIf
|
||||
setZoomToSpeedUpTasks()
|
||||
|
||||
EIFN = "ЭиФН"
|
||||
PHA = "ФА"
|
||||
|
@ -662,7 +663,11 @@ Private Sub setArticleUniqPageStyles(i)
|
|||
'Iterate article page number
|
||||
articlePageNum = articlePageNum + 1
|
||||
'GO TO NEXT PAGE
|
||||
oViewCursor.jumpToNextPage()
|
||||
If Not oViewCursor.jumpToNextPage() Then
|
||||
MsgBox "setArticleUniqPageStyles failed"
|
||||
End
|
||||
|
||||
EndIf
|
||||
curPageStyleName = getNextPageStyleName()
|
||||
Loop
|
||||
|
||||
|
@ -1131,248 +1136,278 @@ sub backspace
|
|||
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
|
||||
dispatcher.executeDispatch(document, ".uno:SwBackspace", "", 0, Array())
|
||||
end Sub
|
||||
Sub shrinkPageContent
|
||||
Dim oViewCursor As Object 'View cursor
|
||||
Dim oTextCursor As Object 'Text cursor
|
||||
Dim oViewCurInitPosition As Object
|
||||
Dim oSaveEndSelection 'Text cursor
|
||||
Dim oEnum 'Cursor enumeration
|
||||
Dim oPar 'Current paragraph
|
||||
Dim sTextContent$ 'Service name for text content.
|
||||
Dim scaleWidthShrinkValue As Integer
|
||||
Dim scaleCharHeight As Integer
|
||||
Dim scaleIntervalHeight As Integer
|
||||
Dim kernShrinkValue As Integer
|
||||
Dim startOfPara As Boolean
|
||||
'saveCurrentVersion
|
||||
kernShrinkValue = 8
|
||||
scaleWidthShrinkValue = 7
|
||||
scaleCharHeight = 2
|
||||
scaleIntervalHeight = 3
|
||||
sTextContent = "com.sun.star.text.TextContent"
|
||||
|
||||
Sub configureCursorPositionForContentShrink()
|
||||
' Globalscope.BasicLibraries.LoadLibrary("MRILib")
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim curSelection As Object
|
||||
Dim selectionTextRange As Object
|
||||
Dim nextChar As String
|
||||
Dim prefChar As String
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCurInitPosition = oViewcursor.Text.createTextCursorByRange(oViewCursor)
|
||||
'Check if we are at start of paragraph go to the end of previous paragraph
|
||||
If oViewCursor.Text.createTextCursorByRange(oViewCursor).isStartOfParagraph() Then
|
||||
oViewCursor.goLeft(1,false)
|
||||
If Len(oViewCursor.String) <> 1 Then
|
||||
oViewCursor.goRight(1,false)
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
'Move right to select left and right characters and save position to the right
|
||||
oViewCursor.goRight(1,false)
|
||||
oSaveEndSelection = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
'Select last 2 characters
|
||||
oViewCursor.goLeft(2,true)
|
||||
If Len(oViewCursor.String) = 2 Then
|
||||
oLastChars = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
'Insert hyphen if needed
|
||||
insertHyphen(oLastChars,oViewCursor)
|
||||
End If
|
||||
'Return to initial position
|
||||
oViewCursor.gotoRange(oSaveEndSelection,false) 'Go to end of text to check page changes
|
||||
oViewCursor.goLeft(1,false)
|
||||
'Set saved position to initial state
|
||||
oSaveEndSelection = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
|
||||
|
||||
oViewCursor.jumpToPreviousPage()
|
||||
oViewCursor.jumpToStartOfPage()
|
||||
fixViewCursor()
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
'If one of textRanges is Footnote or Endnote we can't select them so it is better to exit now
|
||||
If oTextCursor.Text.supportsService("com.sun.star.text.Endnote") OR oTextCursor.Text.supportsService("com.sun.star.text.Footnote") Or oTextCursor.Text.supportsService("com.sun.star.text.CellProperties") Then
|
||||
shrinkPageContent = false
|
||||
oViewCursor.gotoRange(oViewCurInitPosition,false)
|
||||
Exit Sub
|
||||
EndIf
|
||||
If oSaveEndSelection.Text.supportsService("com.sun.star.text.Endnote") OR oSaveEndSelection.Text.supportsService("com.sun.star.text.Footnote") Or oTextCursor.Text.supportsService("com.sun.star.text.CellProperties") Then
|
||||
shrinkPageContent = false
|
||||
oViewCursor.gotoRange(oViewCurInitPosition,false)
|
||||
Exit Sub
|
||||
EndIf
|
||||
oTextCursor.gotoRange(oSaveEndSelection,true)
|
||||
oViewCursor.gotoRange(oSaveEndSelection,false) 'Go to end of text to check page changes
|
||||
|
||||
If shrinkIntervalHeight(oTextCursor,oViewCursor,scaleIntervalHeight) Then
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
If oTextCursor.isEndOfParagraph() Then
|
||||
pos1 = oViewCursor.getPage()
|
||||
oViewCursor.goRight(1,false)
|
||||
pos2 = oViewCursor.getPage()
|
||||
'If we moved right to the next para and page haven't changed insert pageBreak
|
||||
If pos1 = pos2 Then
|
||||
insertPageBreak
|
||||
End If
|
||||
Else
|
||||
insertPageBreak
|
||||
If Not IsNull(oTextCursor.ParaFirstLineIndent) Then
|
||||
oTextCursor.ParaFirstLineIndent = 0
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Exit Sub
|
||||
End If
|
||||
If shrinkCharHeight(oTextCursor,oViewCursor,scaleCharHeight) Then
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
If oTextCursor.isEndOfParagraph() Then
|
||||
pos1 = oViewCursor.getPage()
|
||||
oViewCursor.goRight(1,false)
|
||||
pos2 = oViewCursor.getPage()
|
||||
'If we moved right to the next para and page haven't changed insert pageBreak
|
||||
If pos1 = pos2 Then
|
||||
insertPageBreak
|
||||
End If
|
||||
Else
|
||||
insertPageBreak
|
||||
If Not IsNull(oTextCursor.ParaFirstLineIndent) Then
|
||||
oTextCursor.ParaFirstLineIndent = 0
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Exit Sub
|
||||
End If
|
||||
If shrinkKern(oTextCursor,oViewCursor,kernShrinkValue) Then
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
If oTextCursor.isEndOfParagraph() Then
|
||||
pos1 = oViewCursor.getPage()
|
||||
oViewCursor.goRight(1,false)
|
||||
pos2 = oViewCursor.getPage()
|
||||
'If we moved right to the next para and page haven't changed insert pageBreak
|
||||
If pos1 = pos2 Then
|
||||
insertPageBreak
|
||||
End If
|
||||
Else
|
||||
insertPageBreak
|
||||
If Not IsNull(oTextCursor.ParaFirstLineIndent) Then
|
||||
oTextCursor.ParaFirstLineIndent = 0
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
|
||||
'At start of Para
|
||||
oTextCursor.collapseToEnd()
|
||||
If oTextCursor.isStartOfParagraph() AND NOT oTextCursor.isEndOfParagraph() Then
|
||||
oTextCursor.goLeft(1,false)
|
||||
EndIf
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
End Sub
|
||||
|
||||
Sub splitPages
|
||||
Dim oViewCursor As Object 'View cursor
|
||||
Dim oText 'Text object in current document
|
||||
Dim oSaveEndSelection 'Text cursor
|
||||
'saveCurrentVersion
|
||||
Sub fixViewCursor()
|
||||
Dim oViewCursor As Object
|
||||
Dim curSelection As Object
|
||||
Dim selectionTextRange As Object
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
Dim saveFirstLineIndent As Boolean
|
||||
|
||||
'Check if we are at start of paragraph go to the end of previous paragraph
|
||||
If oViewCursor.Text.createTextCursorByRange(oViewCursor).isEndOfParagraph() Then
|
||||
oViewCursor.goRight(1,false)
|
||||
End If
|
||||
If oViewCursor.Text.createTextCursorByRange(oViewCursor).isStartOfParagraph() Then
|
||||
saveFirstLineIndent = true
|
||||
Else
|
||||
saveFirstLineIndent = false
|
||||
End If
|
||||
|
||||
oViewCursor.goRight(1,false)
|
||||
oSaveEndSelection = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
'Select last 2 characters
|
||||
oViewCursor.goLeft(2,true)
|
||||
|
||||
If Len(oViewCursor.String) = 2 Then
|
||||
'Insert hyphen if needed
|
||||
oLastChars = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
insertHyphen(oLastChars,oViewCursor)
|
||||
End If
|
||||
'Return to initial position
|
||||
oViewCursor.gotoRange(oSaveEndSelection,false) 'Go to end of text to check page changes
|
||||
oViewCursor.goLeft(1,false)
|
||||
insertPageBreak
|
||||
If Not saveFirstLineIndent Then
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
If Not IsNull(oTextCursor.ParaFirstLineIndent) Then
|
||||
oTextCursor.ParaFirstLineIndent = 0
|
||||
End If
|
||||
End If
|
||||
curSelection = ThisComponent.getCurrentSelection()
|
||||
If Not curSelection.supportsService("com.sun.star.text.TextRanges") Then
|
||||
selectionTextRange = curSelection.Anchor
|
||||
oViewCursor.JumpToFirstPage(false)
|
||||
oViewCursor.goToRange(selectionTextRange,false)
|
||||
EndIf
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Function shrinkScaleWidth(oTextCursor,oViewCursor,iterations) As Boolean
|
||||
Dim oParEnum 'paragraph enumeration
|
||||
Dim oPar 'current paragraph
|
||||
Dim oSecEnum 'sections enumeration
|
||||
Dim oParSection 'paragraph text section
|
||||
Dim pageNum As Integer
|
||||
pageNum = oViewCursor.getPage()
|
||||
For i = 1 To iterations Step 1
|
||||
oParEnum = oTextCursor.createEnumeration()
|
||||
Do While oParEnum.hasMoreElements()
|
||||
oPar = oParEnum.nextElement()
|
||||
If oPar.supportsService("com.sun.star.text.Paragraph") Then
|
||||
oPar.charScaleWidth = 100 - i
|
||||
If pageNum <> oViewCursor.getPage() Then
|
||||
shrinkScaleWidth = true
|
||||
Exit Function
|
||||
End If
|
||||
End If
|
||||
Loop
|
||||
Next i
|
||||
shrinkScaleWidth = false
|
||||
Function isContentPageChanged(initPosition As Object,initPageNum As String) As Boolean
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
isShrinkPageSucceded = false
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCursor.goToRange(initPosition,false)
|
||||
If (oViewCursor.getPage <> initPageNum) Then
|
||||
isContentPageChanged = true
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Function shrinkKern(oTextCursor,oViewCursor,iterations) As Boolean
|
||||
Dim oParEnum 'paragraph enumeration
|
||||
Dim oPar 'current paragraph
|
||||
Dim oSecEnum 'sections enumeration
|
||||
Dim oParSection 'paragraph text section
|
||||
Dim pageNum As Integer
|
||||
pageNum = oViewCursor.getPage()
|
||||
For i = 2 To iterations Step 2
|
||||
oParEnum = oTextCursor.createEnumeration()
|
||||
Do While oParEnum.hasMoreElements()
|
||||
oPar = oParEnum.nextElement()
|
||||
If oPar.supportsService("com.sun.star.text.Paragraph") Then
|
||||
oPar.CharKerning = 0 - i
|
||||
If pageNum <> oViewCursor.getPage() Then
|
||||
shrinkKern = true
|
||||
Exit Function
|
||||
End If
|
||||
End If
|
||||
Loop
|
||||
Next i
|
||||
shrinkKern = false
|
||||
Function breakParaAtCursor() As Object
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim leftMargin As Long
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oTextCursor = oViewcursor.Text.createTextCursorByRange(oViewCursor)
|
||||
If NOT oTextCursor.isEndOfParagraph() Then
|
||||
oTextCursor.goLeft(1,false)
|
||||
oTextCursor.goRight(2,true)
|
||||
insertHyphen(oTextCursor)
|
||||
oTextCursor.goLeft(1,false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
leftMargin = oViewCursor.ParaLeftMargin
|
||||
insertPara
|
||||
oViewCursor.ParaFirstLineIndent = leftMargin
|
||||
oTextCursor.goLeft(1,false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
breakParaAtCursor = oViewcursor.Text.createTextCursorByRange(oViewCursor)
|
||||
Else
|
||||
'oTextCursor.goRight(1,false)
|
||||
'oViewCursor.goToRange(oTextCursor,false)
|
||||
'oViewCursor.BreakType = com.sun.star.style.BreakType.PAGE_BEFORE
|
||||
'oTextCursor.goLeft(1,false)
|
||||
'oViewCursor.goToRange(oTextCursor,false)
|
||||
breakParaAtCursor = oViewcursor.Text.createTextCursorByRange(oViewCursor)
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Function shrinkCharHeight(oTextCursor,oViewCursor,iterations) As Boolean
|
||||
Dim oParEnum 'paragraph enumeration
|
||||
Dim oPar 'current paragraph
|
||||
Dim oSecEnum 'sections enumeration
|
||||
Dim oParSection 'paragraph text section
|
||||
Dim pageNum As Integer
|
||||
pageNum = oViewCursor.getPage()
|
||||
For i = 1 To iterations Step 1
|
||||
oParEnum = oTextCursor.createEnumeration()
|
||||
Do While oParEnum.hasMoreElements()
|
||||
oPar = oParEnum.nextElement()
|
||||
If oPar.supportsService("com.sun.star.text.Paragraph") Then
|
||||
oPar.charHeight = roundHeight(oPar.charHeight) - 0.1
|
||||
If pageNum <> oViewCursor.getPage() Then
|
||||
shrinkCharHeight = true
|
||||
Exit Function
|
||||
End If
|
||||
End If
|
||||
Loop
|
||||
Next i
|
||||
shrinkCharHeight = false
|
||||
sub insertPara
|
||||
dim document as object
|
||||
dim dispatcher as object
|
||||
document = ThisComponent.CurrentController.Frame
|
||||
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
|
||||
dispatcher.executeDispatch(document, ".uno:InsertPara", "", 0, Array())
|
||||
end sub
|
||||
|
||||
Function canShrinkContent() As Boolean
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim oSavePosition As Object
|
||||
Dim oStartPosition As Object
|
||||
Dim initPageNum As Long
|
||||
Dim startPageNum As Long
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oSavePosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
canShrinkContent = true
|
||||
'In endntote footnote or table shrink is not possible
|
||||
If oViewCursor.Text.supportsService("com.sun.star.text.Endnote") OR _
|
||||
oViewCursor.Text.supportsService("com.sun.star.text.Footnote") OR _
|
||||
oViewCursor.Text.supportsService("com.sun.star.text.CellProperties") Then
|
||||
canShrinkContent = false
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
Exit Function
|
||||
EndIf
|
||||
initPageNum = oViewcursor.getPage()
|
||||
oViewCursor.JumpToPreviousPage(false)
|
||||
oViewCursor.jumpToStartOfPage()
|
||||
startPageNum = oViewcursor.getPage()
|
||||
'No previous page exists
|
||||
If startPageNum = initPageNum Then
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
canShrinkContent = false
|
||||
Exit Function
|
||||
EndIf
|
||||
'If current paragraph has page break before
|
||||
If oSavePosition.BreakType <> 0 Then
|
||||
oTextCursor = oSavePosition.Text.createTextCursorByRange(oSavePosition)
|
||||
oTextCursor.gotoStartOfParagraph(false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
If oViewCursor.getPage() = initPageNum Then
|
||||
canShrinkContent = false
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
Do While oViewcursor.getPage() = initPageNum
|
||||
oTextCursor.gotoPreviousParagraph(false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
If oTextCursor.BreakType <> 0 AND oViewcursor.getPage() = initPageNum Then
|
||||
canShrinkContent = false
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
Exit Function
|
||||
EndIf
|
||||
Loop
|
||||
oViewCursor.goToRange(oSavePosition,false)
|
||||
End Function
|
||||
|
||||
Function roundHeight(nHeight)
|
||||
|
||||
Function shrinkPageContent() As Boolean
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim initPosition As Object
|
||||
Dim initPageNum As String
|
||||
Dim oSaveEndSelection As Object
|
||||
Dim oEnum As Variant
|
||||
Dim oPar As Object
|
||||
Dim startOfPara As Boolean
|
||||
Dim targetContent() As Object
|
||||
Dim delta As Double
|
||||
Dim rounds As Integer
|
||||
delta = 0.1
|
||||
rounds = 3
|
||||
Dim roundsLineHeight As Integer
|
||||
roundsLineHeight = 3
|
||||
Dim i As Integer
|
||||
Dim j As Integer
|
||||
shrinkPageContent = false
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
|
||||
configureCursorPositionForContentShrink()
|
||||
If Not canShrinkContent() Then
|
||||
Exit Function
|
||||
EndIf
|
||||
initPageNum = oViewcursor.getPage()
|
||||
initPosition = breakParaAtCursor()
|
||||
oViewcursor.goToRange(initPosition,false)
|
||||
oViewCursor.JumpToPreviousPage(false)
|
||||
oViewCursor.jumpToStartOfPage()
|
||||
startPosition = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
targetContent = selectContentToShrink(initPosition,startPosition)
|
||||
For i = LBound(targetContent) To Ubound(targetContent)
|
||||
shrinkContentSpacing(targetContent(i))
|
||||
If isContentPageChanged(initPosition, initPageNum) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
Next i
|
||||
'TODO: Уменьшая отступы каждого параграфа от и до следующего
|
||||
' а также уменьшая кернинг, межстрочное расстояние и кегль
|
||||
For j = 0 To rounds
|
||||
For i = LBound(targetContent) To Ubound(targetContent)
|
||||
If (j > 0) Then
|
||||
decreaseContentCharHeight(targetContent(i), delta)
|
||||
EndIf
|
||||
If shrinkContentWithKerning(targetContent(i)) Then
|
||||
balanceContentTail(targetContent(i),false)
|
||||
EndIf
|
||||
If isContentPageChanged(initPosition, initPageNum) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
Next i
|
||||
Next j
|
||||
For j = 1 To roundsLineHeight
|
||||
For i = LBound(targetContent) To Ubound(targetContent)
|
||||
decreaseIntervalHeight(targetContent(i))
|
||||
If isContentPageChanged(initPosition, initPageNum) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
Next i
|
||||
Next j
|
||||
For j = 1 To roundsLineHeight
|
||||
For i = LBound(targetContent) To Ubound(targetContent)
|
||||
increaseIntervalHeight(targetContent(i))
|
||||
Next i
|
||||
Next j
|
||||
For i = LBound(targetContent) To Ubound(targetContent)
|
||||
increaseContentCharHeight(targetContent(i), delta * rounds )
|
||||
Next i
|
||||
|
||||
End Function
|
||||
|
||||
Function increaseIntervalHeight(oContent As Object) As Boolean
|
||||
increaseIntervalHeight = false
|
||||
Dim oParEnum As Object
|
||||
Dim oPar As Object
|
||||
Dim oSecEnum As Object
|
||||
Dim oParSection As Object
|
||||
Dim pageNum As Integer
|
||||
Dim lineSpacing As Object
|
||||
If Not IsMissing(oContent.ParaLineSpacing) Then
|
||||
lineSpacing = oContent.ParaLineSpacing
|
||||
If lineSpacing.Mode = 3 Then
|
||||
lineSpacing.Height = lineSpacing.Height / 0.98
|
||||
oContent.ParaLineSpacing = lineSpacing
|
||||
increaseIntervalHeight = true
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
Function decreaseIntervalHeight(oContent As Object) As Boolean
|
||||
decreaseIntervalHeight = false
|
||||
Dim oParEnum As Object
|
||||
Dim oPar As Object
|
||||
Dim oSecEnum As Object
|
||||
Dim oParSection As Object
|
||||
Dim pageNum As Integer
|
||||
Dim lineSpacing As Object
|
||||
If Not IsMissing(oContent.ParaLineSpacing) Then
|
||||
lineSpacing = oContent.ParaLineSpacing
|
||||
If lineSpacing.Mode = 3 Then
|
||||
lineSpacing.Height = lineSpacing.Height * 0.98
|
||||
oContent.ParaLineSpacing = lineSpacing
|
||||
decreaseIntervalHeight = true
|
||||
End If
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Sub decreaseContentCharHeight(oContent As Object, delta As double)
|
||||
Dim contentEnum As Object'paragraph enumeration
|
||||
Dim textContentElement As Object'current paragraph
|
||||
Dim curHeight As Double
|
||||
Dim oTextCursor As Object
|
||||
contentEnum = oContent.createEnumeration()
|
||||
Do While contentEnum.hasMoreElements()
|
||||
textContentElement = contentEnum.nextElement()
|
||||
oTextCursor = textContentElement.Text.createTextCursorByRange(textContentElement)
|
||||
curHeight = oTextCursor.charHeight
|
||||
oTextCursor.charHeight = roundHeight(curHeight) - delta
|
||||
Loop
|
||||
End Sub
|
||||
|
||||
Sub increaseContentCharHeight(oContent As Object, delta As double)
|
||||
Dim contentEnum As Object'paragraph enumeration
|
||||
Dim textContentElement As Object'current paragraph
|
||||
Dim curHeight As Double
|
||||
Dim oTextCursor As Object
|
||||
contentEnum = oContent.createEnumeration()
|
||||
Do While contentEnum.hasMoreElements()
|
||||
textContentElement = contentEnum.nextElement()
|
||||
oTextCursor = textContentElement.Text.createTextCursorByRange(textContentElement)
|
||||
curHeight = oTextCursor.charHeight
|
||||
oTextCursor.charHeight = roundHeight(curHeight) + delta
|
||||
Loop
|
||||
End Sub
|
||||
|
||||
Function roundHeight(nHeight) As Double
|
||||
Dim lHeight As Double
|
||||
Dim hHeight As Double
|
||||
lHeight = Int(nHeight)
|
||||
|
@ -1388,127 +1423,74 @@ Function roundHeight(nHeight)
|
|||
roundHeight=lHeight
|
||||
End Function
|
||||
|
||||
|
||||
Function shrinkIntervalHeight(oTextCursor,oViewCursor,iterations) As Boolean
|
||||
Dim oParEnum 'paragraph enumeration
|
||||
Dim oPar 'current paragraph
|
||||
Dim oSecEnum 'sections enumeration
|
||||
Dim oParSection 'paragraph text section
|
||||
Dim pageNum As Integer
|
||||
Dim lineSpacing
|
||||
pageNum = oViewCursor.getPage()
|
||||
For i = 1 To iterations Step 1
|
||||
oParEnum = oTextCursor.createEnumeration()
|
||||
Do While oParEnum.hasMoreElements()
|
||||
oPar = oParEnum.nextElement()
|
||||
If oPar.supportsService("com.sun.star.text.Paragraph") Then
|
||||
lineSpacing = oPar.ParaLineSpacing
|
||||
If lineSpacing.Mode = 3 Then
|
||||
lineSpacing.Height = lineSpacing.Height * 0.98
|
||||
oPar.ParaLineSpacing = lineSpacing
|
||||
End If
|
||||
If pageNum <> oViewCursor.getPage() Then
|
||||
shrinkIntervalHeight = true
|
||||
Exit Function
|
||||
End If
|
||||
End If
|
||||
Loop
|
||||
Next i
|
||||
shrinkIntervalHeight = false
|
||||
Function shrinkContentSpacing(oContent As Object) As Boolean
|
||||
' Globalscope.BasicLibraries.LoadLibrary( "MRILib" )
|
||||
shrinkContentSpacing = false
|
||||
If oContent.ParaTopMargin > MIN_SPACING_TO_SHRINK Then
|
||||
oContent.ParaTopMargin = 0
|
||||
EndIf
|
||||
If oContent.ParaBottomMargin > MIN_SPACING_TO_SHRINK Then
|
||||
oContent.ParaTopMargin = 0
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Sub savecursor
|
||||
Dim oViewCursor As Object 'View cursor
|
||||
Dim oTextCursor 'Text cursor
|
||||
Dim oSaveEndSelection 'Text cursor
|
||||
Dim oEnum 'Cursor enumeration
|
||||
Dim oText 'Text object in current document
|
||||
Dim oPar 'Current paragraph
|
||||
Dim sTextContent$ 'Service name for text content.
|
||||
sTextContent = "com.sun.star.text.TextContent"
|
||||
Function selectContentToShrink(initPosition As Object, startPosition As Object)
|
||||
Dim oViewCursor As Object
|
||||
Dim oTextCursor As Object
|
||||
Dim startPageNum As Long
|
||||
Dim prevPageNum As Long
|
||||
Dim savePosition As Object
|
||||
Dim foundPrevPara As Boolean
|
||||
Dim targetContent() As Variant
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oSaveEndSelection = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
REM oViewCursor.getText.insertString(oViewCursor.getStart(), CHR$(257), False)
|
||||
'If Not oViewCursor.jumpToPreviousPage() Then Exit Sub
|
||||
oViewCursor.jumpToPreviousPage()
|
||||
oViewCursor.jumpToStartOfPage()
|
||||
|
||||
'oViewCursor.goUp(10,true)
|
||||
'oViewCursor.getPage()
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
'oTextCursor.gotoStart(false)
|
||||
oTextCursor.gotoRange(oSaveEndSelection,true)
|
||||
|
||||
oParEnum = oTextCursor.createEnumeration()
|
||||
|
||||
Do While oParEnum.hasMoreElements()
|
||||
Dim oSubSection
|
||||
Dim oSecEnum
|
||||
|
||||
Do While oParEnum.hasMoreElements()
|
||||
oPar = oParEnum.nextElement()
|
||||
oPar.charScaleWidth = oPar.charScaleWidth - 1
|
||||
Dim charHeight
|
||||
charHeight= oPar.charHeight
|
||||
Dim lineSpacing
|
||||
lineSpacing = oPar.ParaLineSpacing
|
||||
MsgBox lineSpacing.Mode & lineSpacing.Height
|
||||
If oPar.supportsService("com.sun.star.text.Paragraph") Then
|
||||
nPars = nPars + 1
|
||||
oSecEnum = oPar.createEnumeration()
|
||||
s = s & nPars & ":"
|
||||
Do While oSecEnum.hasMoreElements()
|
||||
oParSection = oSecEnum.nextElement()
|
||||
oParSection.charScaleWidth = oParSection.charScaleWidth - 1
|
||||
oParSection.CharHeight = oParSection.CharHeight * 0.99
|
||||
s = s & oParSection.TextPortionType & " Scale " & oParSection.CharScaleWidth & " Scale " & oParSection.CharHeight & ":"
|
||||
Loop
|
||||
s = s & CHR$(10)
|
||||
If nPars MOD 10 = 0 Then
|
||||
MsgBox s, 0, "Paragraph Text Sections"
|
||||
s = ""
|
||||
End If
|
||||
End If
|
||||
Loop
|
||||
Loop
|
||||
End Sub
|
||||
oViewcursor.goToRange(startPosition,false)
|
||||
prevPageNum = oViewcursor.getPage()
|
||||
oViewcursor.goToRange(initPosition,false)
|
||||
startPageNum = oViewcursor.getPage()
|
||||
oTextCursor = oViewCursor.Text.createTextCursorByRange(oViewCursor)
|
||||
Do While startPageNum = oViewcursor.getPage() OR prevPageNum = oViewcursor.getPage()
|
||||
savePosition = oTextCursor.getStart()
|
||||
oTextCursor.gotoStartOfParagraph(true)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
oViewCursor.collapseToStart()
|
||||
If Len(oTextCursor.String) > 0 Then
|
||||
If (startPageNum = oViewcursor.getPage() OR prevPageNum = oViewcursor.getPage()) Then
|
||||
AddToArray(targetContent,oTextCursor.Text.createTextCursorByRange(oTextCursor))
|
||||
Else
|
||||
oTextCursor.goToRange(savePosition,false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
oViewCursor.JumpToStartOfPage(false)
|
||||
oTextCursor.goToRange(oViewCursor,true)
|
||||
AddToArray(targetContent,oTextCursor.Text.createTextCursorByRange(oTextCursor))
|
||||
EndIf
|
||||
EndIf
|
||||
foundPrevPara = oTextCursor.gotoPreviousParagraph(false)
|
||||
If (foundPrevPara = false) Then
|
||||
Exit Do
|
||||
EndIf
|
||||
oTextCursor.gotoEndOfParagraph(false)
|
||||
oViewCursor.goToRange(oTextCursor,false)
|
||||
Loop
|
||||
selectContentToShrink = targetContent
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
sub insertPageBreak
|
||||
rem ----------------------------------------------------------------------
|
||||
rem define variables
|
||||
Sub insertPageBreak
|
||||
dim document as object
|
||||
dim dispatcher as object
|
||||
rem ----------------------------------------------------------------------
|
||||
rem get access to the document
|
||||
document = ThisComponent.CurrentController.Frame
|
||||
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
|
||||
|
||||
rem ----------------------------------------------------------------------
|
||||
dispatcher.executeDispatch(document, ".uno:InsertPagebreak", "", 0, Array())
|
||||
|
||||
|
||||
end sub
|
||||
|
||||
Sub insertHyphen(oTextCursor,oViewCursor)
|
||||
Dim lastChars
|
||||
'lastChars = oTextCursor.getString()
|
||||
replacementhyp
|
||||
'MsgBox lastChars
|
||||
End Sub
|
||||
|
||||
sub replacementhyp
|
||||
rem ----------------------------------------------------------------------
|
||||
rem define variables
|
||||
dim document as object
|
||||
dim dispatcher as object
|
||||
rem ----------------------------------------------------------------------
|
||||
rem get access to the document
|
||||
Sub insertHyphen(twoCharactersToHyphen As Object)
|
||||
Dim oViewCursor As Object
|
||||
Dim document as Object
|
||||
Dim dispatcher as Object
|
||||
oViewCursor = ThisComponent.CurrentController.getViewCursor()
|
||||
oViewCursor.goToRange(twoCharactersToHyphen,false)
|
||||
document = ThisComponent.CurrentController.Frame
|
||||
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
|
||||
|
||||
rem ----------------------------------------------------------------------
|
||||
dim args1(21) as new com.sun.star.beans.PropertyValue
|
||||
args1(0).Name = "SearchItem.StyleFamily"
|
||||
args1(0).Value = 2
|
||||
|
@ -1535,6 +1517,7 @@ sub replacementhyp
|
|||
args1(11).Name = "SearchItem.SearchString"
|
||||
args1(11).Value = "([a-zA-Zа-яА-Я])([a-zA-Zа-яА-Я])"
|
||||
args1(12).Name = "SearchItem.ReplaceString"
|
||||
' "$1 U+00AD $2"
|
||||
args1(12).Value = "$1$2"
|
||||
args1(13).Name = "SearchItem.Locale"
|
||||
args1(13).Value = 255
|
||||
|
|
8
ePublishing/toc_links.xdl
Normal file
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE dlg:window PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "dialog.dtd">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="toc_links" dlg:left="74" dlg:top="15" dlg:width="346" dlg:height="284" dlg:closeable="true" dlg:moveable="true">
|
||||
<dlg:bulletinboard>
|
||||
<dlg:button dlg:id="Ok" dlg:tab-index="0" dlg:left="125" dlg:top="265" dlg:width="96" dlg:height="17" dlg:value="CommandButton1" dlg:button-type="ok"/>
|
||||
<dlg:text dlg:id="message" dlg:tab-index="1" dlg:left="5" dlg:top="4" dlg:width="334" dlg:height="24" dlg:value="message" dlg:align="center" dlg:multiline="true"/>
|
||||
</dlg:bulletinboard>
|
||||
</dlg:window>
|
|
@ -2,9 +2,9 @@
|
|||
<description xmlns="http://openoffice.org/extensions/update/2006"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<identifier value="pro.litvinovg.epublishing"/>
|
||||
<version value="0.7.4" />
|
||||
<version value="0.7.16" />
|
||||
<update-download>
|
||||
<src xlink:href="https://dev.litvinovg.pro/litvinovg/epublishing/uploads/09c381d47a83cc10ee0ba408ffd6d9ab/epublishing.oxt" />
|
||||
<src xlink:href="https://dev.litvinovg.pro/litvinovg/epublishing/uploads/9e6d9eaeb144d7a67e94c8460492a040/epublishing.oxt" />
|
||||
</update-download>
|
||||
<release-notes>
|
||||
<src xlink:href="https://dev.litvinovg.pro/litvinovg/epublishing/-/raw/master/releasenotes.txt" lang="en" />
|
||||
|
|
Before Width: | Height: | Size: 18 KiB |
263
icons/addon_icon.svg
Normal file
|
@ -0,0 +1,263 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg8655"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="addon_icon.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview8657"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.0308884"
|
||||
inkscape:cx="112.01994"
|
||||
inkscape:cy="108.32697"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:snap-global="false" />
|
||||
<defs
|
||||
id="defs8652" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-104.6842,-132.32068)">
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 132.37039,148.26988 h -2.07136 v -0.57304 h 2.07136 v -1.68816 h -1.38092 v -0.57303 h 1.38092 v -2.03656 h -4.83319 v 15.16484 h 4.83319 v -5.70978 h -2.07136 v -0.57304 h 2.07136 v -1.7191 h -1.38092 v -0.57303 h 1.38092 z"
|
||||
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.7;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="polygon2848-0-7"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 123.12724,144.21435 h 1.30516 l -0.65258,-2.26642 z"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="polygon2850-4-7"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 122.94511,145.10139 -1.08709,2.86162 h 3.88288 l -1.0871,-2.86162 z"
|
||||
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.714155;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="polygon2854-3-4"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<rect
|
||||
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.7;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;stop-color:#000000"
|
||||
id="rect9098"
|
||||
width="4.2093248"
|
||||
height="8.8333616"
|
||||
x="121.6905"
|
||||
y="148.86641"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
id="path2860-2-0"
|
||||
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.7;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 117.70046,140.80732 -2.45727,5.17649 1.15636,3.65475 h 2.89147 l 1.15637,-3.65475 -2.45784,-5.17649 v 3.8386 a 0.57822907,0.91357072 0 1 1 -0.28909,0 z m -1.30091,9.28765 v 8.34889 h 2.89147 v -8.34889 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
id="path1875-1-2"
|
||||
style="clip-rule:evenodd;fill:#b6b6b6;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.8;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;stroke-linejoin:round;stroke-linecap:round"
|
||||
d="m 111.57969,157.82045 v 32.51431 h 2.7094 v -28.51764 c 0,-0.34404 0.26584,-0.6222 0.59428,-0.6222 h 23.37945 23.3748 c 0.32864,0 0.59428,0.27816 0.59428,0.6222 v 28.51764 h 2.70991 v -32.51431 z m 26.68313,33.75867 v 0 h -23.37945 -0.0145 -3.87884 -0.0196 -4.02818 v 2.9347 c 0,0.80971 0.31401,1.54308 0.82114,2.07428 0.51184,0.53145 1.21262,0.86506 1.98541,0.86506 h 57.02856 c 0.77299,0 1.47311,-0.33361 1.98024,-0.8599 0.50695,-0.53636 0.82114,-1.27024 0.82114,-2.07997 v -2.9347 h -4.02818 -0.015 -3.87884 -0.0191 z m -0.0944,0.86744 c 0.55085,0 1.04846,0.2331 1.41077,0.61238 0.35756,0.3797 0.58446,0.90046 0.58446,1.47743 0,0.57677 -0.2269,1.10308 -0.58446,1.47744 -0.36231,0.3797 -0.85992,0.61235 -1.41077,0.61235 -0.5506,0 -1.05288,-0.23265 -1.41025,-0.61235 l -0.0434,-0.0455 c -0.33828,-0.37436 -0.54105,-0.88053 -0.54105,-1.43195 0,-0.57697 0.22217,-1.09773 0.58446,-1.47743 0.35758,-0.37931 0.85965,-0.61238 1.41025,-0.61238 z m 0,1.24489 c -0.22217,0 -0.4249,0.0959 -0.57464,0.24755 -0.14505,0.15171 -0.23668,0.36443 -0.23668,0.59737 0,0.22262 0.0819,0.42498 0.21239,0.57153 l 0.0243,0.0254 c 0.14983,0.15661 0.35265,0.24805 0.57464,0.24805 0.22217,0 0.42495,-0.0914 0.56999,-0.24805 0.14484,-0.15214 0.23668,-0.36412 0.23668,-0.59685 0,-0.23273 -0.23668,-0.59687 -0.23668,-0.59687 v 0 c 0,0 -0.34759,-0.24755 -0.56999,-0.24755 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png"
|
||||
sodipodi:nodetypes="cccsscsscccccccccccscsscsccccccccscsccscccccscsscssscc" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#3a3a3a;stroke-width:1.76822;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-5-5-5-6"
|
||||
width="20.554724"
|
||||
height="1.2916876"
|
||||
x="123.94579"
|
||||
y="168.00031"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#3a3a3a;stroke-width:1.76822;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-5-4"
|
||||
width="25.511669"
|
||||
height="1.2916876"
|
||||
x="119.06848"
|
||||
y="187.27496"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#3a3a3a;stroke-width:1.76822;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-5-8-5-1-9"
|
||||
width="25.511669"
|
||||
height="1.2916876"
|
||||
x="118.98883"
|
||||
y="172.7865"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#3a3a3a;stroke-width:1.76822;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-0-4-8-3-6-8"
|
||||
width="25.511669"
|
||||
height="1.2916876"
|
||||
x="119.06848"
|
||||
y="182.48865"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#3a3a3a;stroke-width:1.97035;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-0-0-6-3-0-4"
|
||||
width="22.040318"
|
||||
height="1.2916876"
|
||||
x="119.06848"
|
||||
y="177.70239"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<ellipse
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.639035;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="path3451-4-2"
|
||||
cx="144.54961"
|
||||
cy="158.14117"
|
||||
rx="4.860126"
|
||||
ry="4.6989589"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
id="path2846-4-4"
|
||||
style="fill:#cecece;fill-opacity:1;stroke:#000000;stroke-width:0.8;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 156.56806,135.84201 -0.40979,1.97146 a 11.102961,10.641572 0 0 0 -1.77767,0.4594 l -1.33894,-1.43245 a 13.045401,12.503294 0 0 0 -2.74298,1.53683 l 0.61908,1.80713 a 11.269889,10.801564 0 0 0 -1.3038,1.25005 l -1.88567,-0.59375 a 13.044093,12.50204 0 0 0 -1.60352,2.62929 l 1.49397,1.28313 a 11.097151,10.636004 0 0 0 -0.47904,1.70378 l -2.05673,0.39325 v 3.05356 l 2.05673,0.39325 a 11.095506,10.634428 0 0 0 0.39222,1.46399 l -0.73846,0.41032 a 6.8815349,6.5955698 0 0 0 -1.0976,-0.32917 l -0.64699,-1.45471 h -1.81591 l -0.64699,1.45471 a 6.8863609,6.6001955 0 0 0 -1.09761,0.32866 l -1.39319,-0.77411 a 8.1941513,7.8536402 0 0 0 -1.46968,1.00819 l 0.35553,1.48622 -0.67283,0.87177 -1.62109,0.14211 a 7.831057,7.5056343 0 0 0 -0.5674,1.61748 l 1.33687,1.01285 v 1.07953 l -1.33687,1.01338 a 7.8336105,7.5080817 0 0 0 0.5674,1.61695 l 1.62109,0.1421 0.67231,0.87181 -0.35501,1.48672 a 8.1953078,7.8547488 0 0 0 1.46916,1.00769 l 1.39371,-0.77412 a 6.8815349,6.5955698 0 0 0 1.09761,0.32867 l 0.64699,1.40509 h 1.81591 l 0.64699,-1.40509 a 6.8835862,6.5975361 0 0 0 1.0976,-0.32867 l 1.3932,0.77412 a 8.1941513,7.8536402 0 0 0 1.46968,-1.00769 l -0.35553,-1.48672 0.67282,-0.87128 1.62109,-0.14211 a 7.8318192,7.5063648 0 0 0 0.56741,-1.61747 l -0.50488,-0.38293 a 13.044718,12.502639 0 0 0 1.38441,0.66817 l 1.33842,-1.43245 a 11.105361,10.643874 0 0 0 1.77819,0.4594 l 0.40979,1.97146 h 3.18637 l 0.40979,-1.97146 a 11.10309,10.641698 0 0 0 1.77767,-0.4589 l 1.33894,1.43195 a 13.046811,12.504646 0 0 0 2.74298,-1.53685 l -0.61908,-1.80661 a 11.274289,10.805781 0 0 0 1.30431,-1.25058 l 1.88516,0.59378 a 13.044718,12.502639 0 0 0 1.60404,-2.62879 l -1.49449,-1.28363 a 11.105231,10.643748 0 0 0 0.47905,-1.70378 l 2.05723,-0.39325 v -3.05356 l -2.05723,-0.39275 a 11.097067,10.635923 0 0 0 -0.47905,-1.70428 l 1.49449,-1.28313 a 13.046811,12.504646 0 0 0 -1.60352,-2.62879 l -1.88568,0.59325 a 11.269889,10.801564 0 0 0 -1.30431,-1.25005 l 0.6196,-1.80713 a 13.044718,12.502639 0 0 0 -2.74298,-1.53683 l -1.33894,1.43245 a 11.105231,10.643748 0 0 0 -1.77819,-0.4594 l -0.40979,-1.97146 z m 1.53272,5.37229 a 7.4734009,7.1628407 0 0 1 7.53391,7.16287 7.4734009,7.1628407 0 0 1 -7.47344,7.16286 7.4734899,7.1629247 0 0 1 -0.0605,-14.32573 z m -0.16433,4.38269 a 2.7811034,2.6888794 0 0 0 -2.77606,2.68872 2.7811034,2.6888794 0 0 0 2.78071,2.68872 2.7811034,2.6888794 0 0 0 2.78123,-2.68872 2.7811034,2.6888794 0 0 0 -2.78123,-2.68872 2.7811034,2.6888794 0 0 0 -0.005,0 z m -13.79554,8.63409 a 4.0105414,3.8438817 0 1 1 -4.01061,3.84421 4.0105414,3.8438817 0 0 1 4.01061,-3.84421 z m 0.046,1.58647 a 2.2417849,2.1674453 0 0 0 -2.24172,2.16731 2.2417849,2.1674453 0 0 0 2.24172,2.16781 2.2417849,2.1674453 0 0 0 2.24173,-2.16781 2.2417849,2.1674453 0 0 0 -2.24173,-2.16731 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 149.99326,167.37867 v -2.09802"
|
||||
id="path1537-6-4"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 149.99327,188.56219 -1e-5,-17.80174"
|
||||
id="path1506-9-0"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<ellipse
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
cx="149.99326"
|
||||
cy="169.06958"
|
||||
id="path1512-6-3"
|
||||
style="fill:#000000;fill-opacity:0;fill-rule:nonzero;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
|
||||
rx="1.6157811"
|
||||
ry="1.6908911"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 154.3994,172.16728 v -6.88663"
|
||||
id="path1530-8-2"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 154.39941,188.61138 -10e-6,-13.06231"
|
||||
id="path1510-0-0"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<ellipse
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
cx="154.39941"
|
||||
cy="173.85822"
|
||||
id="circle1514-8-8"
|
||||
style="fill:#000000;fill-opacity:0;fill-rule:nonzero;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
|
||||
rx="1.6157811"
|
||||
ry="1.6908911"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 158.80553,168.86349 v -3.58284"
|
||||
id="path1523-6-6"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
d="M 158.80554,188.60154 V 172.24526"
|
||||
id="path1508-7-9"
|
||||
style="fill:#3a3a3a;fill-opacity:1;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<ellipse
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
cx="158.80553"
|
||||
cy="170.55444"
|
||||
id="circle1516-5-9"
|
||||
style="fill:#000000;fill-opacity:0;fill-rule:nonzero;stroke:#2b2b2b;stroke-width:1.33272;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
|
||||
rx="1.6157811"
|
||||
ry="1.6908911"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<ellipse
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
ry="1.1019053"
|
||||
rx="1.1396987"
|
||||
cy="148.22153"
|
||||
cx="157.88336"
|
||||
id="path3451-5-6-3-46-3"
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.05;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
<rect
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:0.25995;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect4991-5-0-5-8"
|
||||
width="67.73333"
|
||||
height="67.73333"
|
||||
x="104.6842"
|
||||
y="132.32068"
|
||||
ry="0.089716367"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-filename="/home/sveta/Desktop/addon_icon.png" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 9.9 KiB |
97
icons/decChar.svg
Normal file
|
@ -0,0 +1,97 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73336mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73336 67.73333"
|
||||
version="1.1"
|
||||
id="svg8011"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="decchar.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview8013"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.436055"
|
||||
inkscape:cx="145.88578"
|
||||
inkscape:cy="80.080498"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
showguides="true"
|
||||
inkscape:guide-bbox="true">
|
||||
<sodipodi:guide
|
||||
position="49.561416,111.39896"
|
||||
orientation="0,-1"
|
||||
id="guide827" />
|
||||
</sodipodi:namedview>
|
||||
<defs
|
||||
id="defs8008" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-105.05268,-164.01051)">
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect982-9-2-94-5-6-5"
|
||||
width="67.73333"
|
||||
height="67.73333"
|
||||
x="104.9709"
|
||||
y="163.94754" />
|
||||
<g
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="font-size:19.7556px;line-height:125%;font-family:Sans;letter-spacing:-1.83084px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.19042;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="flowRoot2434-2-1"
|
||||
transform="matrix(5.3096471,0,0,5.1940957,-519.98047,-757.85626)"
|
||||
aria-label="T">
|
||||
<path
|
||||
id="path2701-7"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:1.26894px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.19042;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 129.52705,177.74929 -10.8888,0.0147 -0.004,3.38911 c 0,0.11729 0.0461,0.21508 0.13831,0.29325 0.10537,0.0652 0.21736,0.0978 0.3359,0.0978 0.15806,0 0.30957,-0.0326 0.45445,-0.0978 0.14489,-0.0651 0.22381,-0.14992 0.23701,-0.25417 0.0922,-0.63852 0.1976,-1.12713 0.31615,-1.46593 0.13172,-0.35185 0.31615,-0.6125 0.55324,-0.78189 0.25026,-0.1824 0.5993,-0.28009 1.04713,-0.29315 h 1.36326 v 9.32363 c -0.0132,0.32578 -0.0461,0.59298 -0.0988,0.80148 -0.0395,0.19546 -0.1515,0.3648 -0.3359,0.50814 -0.18441,0.13036 -0.46756,0.1955 -0.84954,0.1955 -0.18438,0 -0.30951,0.0196 -0.37541,0.0587 -0.0658,0.0391 -0.10536,0.15635 -0.11856,0.35182 0,0.11728 0.0263,0.22151 0.079,0.31274 0.0658,0.0782 0.15808,0.11734 0.27662,0.11734 v -1e-4 c 0.85615,-0.0391 1.67937,-0.0587 2.46967,-0.0587 0.71126,0 1.48837,0.0196 2.33135,0.0587 0.11856,0 0.20416,-0.0391 0.25687,-0.11724 0.0659,-0.0912 0.0988,-0.19546 0.0988,-0.31274 -0.0132,-0.18242 -0.0526,-0.29324 -0.11855,-0.33232 -0.0527,-0.0521 -0.13833,-0.0782 -0.25687,-0.0782 h -0.11855 c -0.38197,0 -0.66513,-0.0652 -0.84953,-0.1955 -0.18442,-0.14334 -0.30296,-0.31268 -0.35566,-0.50814 -0.0395,-0.2085 -0.0658,-0.4757 -0.079,-0.80148 v -9.32363 h 1.34351 c 0.44783,0.013 0.79696,0.11071 1.04722,0.29315 0.25026,0.16939 0.43461,0.42349 0.55315,0.7623 0.11854,0.3388 0.23053,0.83397 0.3359,1.48552 0.0132,0.10424 0.0856,0.18897 0.21735,0.25417 0.14489,0.0652 0.2963,0.0978 0.45436,0.0978 0.11854,0 0.23052,-0.0326 0.3359,-0.0978 0.10535,-0.0782 0.15807,-0.17596 0.15807,-0.29325 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
d="m 117.74779,192.69455 13.39438,13.53973 -13.39438,13.53997 -0.0596,-6.49361 h -12.05501 v -14.09253 h 12.05498 z"
|
||||
id="path966-9-6-0-26"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#0200ff;fill-opacity:1;stroke-width:5.49326"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
d="m 160.06694,192.69455 -13.39438,13.53973 13.39438,13.53997 0.0596,-6.49361 h 12.05501 v -14.09253 h -12.05498 z"
|
||||
id="path966-9-6-0-26-3"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#0200ff;fill-opacity:1;stroke-width:5.49326"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect982-9-2-9-7-3-5"
|
||||
width="67.73333"
|
||||
height="67.73333"
|
||||
x="104.97087"
|
||||
y="163.94754" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 5.4 KiB |
Before Width: | Height: | Size: 11 KiB |
90
icons/decKern.svg
Normal file
|
@ -0,0 +1,90 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.733329 67.73333"
|
||||
version="1.1"
|
||||
id="svg2477"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="decKern.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2479"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.436055"
|
||||
inkscape:cx="84.606788"
|
||||
inkscape:cy="174.78439"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:snap-global="false" />
|
||||
<defs
|
||||
id="defs2474" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-53.01717,-69.4972)">
|
||||
<rect
|
||||
y="69.4972"
|
||||
x="53.01717"
|
||||
height="67.73333"
|
||||
width="67.73333"
|
||||
id="rect982-9-2-94-5-3-3-2"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7281-5-8"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;line-height:125%;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:-1.83084px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.792791px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 54.72981,114.22729 q -0.47856,0 -0.69129,-0.39538 -0.26594,-0.46127 -0.26594,-1.05436 0.0534,-0.98848 0.31904,-1.18615 0.26595,-0.1978 0.63811,-0.1978 0.37223,0 0.47856,0 1.59525,0 2.33969,-0.98846 0.74444,-1.05436 1.16986,-2.30641 0.47858,-1.31796 0.63808,-1.77924 l 9.30559,-27.281567 q 0.31906,-0.988455 0.31906,-1.581525 0,-1.186153 -0.74445,-1.71335 -0.74446,-0.527164 -2.07384,-0.856665 -0.90394,-0.197785 -1.11666,-0.395394 -0.21264,-0.197808 -0.21264,-1.120235 0,-0.79079 0.31905,-1.054359 0.3722,-0.263527 1.11667,-0.263527 2.65874,0 4.20081,0.527141 1.59524,0.461325 2.76511,1.976953 1.16984,1.449745 2.18017,4.481039 l 8.93336,27.281549 q 0.79761,2.5041 1.54206,3.75617 0.74446,1.25202 2.23334,1.31795 h 0.31907 q 0.53171,0 0.74444,0.2635 0.21263,0.19782 0.26593,1.12028 0,0.59308 -0.26593,1.05436 -0.21265,0.39538 -0.6913,0.39538 -3.40321,-0.1978 -5.84921,-0.1978 -3.1905,0 -6.59368,0.1978 -0.47859,0 -0.74446,-0.39538 -0.21263,-0.46128 -0.21263,-1.05436 0.0533,-0.92256 0.26592,-1.12028 0.21265,-0.2635 0.74445,-0.2635 1.80793,0 2.5524,-0.39538 0.74445,-0.46128 0.74445,-1.58156 0,-0.85664 -0.63811,-3.09718 l -1.80795,-5.4695 h -13.1342 q -1.32936,4.08567 -1.54206,4.74465 -0.15959,0.65895 -0.15959,0.72485 -0.63811,2.5041 -0.63811,3.22897 0,1.12027 0.79761,1.51565 0.79764,0.32957 3.03097,0.32957 h 0.31905 q 0.53173,0 0.74442,0.26349 0.21264,0.19782 0.26595,1.12029 0,0.59309 -0.26595,1.05437 -0.21264,0.39536 -0.69124,0.39536 -3.4032,-0.19781 -5.79605,-0.19781 -1.7016,0 -5.15796,0.19781 z M 64.833,98.0165 H 75.99973 L 70.62906,81.08085 h -0.15961 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7283-2-4"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;line-height:125%;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:-1.83084px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.626217px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 94.09436,116.08178 q -0.41432,0.13465 -0.8041,-0.0973 -0.38979,-0.23215 -0.58234,-0.73936 L 79.18886,71.864135 q -0.10865,-0.513438 0.16248,-1.002634 0.27115,-0.489207 0.72739,-0.626989 0.41431,-0.134653 0.80409,0.09753 0.43173,0.229052 0.62676,0.78825 l 13.43523,43.386948 q 0.10865,0.51346 -0.16498,0.9507 -0.22921,0.48613 -0.68545,0.62393 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7285-1-6"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;line-height:125%;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:-1.83084px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.792791px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 100.76564,114.62338 q -1.59528,-5.40359 -5.05163,-17.19925 -3.45634,-11.79562 -5.0516,-17.067432 -0.90394,-2.833595 -1.75475,-3.953885 -0.8508,-1.120234 -2.4992,-1.515642 -0.21264,-0.06602 -0.63811,-0.131701 -0.42539,-0.13168 -0.58491,-0.395373 -0.10629,-0.329556 -0.10629,-0.988477 0,-0.790746 0.31904,-1.054316 0.37224,-0.263537 1.1167,-0.263537 3.98811,0 6.06192,1.51565 2.0738,1.515653 3.29681,5.403609 l 7.71036,25.700004 h 0.15962 l 7.33809,-26.424888 q 0.31907,-1.120257 0.31907,-1.713338 0,-0.922537 -0.63811,-1.186152 -0.58489,-0.329568 -2.02061,-0.329568 h -0.31909 q -0.53171,0 -0.74439,-0.197797 -0.21266,-0.263515 -0.26597,-1.186152 0,-0.59308 0.21265,-0.988476 0.26594,-0.461279 0.69129,-0.461279 3.45636,0.197787 5.79601,0.197787 1.01034,0 3.88178,-0.13168 l 1.11666,-0.06602 q 0.47858,0 0.69128,0.46128 0.26593,0.395395 0.26593,0.988486 -0.0533,0.922559 -0.26593,1.186142 -0.21264,0.197808 -0.74445,0.197808 -2.28651,0 -3.50952,0.922571 -1.16986,0.922558 -2.02065,3.558478 -1.59525,5.403587 -5.15794,17.528728 -3.50955,12.05923 -5.10481,17.59463 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
d="m 101.68467,117.40379 -13.026836,9.55858 13.026836,9.55873 0.0275,-4.76566 h 18.65975 v -9.58604 h -18.65975 z"
|
||||
id="path966-9-6-0-2-0-0-9-4-7-4-9"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#001bff;fill-opacity:1;stroke-width:3.13936"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
d="m 72.381126,117.25351 13.02687,9.55858 -13.02687,9.55873 -0.0275,-4.76566 H 53.693883 v -9.58604 h 18.659743 z"
|
||||
id="path966-9-6-0-2-0-0-9-4-7-4-9-4"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#001bff;fill-opacity:1;stroke-width:3.13936"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 7.2 KiB |
Before Width: | Height: | Size: 4.2 KiB |
153
icons/endnotes.svg
Normal file
|
@ -0,0 +1,153 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg2486"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="endnotes.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2488"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.6903844"
|
||||
inkscape:cx="83.708771"
|
||||
inkscape:cy="81.638236"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2483" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-92.892647,-111.68544)">
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
y="111.68544"
|
||||
x="92.892647"
|
||||
height="67.73333"
|
||||
width="67.73333"
|
||||
id="rect3292"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:0.265;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<rect
|
||||
y="135.49535"
|
||||
x="95.049019"
|
||||
height="5.0871596"
|
||||
width="40.605831"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.10395;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
inkscape:export-ydpi="96.000046" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.948985;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9-1"
|
||||
width="8.2611904"
|
||||
height="5.0871596"
|
||||
x="150.44847"
|
||||
y="135.49535" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
sodipodi:nodetypes="cccccc"
|
||||
style="fill:#ff6600;fill-opacity:1;stroke-width:3.89118"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path966-9-6-0-2-0-37-2"
|
||||
d="m 157.55297,151.61926 -13.85782,13.28552 -13.85804,-13.28552 9.21069,-0.0292 9.29454,-2e-5 z" />
|
||||
<rect
|
||||
y="127.10445"
|
||||
x="150.46057"
|
||||
height="5.0871596"
|
||||
width="8.2611904"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9-1-4"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.948984;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
inkscape:export-ydpi="96.000046" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.10395;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9-2"
|
||||
width="40.605831"
|
||||
height="5.0871596"
|
||||
x="95.057297"
|
||||
y="127.22473" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.948984;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9-1-4-1"
|
||||
width="8.2611904"
|
||||
height="5.0871596"
|
||||
x="150.49835"
|
||||
y="143.73186" />
|
||||
<rect
|
||||
y="143.93459"
|
||||
x="95.058357"
|
||||
height="5.0871596"
|
||||
width="40.605831"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9-2-7"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.10395;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
inkscape:export-ydpi="96.000046" />
|
||||
<rect
|
||||
y="167.01994"
|
||||
x="101.8401"
|
||||
height="3.5655646"
|
||||
width="56.980888"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9-24-5"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.08656;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
inkscape:export-ydpi="96.000046" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.08656;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5-9-5-0-2-9-24-5-7"
|
||||
width="56.980892"
|
||||
height="3.5655646"
|
||||
x="101.83765"
|
||||
y="174.05339" />
|
||||
<circle
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
r="2.3487535"
|
||||
cy="168.64861"
|
||||
cx="98.229622"
|
||||
id="path3707"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:9.56849;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<circle
|
||||
inkscape:export-ydpi="96.000046"
|
||||
inkscape:export-xdpi="96.000046"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:9.5685;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path3707-1"
|
||||
cx="98.270699"
|
||||
cy="175.60979"
|
||||
r="2.3487535" />
|
||||
<path
|
||||
style="fill:#ff6600;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 94.786563,114.60607 h 40.431997 c 9.72673,0 12.52136,5.48131 12.52136,12.52137 v 25.97065 h -8.81151 v -24.64861 c 0,-3.02882 -0.65494,-5.90145 -6.22771,-6.06022 H 94.761584 Z"
|
||||
id="path5209"
|
||||
sodipodi:nodetypes="ccccccccc" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 10 KiB |
90
icons/incChar.svg
Normal file
|
@ -0,0 +1,90 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73336mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73336 67.73333"
|
||||
version="1.1"
|
||||
id="svg7825"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="symbol_plus.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview7827"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.0154442"
|
||||
inkscape:cx="9.3555114"
|
||||
inkscape:cy="35.452464"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs7822" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-131.95218,-153.69289)">
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect982-9-2-94-5-6-5"
|
||||
width="67.73333"
|
||||
height="67.73333"
|
||||
x="131.95221"
|
||||
y="153.69289" />
|
||||
<g
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="font-size:19.7556px;line-height:125%;font-family:Sans;letter-spacing:-1.83084px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.19042;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="flowRoot2434-2-1"
|
||||
transform="matrix(5.3096471,0,0,5.1940957,-492.99916,-768.11092)"
|
||||
aria-label="T">
|
||||
<path
|
||||
id="path2701-7"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:1.26894px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.19042;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 129.52705,177.74929 -10.8888,0.0147 -0.004,3.38911 c 0,0.11729 0.0461,0.21508 0.13831,0.29325 0.10537,0.0652 0.21736,0.0978 0.3359,0.0978 0.15806,0 0.30957,-0.0326 0.45445,-0.0978 0.14489,-0.0651 0.22381,-0.14992 0.23701,-0.25417 0.0922,-0.63852 0.1976,-1.12713 0.31615,-1.46593 0.13172,-0.35185 0.31615,-0.6125 0.55324,-0.78189 0.25026,-0.1824 0.5993,-0.28009 1.04713,-0.29315 h 1.36326 v 9.32363 c -0.0132,0.32578 -0.0461,0.59298 -0.0988,0.80148 -0.0395,0.19546 -0.1515,0.3648 -0.3359,0.50814 -0.18441,0.13036 -0.46756,0.1955 -0.84954,0.1955 -0.18438,0 -0.30951,0.0196 -0.37541,0.0587 -0.0658,0.0391 -0.10536,0.15635 -0.11856,0.35182 0,0.11728 0.0263,0.22151 0.079,0.31274 0.0658,0.0782 0.15808,0.11734 0.27662,0.11734 v -1e-4 c 0.85615,-0.0391 1.67937,-0.0587 2.46967,-0.0587 0.71126,0 1.48837,0.0196 2.33135,0.0587 0.11856,0 0.20416,-0.0391 0.25687,-0.11724 0.0659,-0.0912 0.0988,-0.19546 0.0988,-0.31274 -0.0132,-0.18242 -0.0526,-0.29324 -0.11855,-0.33232 -0.0527,-0.0521 -0.13833,-0.0782 -0.25687,-0.0782 h -0.11855 c -0.38197,0 -0.66513,-0.0652 -0.84953,-0.1955 -0.18442,-0.14334 -0.30296,-0.31268 -0.35566,-0.50814 -0.0395,-0.2085 -0.0658,-0.4757 -0.079,-0.80148 v -9.32363 h 1.34351 c 0.44783,0.013 0.79696,0.11071 1.04722,0.29315 0.25026,0.16939 0.43461,0.42349 0.55315,0.7623 0.11854,0.3388 0.23053,0.83397 0.3359,1.48552 0.0132,0.10424 0.0856,0.18897 0.21735,0.25417 0.14489,0.0652 0.2963,0.0978 0.45436,0.0978 0.11854,0 0.23052,-0.0326 0.3359,-0.0978 0.10535,-0.0782 0.15807,-0.17596 0.15807,-0.29325 z"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<path
|
||||
d="m 145.66063,182.43989 -13.39438,13.53973 13.39438,13.53997 0.0596,-6.49361 h 12.05501 v -14.09253 h -12.05498 z"
|
||||
id="path966-9-6-0-26"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ff0002;fill-opacity:1;stroke-width:5.49326"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
d="m 185.76848,182.43989 13.39438,13.53973 -13.39438,13.53997 -0.0596,-6.49361 h -12.05501 v -14.09253 h 12.05498 z"
|
||||
id="path966-9-6-0-26-3"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ff0002;fill-opacity:1;stroke-width:5.49326"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect982-9-2-9-7-3-5"
|
||||
width="67.73333"
|
||||
height="67.73333"
|
||||
x="131.95218"
|
||||
y="153.69289" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 11 KiB |
90
icons/incKern.svg
Normal file
|
@ -0,0 +1,90 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73336mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73336 67.73333"
|
||||
version="1.1"
|
||||
id="svg2700"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="incKern.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2702"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.0308884"
|
||||
inkscape:cx="128.76138"
|
||||
inkscape:cy="144.76423"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:snap-global="false" />
|
||||
<defs
|
||||
id="defs2697" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-114.87222,-84.436211)">
|
||||
<rect
|
||||
y="84.436211"
|
||||
x="114.87222"
|
||||
height="67.73333"
|
||||
width="67.73333"
|
||||
id="rect982-9-2-94-5-3-3-2"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7281-5"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;line-height:125%;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:-1.83084px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.792791px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 116.58485,129.16631 q -0.47856,0 -0.69129,-0.39538 -0.26594,-0.46127 -0.26594,-1.05436 0.0534,-0.98848 0.31904,-1.18615 0.26595,-0.1978 0.63811,-0.1978 0.37223,0 0.47856,0 1.59525,0 2.33969,-0.98846 0.74444,-1.05436 1.16986,-2.30641 0.47858,-1.31796 0.63808,-1.77924 l 9.30559,-27.281577 q 0.31906,-0.988455 0.31906,-1.581525 0,-1.186153 -0.74445,-1.71335 -0.74446,-0.527164 -2.07384,-0.856665 -0.90394,-0.197785 -1.11666,-0.395394 -0.21264,-0.197808 -0.21264,-1.120235 0,-0.79079 0.31905,-1.054359 0.3722,-0.263527 1.11667,-0.263527 2.65874,0 4.20081,0.527141 1.59524,0.461325 2.76511,1.976953 1.16984,1.449745 2.18017,4.481039 l 8.93336,27.281559 q 0.79761,2.5041 1.54206,3.75617 0.74446,1.25202 2.23334,1.31795 h 0.31907 q 0.53171,0 0.74444,0.2635 0.21263,0.19782 0.26593,1.12028 0,0.59308 -0.26593,1.05436 -0.21265,0.39538 -0.6913,0.39538 -3.40321,-0.1978 -5.84921,-0.1978 -3.1905,0 -6.59368,0.1978 -0.47859,0 -0.74446,-0.39538 -0.21263,-0.46128 -0.21263,-1.05436 0.0533,-0.92256 0.26592,-1.12028 0.21265,-0.2635 0.74445,-0.2635 1.80793,0 2.5524,-0.39538 0.74445,-0.46128 0.74445,-1.58156 0,-0.85664 -0.63811,-3.09718 l -1.80795,-5.4695 h -13.1342 q -1.32936,4.08567 -1.54206,4.74465 -0.15959,0.65895 -0.15959,0.72485 -0.63811,2.5041 -0.63811,3.22897 0,1.12027 0.79761,1.51565 0.79764,0.32957 3.03097,0.32957 h 0.31905 q 0.53173,0 0.74442,0.26349 0.21264,0.19782 0.26595,1.12029 0,0.59309 -0.26595,1.05437 -0.21264,0.39536 -0.69124,0.39536 -3.4032,-0.19781 -5.79605,-0.19781 -1.7016,0 -5.15796,0.19781 z m 10.10319,-16.2108 h 11.16673 L 132.4841,96.01986 h -0.15961 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7283-2"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;line-height:125%;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:-1.83084px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.626217px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 155.9494,131.0208 q -0.41432,0.13465 -0.8041,-0.0973 -0.38979,-0.23215 -0.58234,-0.73936 L 141.0439,86.803145 q -0.10865,-0.513438 0.16248,-1.002634 0.27115,-0.489207 0.72739,-0.626989 0.41431,-0.134653 0.80409,0.09753 0.43173,0.229052 0.62676,0.78825 l 13.43523,43.386958 q 0.10865,0.51346 -0.16498,0.9507 -0.22921,0.48613 -0.68545,0.62393 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path7285-1-6"
|
||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:19.7556px;line-height:125%;font-family:Alice;-inkscape-font-specification:'Alice Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:-1.83084px;word-spacing:-0.00183084px;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.792791px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 162.62067,129.5624 q -1.59527,-5.40359 -5.05162,-17.19926 -3.45634,-11.79562 -5.0516,-17.067432 -0.90394,-2.833595 -1.75475,-3.953885 -0.8508,-1.120234 -2.4992,-1.515642 -0.21264,-0.06602 -0.63811,-0.131701 -0.42539,-0.13168 -0.58491,-0.395373 -0.10629,-0.329556 -0.10629,-0.988477 0,-0.790746 0.31904,-1.054316 0.37224,-0.263537 1.1167,-0.263537 3.98811,0 6.06192,1.51565 2.0738,1.515653 3.29681,5.403609 l 7.71035,25.700014 h 0.15962 l 7.33809,-26.424898 q 0.31907,-1.120257 0.31907,-1.713338 0,-0.922537 -0.63811,-1.186152 -0.58489,-0.329568 -2.02061,-0.329568 h -0.31909 q -0.53171,0 -0.74439,-0.197797 -0.21266,-0.263515 -0.26597,-1.186152 0,-0.59308 0.21265,-0.988476 0.26594,-0.461279 0.69129,-0.461279 3.45636,0.197787 5.79601,0.197787 1.01034,0 3.88178,-0.13168 l 1.11667,-0.06602 q 0.47858,0 0.69128,0.46128 0.26593,0.395395 0.26593,0.988486 -0.0533,0.922559 -0.26593,1.186142 -0.21264,0.197808 -0.74445,0.197808 -2.28652,0 -3.50953,0.922571 -1.16986,0.922558 -2.02065,3.558478 -1.59525,5.403587 -5.15794,17.528728 -3.50955,12.05924 -5.10481,17.59464 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
d="m 169.20012,132.34281 13.02687,9.55857 -13.02687,9.55873 -0.0275,-4.76566 h -17.07224 v -9.58603 h 17.07224 z"
|
||||
id="path966-9-6-0-2-0-0-9-4-7-4-9"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#e60002;fill-opacity:1;stroke-width:3.13936"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
d="m 128.57579,132.19253 -13.02687,9.55857 13.02687,9.55873 0.0275,-4.76566 h 17.07224 v -9.58603 h -17.07224 z"
|
||||
id="path966-9-6-0-2-0-0-9-4-7-4-9-4"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#e60002;fill-opacity:1;stroke-width:3.13936"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 7.2 KiB |
BIN
icons/links.png
Before Width: | Height: | Size: 8.8 KiB |
97
icons/links.svg
Normal file
|
@ -0,0 +1,97 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg2924"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="links.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2926"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.0308885"
|
||||
inkscape:cx="80.506637"
|
||||
inkscape:cy="128.02279"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:snap-global="false" />
|
||||
<defs
|
||||
id="defs2921" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-62.071301,-83.900757)">
|
||||
<path
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-7-1-7-8-6-8"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.50924;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 63.288246,128.42133 v 4.5 h 12.83916 c 0.0967,-1.57265 2.4477,-3.09012 2.94527,-4.5 z m 41.145354,0 -3.50074,4.5 h 27.64836 v -4.5 z"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
sodipodi:nodetypes="cccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 128.52123,106.7402 v -4.5 h -12.83916 c -0.0967,1.57263 -2.44771,3.09012 -2.94527,4.5 z m -41.145358,0 5.085514,-4.5 H 63.228252 v 4.5 z"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.50924;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-7-1-7-8-6" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
d="m 128.58843,97.727829 v -4.5 h -10.35091 c 0.6888,1.376399 0.15148,2.896634 0.41261,4.5 z m -31.934402,0 3.500762,-4.5 H 63.295448 v 4.5 z"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.50923;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-7-0-9-8-7-2"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccccc" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
d="m 128.58362,89.074333 v -4.5 H 63.290647 v 4.5 h 40.157263 c 1.80892,-1.743618 3.99687,-2.687929 6.29866,-2.687929 h 10e-4 c 2.30145,8.18e-4 4.49043,0.944896 6.29965,2.687929 z"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.50922;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-7-0-7-6-2-6-6"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-7-0-9-8-7-2-9"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.50923;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 63.288246,137.46204 v 4.5 h 10.35091 c -0.6888,-1.37639 -0.15149,-2.89663 -0.41261,-4.5 z m 31.93439,0 -3.50076,4.5 h 36.859344 v -4.5 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-7-0-7-6-2-6-6-8"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.50923;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 63.288246,146.17315 v 4.5 h 65.292974 v -4.5 H 88.423956 c -1.80893,1.74361 -3.99687,2.68793 -6.29866,2.68793 h -0.001 c -2.30146,-7.8e-4 -4.49044,-0.9449 -6.29965,-2.68793 z"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m 90.271426,114.39038 -16.2298,16.23069 c -2.05842,2.05665 -3.19117,4.79255 -3.19117,7.70296 0,2.91177 1.13409,5.64724 3.19161,7.70388 2.05707,2.05661 4.79344,3.19025 7.70296,3.19115 h 8.7e-4 c 2.90997,0 5.64499,-1.13364 7.70206,-3.19115 l 16.230714,-16.23117 c 3.34022,-3.34021 4.13332,-8.41483 2.041,-12.58073 l -3.56339,3.56381 c 0.44275,2.08296 -0.19771,4.27035 -1.70983,5.78291 l -16.638644,16.63731 -0.0116,-0.0109 c -1.18364,1.03365 -2.67833,1.59735 -4.25204,1.59735 -1.68172,0 -3.25587,-0.64851 -4.43504,-1.82634 -1.19657,-1.1961 -1.84328,-2.79347 -1.82676,-4.49795 0.0161,-1.5514 0.58065,-3.0229 1.59959,-4.19091 l -0.0104,-0.009 0.22806,-0.22985 c 0.0299,-0.0316 0.0611,-0.0642 0.0919,-0.0942 0.0104,-0.01 0.0192,-0.0197 0.0286,-0.0277 l 0.055,-0.0557 16.2298,-16.23071 c 1.19435,-1.193 2.78056,-1.84954 4.46673,-1.84954 0.43606,0 0.86899,0.0452 1.29388,0.13302 l 3.567384,-3.56831 c -1.49961,-0.74802 -3.167494,-1.13988 -4.859924,-1.13988 -2.90908,5.3e-4 -5.645,1.13364 -7.70252,3.19027 M 121.77679,97.012846 c 0,-2.90999 -1.13407,-5.645891 -3.19115,-7.702521 -2.0575,-2.05886 -4.79343,-3.19159 -7.70385,-3.19159 -2.90952,0 -5.64499,1.13318 -7.70207,3.19159 L 86.948586,105.53961 c -3.338,3.33755 -4.13288,8.40857 -2.04638,12.57271 l 3.41253,-3.41254 c -0.39141,-1.9495 0.15979,-4.00077 1.47954,-5.51467 l -0.0104,-0.01 0.22406,-0.22627 c 0.0286,-0.0299 0.0598,-0.0616 0.0897,-0.0921 0.0104,-0.009 0.0179,-0.0178 0.0276,-0.0267 l 0.0562,-0.0567 16.229374,-16.229834 c 1.19389,-1.19389 2.78099,-1.85087 4.4694,-1.85087 1.68885,0 3.27551,0.65698 4.4694,1.85087 2.46455,2.46412 2.46455,6.47604 0,8.938374 l -16.635504,16.63774 -0.0117,-0.0116 c -1.18541,1.0341 -2.67744,1.59825 -4.25161,1.59825 -0.42443,0 -0.84398,-0.0419 -1.25594,-0.12408 l -3.41207,3.41209 c 1.50364,0.75025 3.17198,1.1439 4.86795,1.1439 2.91134,0 5.646794,-1.1332 7.703874,-3.19028 l 16.23026,-16.23024 c 2.05751,-2.05887 3.19071,-4.794315 3.19071,-7.705205"
|
||||
id="path1214-3-8-8"
|
||||
style="fill:#0003ff;fill-opacity:1;stroke:#1c26ff;stroke-width:0.446;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 5.2 KiB |
158
icons/paragraph.svg
Normal file
|
@ -0,0 +1,158 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg9916"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="paragraph.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview9918"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:snap-global="false"
|
||||
inkscape:zoom="2.0308884"
|
||||
inkscape:cx="115.46671"
|
||||
inkscape:cy="156.08932"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs9913" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-92.524155,-109.47453)">
|
||||
<rect
|
||||
y="109.47453"
|
||||
x="92.524155"
|
||||
height="67.73333"
|
||||
width="67.73333"
|
||||
id="rect982-9-2-9-7-0"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<path
|
||||
id="rect847-2-0-2"
|
||||
style="fill:none;stroke:#000000;stroke-width:1.99356;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 124.78694,132.07734 v -20.799 h 32.55138 v 43.20213 l -28.57395,0"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="fill:#029c00;fill-opacity:1;stroke:none;stroke-width:1.47294;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-4"
|
||||
width="21.80117"
|
||||
height="4.6439242"
|
||||
x="132.51495"
|
||||
y="114.49986" />
|
||||
<rect
|
||||
y="124.22032"
|
||||
x="128.09102"
|
||||
height="4.6439242"
|
||||
width="26.394829"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-0"
|
||||
style="fill:#029c00;fill-opacity:1;stroke:none;stroke-width:1.62072;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="fill:#029c00;fill-opacity:1;stroke:none;stroke-width:1.62072;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-9-80"
|
||||
width="26.394829"
|
||||
height="4.6439242"
|
||||
x="128.12129"
|
||||
y="133.61826" />
|
||||
<path
|
||||
id="path1659-3-4-3-2"
|
||||
fill="#241F20"
|
||||
d="m 147.82818,157.32917 8.99869,8.75745 h -3.83501 c -0.65909,7.11404 -5.34633,13.64931 -19.22877,8.60297 7.33777,0.27447 8.63092,-3.725 8.96976,-8.60294 h -4.36677 z"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ff0e00;fill-opacity:1;stroke-width:0.593436"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
inkscape:export-ydpi="96.000008"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
id="path1659-3-4-3-2-0"
|
||||
fill="#241F20"
|
||||
d="m 106.39267,129.95823 -8.998683,-9.02248 h 3.835003 c 0.65909,-7.32934 5.34633,-14.06239 19.22877,-8.86332 -7.33777,-0.28279 -8.63092,3.83772 -8.96976,8.86329 h 4.36677 z"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#ff0e00;fill-opacity:1;stroke-width:0.602349"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
inkscape:export-ydpi="96.000008"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<rect
|
||||
y="144.05806"
|
||||
x="129.3343"
|
||||
height="4.6439242"
|
||||
width="25.151567"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-9-8-5"
|
||||
style="fill:#029c00;fill-opacity:1;stroke:none;stroke-width:1.5821;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.99141;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect847-2-0-1-0"
|
||||
width="33.820812"
|
||||
height="42.416"
|
||||
x="95.032234"
|
||||
y="132.36934"
|
||||
ry="0" />
|
||||
<rect
|
||||
y="138.01369"
|
||||
x="101.99397"
|
||||
height="4.9674153"
|
||||
width="24.004038"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.5985;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.72633;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3"
|
||||
width="27.996544"
|
||||
height="4.9674153"
|
||||
x="98.001465"
|
||||
y="147.7115" />
|
||||
<rect
|
||||
y="157.37741"
|
||||
x="98.001472"
|
||||
height="4.9674153"
|
||||
width="27.996544"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-9"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.72633;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.72633;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-9-8"
|
||||
width="27.996544"
|
||||
height="4.9674153"
|
||||
x="98.00148"
|
||||
y="166.80212" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 2.3 KiB |
96
icons/press_text.svg
Normal file
|
@ -0,0 +1,96 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg2477"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="press_text.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2479"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.0308884"
|
||||
inkscape:cx="59.826033"
|
||||
inkscape:cy="109.80416"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:lockguides="true" />
|
||||
<defs
|
||||
id="defs2474" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-44.252445,-77.047729)">
|
||||
<rect
|
||||
y="77.047729"
|
||||
x="44.252445"
|
||||
height="67.73333"
|
||||
width="67.73333"
|
||||
id="rect982-9-2-94-9-12"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<rect
|
||||
y="108.00449"
|
||||
x="45.867519"
|
||||
height="6.5124974"
|
||||
width="64.078773"
|
||||
id="rect851-8-3-8-3-37-8-5-8-6-0-2"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.99041;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.99041;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-5-8-6-0-0-46"
|
||||
width="64.078773"
|
||||
height="6.5124974"
|
||||
x="45.6674"
|
||||
y="95.987839" />
|
||||
<rect
|
||||
y="120.45139"
|
||||
x="45.867519"
|
||||
height="6.5124974"
|
||||
width="64.078773"
|
||||
id="rect851-8-3-8-3-37-8-5-8-6-0-0-4-0"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.99041;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<path
|
||||
d="m 62.836441,77.914258 14.82678,14.252148 14.82704,-14.252148 z"
|
||||
id="path966-9-6-0-2-7-3-4-34-6-9"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#e60002;fill-opacity:1;stroke-width:5.20472"
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
sodipodi:nodetypes="cccc"
|
||||
style="fill:#e60002;fill-opacity:1;stroke-width:5.20826"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path966-9-6-0-2-7-3-4-34-6-9-9"
|
||||
d="m 63.55667,144.36014 14.82678,-14.27159 14.82704,14.27159 z" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 3.6 KiB |
108
icons/tail.svg
Normal file
|
@ -0,0 +1,108 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
sodipodi:docname="hvost.svg"
|
||||
inkscape:version="1.0 (4035a4f, 2020-05-01)"
|
||||
id="svg2650"
|
||||
version="1.1"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
height="67.73333mm"
|
||||
width="67.73333mm">
|
||||
<defs
|
||||
id="defs2644" />
|
||||
<sodipodi:namedview
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-width="1920"
|
||||
showgrid="false"
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:cy="161.53655"
|
||||
inkscape:cx="48.279563"
|
||||
inkscape:zoom="0.98994949"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
borderopacity="1.0"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff"
|
||||
id="base" />
|
||||
<metadata
|
||||
id="metadata2647">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
transform="translate(-94.593422,-56.778362)"
|
||||
id="layer1"
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="Layer 1">
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="opacity:1;fill:#484848;fill-opacity:1;stroke:none;stroke-width:2.02445;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000;stop-opacity:1"
|
||||
id="rect851-8-3-8-3-37-8-5-8-6-0-0-6"
|
||||
width="18.675617"
|
||||
height="10.240829"
|
||||
x="96.890099"
|
||||
y="108.6032" />
|
||||
<path
|
||||
d="m 148.55629,103.93948 11.61928,9.55377 -11.61928,9.55393 -0.0327,-6.34998 h -7.8785 v -6.4078 h 7.87849 z"
|
||||
id="path966-9-6-0-2-0-0-9-4-7-4-8-3"
|
||||
inkscape:connector-curvature="0"
|
||||
style="opacity:1;fill:#e60002;fill-opacity:1;stroke-width:3.42818;stop-opacity:1"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96" />
|
||||
<path
|
||||
inkscape:export-ydpi="96"
|
||||
inkscape:export-xdpi="96"
|
||||
sodipodi:nodetypes="cccccccc"
|
||||
style="opacity:1;fill:#e60002;fill-opacity:1;stroke-width:3.42818;stop-opacity:1"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path966-9-6-0-2-0-0-9-4-7-4-8-3-8"
|
||||
d="m 128.61418,123.04712 -11.61928,-9.55377 11.61928,-9.55392 0.0327,6.34997 h 7.8785 v 6.4078 h -7.87849 z" />
|
||||
<rect
|
||||
y="91.483078"
|
||||
x="96.890099"
|
||||
height="10.240829"
|
||||
width="62.825058"
|
||||
id="rect851-8-3-8-3-37-8-5-8-6-0-0-6-2"
|
||||
style="opacity:1;fill:#484848;fill-opacity:1;stroke:none;stroke-width:3.71308;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000;stop-opacity:1"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000023"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
style="opacity:1;fill:#484848;fill-opacity:1;stroke:none;stroke-width:3.71308;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000;stop-opacity:1"
|
||||
id="rect851-8-3-8-3-37-8-5-8-6-0-0-6-2-8"
|
||||
width="62.825058"
|
||||
height="10.240829"
|
||||
x="96.890099"
|
||||
y="74.892128" />
|
||||
<rect
|
||||
y="59.359539"
|
||||
x="96.890099"
|
||||
height="10.240829"
|
||||
width="62.825058"
|
||||
id="rect851-8-3-8-3-37-8-5-8-6-0-0-6-2-8-3"
|
||||
style="opacity:1;fill:#484848;fill-opacity:1;stroke:none;stroke-width:3.71308;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000;stop-opacity:1"
|
||||
inkscape:export-xdpi="96.000023"
|
||||
inkscape:export-ydpi="96.000023" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 4.1 KiB |