aboutsummaryrefslogtreecommitdiff
path: root/unipdf/internal/jbig2/decoder/decoder.go
diff options
context:
space:
mode:
Diffstat (limited to 'unipdf/internal/jbig2/decoder/decoder.go')
-rw-r--r--unipdf/internal/jbig2/decoder/decoder.go22
1 files changed, 22 insertions, 0 deletions
diff --git a/unipdf/internal/jbig2/decoder/decoder.go b/unipdf/internal/jbig2/decoder/decoder.go
new file mode 100644
index 0000000..6642ff3
--- /dev/null
+++ b/unipdf/internal/jbig2/decoder/decoder.go
@@ -0,0 +1,22 @@
+//
+// 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 decoder ;import (_b "github.com/unidoc/unipdf/v4/internal/bitwise";_df "github.com/unidoc/unipdf/v4/internal/jbig2/bitmap";_c "github.com/unidoc/unipdf/v4/internal/jbig2/document";_e "github.com/unidoc/unipdf/v4/internal/jbig2/errors";_d "image";
+);func (_eg *Decoder )DecodePageImage (pageNumber int )(_d .Image ,error ){const _ca ="\u0064\u0065\u0063od\u0065\u0072\u002e\u0044\u0065\u0063\u006f\u0064\u0065\u0050\u0061\u0067\u0065\u0049\u006d\u0061\u0067\u0065";_fa ,_ae :=_eg .decodePageImage (pageNumber );
+if _ae !=nil {return nil ,_e .Wrap (_ae ,_ca ,"");};return _fa ,nil ;};func (_ce *Decoder )decodePage (_be int )([]byte ,error ){const _fb ="\u0064\u0065\u0063\u006f\u0064\u0065\u0050\u0061\u0067\u0065";if _be < 0{return nil ,_e .Errorf (_fb ,"\u0069n\u0076\u0061\u006c\u0069d\u0020\u0070\u0061\u0067\u0065 \u006eu\u006db\u0065\u0072\u003a\u0020\u0027\u0025\u0064'",_be );
+};if _be > int (_ce ._af .NumberOfPages ){return nil ,_e .Errorf (_fb ,"p\u0061\u0067\u0065\u003a\u0020\u0027%\u0064\u0027\u0020\u006e\u006f\u0074 \u0066\u006f\u0075\u006e\u0064\u0020\u0069n\u0020\u0074\u0068\u0065\u0020\u0064\u0065\u0063\u006f\u0064e\u0072",_be );
+};_aeb ,_fg :=_ce ._af .GetPage (_be );if _fg !=nil {return nil ,_e .Wrap (_fg ,_fb ,"");};_dccg ,_fg :=_aeb .GetBitmap ();if _fg !=nil {return nil ,_e .Wrap (_fg ,_fb ,"");};_dccg .InverseData ();if !_ce ._ge .UnpaddedData {return _dccg .Data ,nil ;};
+return _dccg .GetUnpaddedData ();};func (_dcc *Decoder )PageNumber ()(int ,error ){const _cd ="\u0044e\u0063o\u0064\u0065\u0072\u002e\u0050a\u0067\u0065N\u0075\u006d\u0062\u0065\u0072";if _dcc ._af ==nil {return 0,_e .Error (_cd ,"d\u0065\u0063\u006f\u0064\u0065\u0072 \u006e\u006f\u0074\u0020\u0069\u006e\u0069\u0074\u0069a\u006c\u0069\u007ae\u0064 \u0079\u0065\u0074");
+};return int (_dcc ._af .NumberOfPages ),nil ;};func (_dc *Decoder )DecodeNextPage ()([]byte ,error ){_dc ._g ++;_gea :=_dc ._g ;return _dc .decodePage (_gea );};func (_eb *Decoder )decodePageImage (_fc int )(_d .Image ,error ){const _gd ="\u0064e\u0063o\u0064\u0065\u0050\u0061\u0067\u0065\u0049\u006d\u0061\u0067\u0065";
+if _fc < 0{return nil ,_e .Errorf (_gd ,"\u0069n\u0076\u0061\u006c\u0069d\u0020\u0070\u0061\u0067\u0065 \u006eu\u006db\u0065\u0072\u003a\u0020\u0027\u0025\u0064'",_fc );};if _fc > int (_eb ._af .NumberOfPages ){return nil ,_e .Errorf (_gd ,"p\u0061\u0067\u0065\u003a\u0020\u0027%\u0064\u0027\u0020\u006e\u006f\u0074 \u0066\u006f\u0075\u006e\u0064\u0020\u0069n\u0020\u0074\u0068\u0065\u0020\u0064\u0065\u0063\u006f\u0064e\u0072",_fc );
+};_ebe ,_de :=_eb ._af .GetPage (_fc );if _de !=nil {return nil ,_e .Wrap (_de ,_gd ,"");};_egb ,_de :=_ebe .GetBitmap ();if _de !=nil {return nil ,_e .Wrap (_de ,_gd ,"");};_egb .InverseData ();return _egb .ToImage (),nil ;};func Decode (input []byte ,parameters Parameters ,globals *_c .Globals )(*Decoder ,error ){_fge :=_b .NewReader (input );
+_ga ,_ab :=_c .DecodeDocument (_fge ,globals );if _ab !=nil {return nil ,_ab ;};return &Decoder {_aa :_fge ,_af :_ga ,_ge :parameters },nil ;};func (_f *Decoder )DecodePage (pageNumber int )([]byte ,error ){return _f .decodePage (pageNumber )};type Parameters struct{UnpaddedData bool ;
+Color _df .Color ;};type Decoder struct{_aa *_b .Reader ;_af *_c .Document ;_g int ;_ge Parameters ;}; \ No newline at end of file