From e17a425dfb3382310fb5863f516dacdca9f44956 Mon Sep 17 00:00:00 2001 From: leshe4ka46 Date: Sun, 19 Oct 2025 14:47:59 +0300 Subject: fuck the unipdf licencing --- unipdf/textshaping/textshaping.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 unipdf/textshaping/textshaping.go (limited to 'unipdf/textshaping') diff --git a/unipdf/textshaping/textshaping.go b/unipdf/textshaping/textshaping.go new file mode 100644 index 0000000..23f80d0 --- /dev/null +++ b/unipdf/textshaping/textshaping.go @@ -0,0 +1,16 @@ +// +// Copyright 2020 FoxyUtils ehf. All rights reserved. +// +// This is a commercial product and requires a license to operate. +// A trial license can be obtained at https://unidoc.io +// +// DO NOT EDIT: generated by unitwist Go source code obfuscator. +// +// Use of this source code is governed by the UniDoc End User License Agreement +// terms that can be accessed at https://unidoc.io/eula/ + +package textshaping ;import (_a "github.com/unidoc/garabic";_ba "golang.org/x/text/unicode/bidi";_f "strings";); + +// ArabicShape returns shaped arabic glyphs string. +func ArabicShape (text string )(string ,error ){_d :=_ba .Paragraph {};_d .SetString (text );_ag ,_c :=_d .Order ();if _c !=nil {return "",_c ;};for _e :=0;_e < _ag .NumRuns ();_e ++{_bac :=_ag .Run (_e );_fb :=_bac .String ();if _bac .Direction ()==_ba .RightToLeft {var (_ec =_a .Shape (_fb ); +_g =[]rune (_ec );_ff =make ([]rune ,len (_g )););_gd :=0;for _gf :=len (_g )-1;_gf >=0;_gf --{_ff [_gd ]=_g [_gf ];_gd ++;};_fb =string (_ff );text =_f .Replace (text ,_f .TrimSpace (_bac .String ()),_fb ,1);};};return text ,nil ;}; \ No newline at end of file -- cgit v1.2.3