From 7d58c9f1aed1eaa3e28332a1b4d28cb1294b10cf Mon Sep 17 00:00:00 2001 From: minjaesong Date: Sat, 18 May 2024 20:12:22 +0900 Subject: [PATCH] btex: tag underlines --- lib/TerrarumSansBitmap.jar | 4 ++-- src/net/torvald/btex/BTeXDocument.kt | 5 +++-- src/net/torvald/btex/BTeXParser.kt | 10 +++++----- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/lib/TerrarumSansBitmap.jar b/lib/TerrarumSansBitmap.jar index 113957c3c..6e4e4afe8 100644 --- a/lib/TerrarumSansBitmap.jar +++ b/lib/TerrarumSansBitmap.jar @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b4d2a294ba3782e26d9b833498916bf8ac5f89ff844f261c8f44496f5057746a -size 207149 +oid sha256:d432622f0d985325d7cc63321040032d72fcd3ac32f724d0a78b8f7de8bce782 +size 207366 diff --git a/src/net/torvald/btex/BTeXDocument.kt b/src/net/torvald/btex/BTeXDocument.kt index 77690c51b..f6e03ac64 100644 --- a/src/net/torvald/btex/BTeXDocument.kt +++ b/src/net/torvald/btex/BTeXDocument.kt @@ -356,7 +356,7 @@ data class BTeXClickable( } fun drawUnderline(pixmap: Pixmap, doc: BTeXDocument) { - if (drawUnderline && width > 1) { + if (drawUnderline) { val x = posX - HBPADH + doc.pageMarginH val y = posY - HBPADV + doc.pageMarginV + UNDERLINE_Y val width = width + HBPADH @@ -391,7 +391,8 @@ class BTeXPage( if (drawCall.isNotBlank()) drawCalls.add(drawCall) } fun appendClickable(clickable: BTeXClickable) { - clickableElements.add(clickable) + if (clickable.width > 1) + clickableElements.add(clickable) } private var prerender = false diff --git a/src/net/torvald/btex/BTeXParser.kt b/src/net/torvald/btex/BTeXParser.kt index 15402e6c6..ed2e6f542 100644 --- a/src/net/torvald/btex/BTeXParser.kt +++ b/src/net/torvald/btex/BTeXParser.kt @@ -1717,8 +1717,8 @@ object BTeXParser { // get width of "word" val searchStrs = slugs.typesettedSlugs.subList(subset.first, subset.first + subset.second) searchStrs.forEach { str -> -// printdbg("2HREF searchStr: ${str.toReadable()}") -// printdbg("2HREF object: ${objSeq.toReadable()} (id=${hrefDict[objSeq.toReadable()]})") + printdbg("2HREF searchStr: ${str.toReadable()}") + printdbg("2HREF object: ${objSeq.toReadable()} (id=${hrefDict[objSeq.toReadable()]})") val indexOfSequence = str.indexOfSequence(objSeq) @@ -1739,8 +1739,8 @@ object BTeXParser { // retrieve the actual word val substr = CodepointSequence(str.subList(wordOffset + 1, wordEnd)) -// printdbg("2HREF word: ${substr.toReadable()}") -// printdbg("2HREF hrefObj: ${hrefObj}") + printdbg("2HREF word: ${substr.toReadable()}") + printdbg("2HREF hrefObj: ${hrefObj}") val hrefX = if (objectIsSplit) 0 else hrefObj.x var hrefY = hrefObj.y; if (objectIsSplit) hrefY += doc.lineHeightInPx @@ -1754,7 +1754,7 @@ object BTeXParser { } // target word is on the next line (probably) else { -// printdbg("2HREF object was cut off by the linebreak") + printdbg("2HREF object was cut off by the linebreak") objectIsSplit = true } }