aboutsummaryrefslogtreecommitdiff
path: root/unipdf/internal/integrations/unichart/unichart.go
diff options
context:
space:
mode:
Diffstat (limited to 'unipdf/internal/integrations/unichart/unichart.go')
-rw-r--r--unipdf/internal/integrations/unichart/unichart.go39
1 files changed, 39 insertions, 0 deletions
diff --git a/unipdf/internal/integrations/unichart/unichart.go b/unipdf/internal/integrations/unichart/unichart.go
new file mode 100644
index 0000000..3632b70
--- /dev/null
+++ b/unipdf/internal/integrations/unichart/unichart.go
@@ -0,0 +1,39 @@
+//
+// 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 unichart ;import (_a "bytes";_c "fmt";_cf "github.com/unidoc/unichart/render";_f "github.com/unidoc/unipdf/v4/common";_bc "github.com/unidoc/unipdf/v4/contentstream";_d "github.com/unidoc/unipdf/v4/contentstream/draw";_bb "github.com/unidoc/unipdf/v4/core";
+_b "github.com/unidoc/unipdf/v4/model";_ca "image/color";_eg "io";_g "math";);func (_cbf *Renderer )SetStrokeWidth (width float64 ){_cbf ._bf =width ;_cbf ._gd .Add_w (width )};func (_gag *Renderer )SetFont (font _cf .Font ){_ee ,_de :=font .(*_b .PdfFont );
+if !_de {_f .Log .Debug ("\u0045R\u0052\u004f\u0052\u003a\u0020\u0069\u006e\u0076\u0061\u006c\u0069d\u0020\u0066\u006f\u006e\u0074\u0020\u0074\u0079\u0070\u0065");return ;};_fab ,_de :=_gag ._fd [_ee ];if !_de {_fab =_ecc ("\u0046\u006f\u006e\u0074",1,_gag ._fb .HasFontByName );
+if _bce :=_gag ._fb .SetFontByName (_fab ,_ee .ToPdfObject ());_bce !=nil {_f .Log .Debug ("\u0045\u0052\u0052\u004f\u0052:\u0020\u0063\u006f\u0075\u006c\u0064\u0020\u006e\u006f\u0074\u0020\u0061\u0064d\u0020\u0066\u006f\u006e\u0074\u0020\u0025\u0076\u0020\u0074\u006f\u0020\u0072\u0065\u0073\u006f\u0075\u0072\u0063\u0065\u0073",_ee );
+};_gag ._fd [_ee ]=_fab ;};_gag ._gd .Add_Tf (_fab ,_gag ._da );_gag ._ed =_ee ;};func (_fdb *Renderer )SetStrokeColor (color _ca .Color ){_fdb ._gg =color ;_gf ,_ga ,_bg ,_ :=_fbg (color );_fdb ._gd .Add_RG (_gf ,_ga ,_bg );};func _cfgc (_bcc float64 )float64 {return _bcc *_g .Pi /180.0};
+func (_bbd *Renderer )SetFontColor (color _ca .Color ){_bbd ._bfd =color };func (_caab *Renderer )ArcTo (cx ,cy int ,rx ,ry ,startAngle ,deltaAngle float64 ){startAngle =_faa (2.0*_g .Pi -startAngle );deltaAngle =_faa (-deltaAngle );_bdf ,_bcd :=deltaAngle ,1;
+if _g .Abs (deltaAngle )> 90.0{_bcd =int (_g .Ceil (_g .Abs (deltaAngle )/90.0));_bdf =deltaAngle /float64 (_bcd );};var (_bgfb =_cfgc (_bdf /2);_dbe =_g .Abs (4.0/3.0*(1.0-_g .Cos (_bgfb ))/_g .Sin (_bgfb ));_dff =float64 (cx );_gae =float64 (cy ););for _ebg :=0;
+_ebg < _bcd ;_ebg ++{_fgb :=_cfgc (startAngle +float64 (_ebg )*_bdf );_dbg :=_cfgc (startAngle +float64 (_ebg +1)*_bdf );_ebc :=_g .Cos (_fgb );_cgb :=_g .Cos (_dbg );_daa :=_g .Sin (_fgb );_dg :=_g .Sin (_dbg );var _ag []float64 ;if _bdf > 0{_ag =[]float64 {_dff +rx *_ebc ,_gae -ry *_daa ,_dff +rx *(_ebc -_dbe *_daa ),_gae -ry *(_daa +_dbe *_ebc ),_dff +rx *(_cgb +_dbe *_dg ),_gae -ry *(_dg -_dbe *_cgb ),_dff +rx *_cgb ,_gae -ry *_dg };
+}else {_ag =[]float64 {_dff +rx *_ebc ,_gae -ry *_daa ,_dff +rx *(_ebc +_dbe *_daa ),_gae -ry *(_daa -_dbe *_ebc ),_dff +rx *(_cgb -_dbe *_dg ),_gae -ry *(_dg +_dbe *_cgb ),_dff +rx *_cgb ,_gae -ry *_dg };};if _ebg ==0{_caab ._gd .Add_l (_ag [0],_ag [1]);
+};_caab ._gd .Add_c (_ag [2],_ag [3],_ag [4],_ag [5],_ag [6],_ag [7]);};};func (_fgbf *Renderer )Stroke (){_fgbf ._gd .Add_S ()};func _bbdc (_aae _ca .Color )(uint8 ,uint8 ,uint8 ,uint8 ){_dgg ,_gde ,_dcf ,_edg :=_aae .RGBA ();return uint8 (_dgg >>8),uint8 (_gde >>8),uint8 (_dcf >>8),uint8 (_edg >>8);
+};func (_ecf *Renderer )wrapText (_gcd string )[]string {var (_aac []string ;_fff []rune ;);for _ ,_agf :=range _gcd {if _agf =='\n'{_aac =append (_aac ,string (_fff ));_fff =[]rune {};continue ;};_fff =append (_fff ,_agf );};if len (_fff )> 0{_aac =append (_aac ,string (_fff ));
+};return _aac ;};func (_faf *Renderer )SetFontSize (size float64 ){_faf ._da =size };func (_ac *Renderer )MoveTo (x ,y int ){_ac ._gd .Add_m (float64 (x ),float64 (y ))};func (_bbe *Renderer )Save (w _eg .Writer )error {if w ==nil {return nil ;};_ ,_ec :=_eg .Copy (w ,_a .NewBuffer (_bbe ._gd .Bytes ()));
+return _ec ;};func _faa (_cbcd float64 )float64 {return _cbcd *180/_g .Pi };func (_eb *Renderer )ResetStyle (){_eb .SetFillColor (_ca .Black );_eb .SetStrokeColor (_ca .Transparent );_eb .SetStrokeWidth (0);_eb .SetFont (_b .DefaultFont ());_eb .SetFontColor (_ca .Black );
+_eb .SetFontSize (12);_eb .SetTextRotation (0);};func (_db *Renderer )SetClassName (name string ){};type Renderer struct{_cfa int ;_ff int ;_ad float64 ;_gd *_bc .ContentCreator ;_fb *_b .PdfPageResources ;_fa _ca .Color ;_gg _ca .Color ;_bf float64 ;_ed *_b .PdfFont ;
+_da float64 ;_bfd _ca .Color ;_dd float64 ;_fd map[*_b .PdfFont ]_bb .PdfObjectName ;};func (_fg *Renderer )SetStrokeDashArray (dashArray []float64 ){_caa :=make ([]int64 ,len (dashArray ));for _dfe ,_dfec :=range dashArray {_caa [_dfe ]=int64 (_dfec );
+};_fg ._gd .Add_d (_caa ,0);};func (_gdd *Renderer )Circle (radius float64 ,x ,y int ){_dc :=radius ;if _aa :=_gdd ._bf ;_aa !=0{_dc -=_aa /2;};_fbf :=_dc *0.551784;_ddg :=_d .CubicBezierPath {Curves :[]_d .CubicBezierCurve {_d .NewCubicBezierCurve (-_dc ,0,-_dc ,_fbf ,-_fbf ,_dc ,0,_dc ),_d .NewCubicBezierCurve (0,_dc ,_fbf ,_dc ,_dc ,_fbf ,_dc ,0),_d .NewCubicBezierCurve (_dc ,0,_dc ,-_fbf ,_fbf ,-_dc ,0,-_dc ),_d .NewCubicBezierCurve (0,-_dc ,-_fbf ,-_dc ,-_dc ,-_fbf ,-_dc ,0)}};
+if _gce :=_gdd ._bf ;_gce !=0{_ddg =_ddg .Offset (_gce /2,_gce /2);};_ddg =_ddg .Offset (float64 (x ),float64 (y ));_d .DrawBezierPathWithCreator (_ddg ,_gdd ._gd );};func (_bfc *Renderer )QuadCurveTo (cx ,cy ,x ,y int ){_bfc ._gd .Add_v (float64 (x ),float64 (y ),float64 (cx ),float64 (cy ));
+};func (_gc *Renderer )LineTo (x ,y int ){_gc ._gd .Add_l (float64 (x ),float64 (y ))};func (_cb *Renderer )SetFillColor (color _ca .Color ){_cb ._fa =color ;_bgf ,_ffc ,_ggc ,_ :=_fbg (color );_cb ._gd .Add_rg (_bgf ,_ffc ,_ggc );};func NewRenderer (cc *_bc .ContentCreator ,res *_b .PdfPageResources )func (int ,int )(_cf .Renderer ,error ){return func (_cg ,_ge int )(_cf .Renderer ,error ){_cac :=&Renderer {_cfa :_cg ,_ff :_ge ,_ad :72,_gd :cc ,_fb :res ,_fd :map[*_b .PdfFont ]_bb .PdfObjectName {}};
+_cac .ResetStyle ();return _cac ,nil ;};};func (_dgb *Renderer )MeasureText (text string )_cf .Box {_acg :=_dgb ._da ;_gcg ,_afd :=_dgb ._ed .GetFontDescriptor ();if _afd !=nil {_f .Log .Debug ("W\u0041\u0052\u004e\u003a\u0020\u0055n\u0061\u0062\u006c\u0065\u0020\u0074o\u0020\u0067\u0065\u0074\u0020\u0066\u006fn\u0074\u0020\u0064\u0065\u0073\u0063\u0072\u0069\u0070\u0074o\u0072");
+}else {_gcb ,_cgd :=_gcg .GetCapHeight ();if _cgd !=nil {_f .Log .Debug ("\u0057\u0041\u0052\u004e\u003a\u0020\u0055\u006e\u0061\u0062\u006c\u0065\u0020t\u006f\u0020\u0067\u0065\u0074\u0020f\u006f\u006e\u0074\u0020\u0063\u0061\u0070\u0020\u0068\u0065\u0069\u0067\u0068t\u003a\u0020\u0025\u0076",_cgd );
+}else {_acg =_gcb /1000.0*_dgb ._da ;};};var (_cfg =0.0;_dea =_dgb .wrapText (text ););for _ ,_gfe :=range _dea {if _cae :=_dgb .getTextWidth (_gfe );_cae > _cfg {_cfg =_cae ;};};_ddgf :=_cf .NewBox (0,0,int (_cfg ),int (_acg ));if _bfe :=_dgb ._dd ;_bfe !=0{_ddgf =_ddgf .Corners ().Rotate (_bfe ).Box ();
+};return _ddgf ;};func _ecc (_aba string ,_cggd int ,_dcg func (_bb .PdfObjectName )bool )_bb .PdfObjectName {_ede :=_bb .PdfObjectName (_c .Sprintf ("\u0025\u0073\u0025\u0064",_aba ,_cggd ));for _cbc :=_cggd ;_dcg (_ede );{_cbc ++;_ede =_bb .PdfObjectName (_c .Sprintf ("\u0025\u0073\u0025\u0064",_aba ,_cbc ));
+};return _ede ;};func (_cd *Renderer )getTextWidth (_gb string )float64 {var _cdf float64 ;for _ ,_ccd :=range _gb {_ba ,_eca :=_cd ._ed .GetRuneMetrics (_ccd );if !_eca {_f .Log .Debug ("\u0045\u0052\u0052OR\u003a\u0020\u0075\u006e\u0073\u0075\u0070\u0070\u006fr\u0074e\u0064 \u0072u\u006e\u0065\u0020\u0025\u0076\u0020\u0069\u006e\u0020\u0066\u006f\u006e\u0074",_ccd );
+};_cdf +=_ba .Wx ;};return _cd ._da *_cdf /1000.0;};func (_ef *Renderer )Text (text string ,x ,y int ){_ef ._gd .Add_q ();_ef .SetFont (_ef ._ed );_daac ,_ged ,_fba ,_ :=_fbg (_ef ._bfd );_ef ._gd .Add_rg (_daac ,_ged ,_fba );_ef ._gd .Translate (float64 (x ),float64 (y )).Scale (1,-1);
+if _cfab :=_ef ._dd ;_cfab !=0{_ef ._gd .RotateDeg (_cfab );};_ef ._gd .Add_BT ().Add_TL (_ef ._da );var (_fbd =_ef ._ed .Encoder ();_fe =_ef .wrapText (text );_fc =len (_fe ););for _aaa ,_aaab :=range _fe {_ef ._gd .Add_TJ (_bb .MakeStringFromBytes (_fbd .Encode (_aaab )));
+if _aaa !=_fc -1{_ef ._gd .Add_Tstar ();};};_ef ._gd .Add_ET ();_ef ._gd .Add_Q ();};func (_dfc *Renderer )ClearTextRotation (){_dfc ._dd =0};func (_ab *Renderer )Close (){_ab ._gd .Add_h ()};func (_cc *Renderer )FillStroke (){_cc ._gd .Add_B ()};func (_df *Renderer )GetDPI ()float64 {return _df ._ad };
+func _fbg (_bgb _ca .Color )(float64 ,float64 ,float64 ,float64 ){_cfgd ,_cgg ,_bgbb ,_efd :=_bbdc (_bgb );return float64 (_cfgd )/255,float64 (_cgg )/255,float64 (_bgbb )/255,float64 (_efd )/255;};func (_eee *Renderer )SetTextRotation (radians float64 ){_eee ._dd =_faa (-radians )};
+func (_bd *Renderer )SetDPI (dpi float64 ){_bd ._ad =dpi };func (_aca *Renderer )Fill (){_aca ._gd .Add_f ()}; \ No newline at end of file