Bugzilla – Attachment 99115 Details for
Bug 23488
Line wrapping doesn't always respect word order in Patron card creator
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 23488: Line wrapping doesn't always respect word order in Patron card creator
Bug-23488-Line-wrapping-doesnt-always-respect-word.patch (text/plain), 2.97 KB, created by
Bernardo Gonzalez Kriegel
on 2020-02-17 16:16:01 UTC
(
hide
)
Description:
Bug 23488: Line wrapping doesn't always respect word order in Patron card creator
Filename:
MIME Type:
Creator:
Bernardo Gonzalez Kriegel
Created:
2020-02-17 16:16:01 UTC
Size:
2.97 KB
patch
obsolete
>From ecfeed5a7b86bdd75471aba1a65658292ed988e6 Mon Sep 17 00:00:00 2001 >From: Maryse Simard <maryse.simard@inlibro.com> >Date: Wed, 21 Aug 2019 17:20:16 -0400 >Subject: [PATCH] Bug 23488: Line wrapping doesn't always respect word order in > Patron card creator > >When wrapping long lines of text, the line is divided by removing each >word from the end of the line and putting it in a new one until the line >is the right width. When the word to be removed appears multiple time >in the line, it is not the last occurrence that is removed. > >This patch changes the regular expression used to remove the part of >the text that is wrapped to a new line, making sure it removes it at >the end of the text. > >Test plan: > >1. Go to Tools > Patron card creator > >2. Have a card template and a card batch > -> If needs be, you can create them by using > New > Card template or New > Card batch > >3. Create a layout and use one text field containing a long text with > at least one word which is repeated a minimum of 2 times > (preferably towrdds the end of the text, since it has to be picked > as one of the words to appear in the new line). You can use this: > > one two three one two three one two three one two three > one two three one two three one two three one two three ... > >4. Go to Manage > Card batches and export a batch > >5. Choose the layout set up in 3. > >6. Click the Export button and open the resulting pdf file > >7. Notice all the repeated word have been grouped > -> For this example : all of the ones appear first, followed by > all the twos and only then the threes. > >8. Apply patch > >9. Repeat step 4 through 7 > => this time the order of the words has not changed! > >Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> >Work as described, no errors. >Tested adding addrees to test layout, and using the proposed >text. >--- > C4/Patroncards/Patroncard.pm | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/C4/Patroncards/Patroncard.pm b/C4/Patroncards/Patroncard.pm >index 661a9e8ac5..963aac8acf 100644 >--- a/C4/Patroncards/Patroncard.pm >+++ b/C4/Patroncards/Patroncard.pm >@@ -261,7 +261,7 @@ sub draw_text { > warn sprintf('Line wrap failed. DEBUG INFO: Data: \'%s\'\n Method: C4::Patroncards->draw_text Additional Information: Line wrap regexp failed. (Please file in this information in a bug report at http://bugs.koha-community.org', $line) and last WRAP_LINES if !$1; > $trim = $1 . $trim; > #Sanitize the input into this regular expression so regex metacharacters are escaped as literal values (https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=22429) >- $line =~ s/\Q$1\E//; >+ $line =~ s/\Q$1\E$//; > $string_width = C4::Creators::PDF->StrWidth($line, $text_attribs->{'font'}, $text_attribs->{'font_size'}); > # $font_units_width = $m->string_width($line); > # $string_width = ($font_units_width * $text_attribs->{'font_size'}) / $units_per_em; >-- >2.17.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 23488
:
92411
|
97030
|
97059
|
99115
|
99835