2023-02-07 17:17:49 +00:00

23 lines
3.6 KiB
Go

//
// 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 (_e "github.com/unidoc/unipdf/v3/internal/bitwise";_eg "github.com/unidoc/unipdf/v3/internal/jbig2/bitmap";_d "github.com/unidoc/unipdf/v3/internal/jbig2/document";_ff "github.com/unidoc/unipdf/v3/internal/jbig2/errors";_b "image";
);func (_gd *Decoder )decodePage (_gg int )([]byte ,error ){const _dc ="\u0064\u0065\u0063\u006f\u0064\u0065\u0050\u0061\u0067\u0065";if _gg < 0{return nil ,_ff .Errorf (_dc ,"\u0069n\u0076\u0061\u006c\u0069d\u0020\u0070\u0061\u0067\u0065 \u006eu\u006db\u0065\u0072\u003a\u0020\u0027\u0025\u0064'",_gg );
};if _gg > int (_gd ._ba .NumberOfPages ){return nil ,_ff .Errorf (_dc ,"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",_gg );
};_ce ,_bb :=_gd ._ba .GetPage (_gg );if _bb !=nil {return nil ,_ff .Wrap (_bb ,_dc ,"");};_ege ,_bb :=_ce .GetBitmap ();if _bb !=nil {return nil ,_ff .Wrap (_bb ,_dc ,"");};_ege .InverseData ();if !_gd ._gb .UnpaddedData {return _ege .Data ,nil ;};return _ege .GetUnpaddedData ();
};func (_abf *Decoder )PageNumber ()(int ,error ){const _cd ="\u0044e\u0063o\u0064\u0065\u0072\u002e\u0050a\u0067\u0065N\u0075\u006d\u0062\u0065\u0072";if _abf ._ba ==nil {return 0,_ff .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 (_abf ._ba .NumberOfPages ),nil ;};func (_gcf *Decoder )DecodePage (pageNumber int )([]byte ,error ){return _gcf .decodePage (pageNumber )};func (_ab *Decoder )DecodeNextPage ()([]byte ,error ){_ab ._gc ++;_c :=_ab ._gc ;return _ab .decodePage (_c );
};type Decoder struct{_g *_e .Reader ;_ba *_d .Document ;_gc int ;_gb Parameters ;};func (_ec *Decoder )DecodePageImage (pageNumber int )(_b .Image ,error ){const _egb ="\u0064\u0065\u0063od\u0065\u0072\u002e\u0044\u0065\u0063\u006f\u0064\u0065\u0050\u0061\u0067\u0065\u0049\u006d\u0061\u0067\u0065";
_a ,_gbg :=_ec .decodePageImage (pageNumber );if _gbg !=nil {return nil ,_ff .Wrap (_gbg ,_egb ,"");};return _a ,nil ;};func Decode (input []byte ,parameters Parameters ,globals *_d .Globals )(*Decoder ,error ){_edg :=_e .NewReader (input );_cec ,_cg :=_d .DecodeDocument (_edg ,globals );
if _cg !=nil {return nil ,_cg ;};return &Decoder {_g :_edg ,_ba :_cec ,_gb :parameters },nil ;};func (_bf *Decoder )decodePageImage (_ed int )(_b .Image ,error ){const _ge ="\u0064e\u0063o\u0064\u0065\u0050\u0061\u0067\u0065\u0049\u006d\u0061\u0067\u0065";
if _ed < 0{return nil ,_ff .Errorf (_ge ,"\u0069n\u0076\u0061\u006c\u0069d\u0020\u0070\u0061\u0067\u0065 \u006eu\u006db\u0065\u0072\u003a\u0020\u0027\u0025\u0064'",_ed );};if _ed > int (_bf ._ba .NumberOfPages ){return nil ,_ff .Errorf (_ge ,"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",_ed );
};_dcb ,_be :=_bf ._ba .GetPage (_ed );if _be !=nil {return nil ,_ff .Wrap (_be ,_ge ,"");};_ad ,_be :=_dcb .GetBitmap ();if _be !=nil {return nil ,_ff .Wrap (_be ,_ge ,"");};_ad .InverseData ();return _ad .ToImage (),nil ;};type Parameters struct{UnpaddedData bool ;
Color _eg .Color ;};