unioffice/utils/utils.go
2024-11-22 00:17:48 +00:00

19 lines
1.1 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 utils ;import (_g "bytes";_aa "github.com/unidoc/unioffice/document";_d "github.com/unidoc/unioffice/document/convert";_e "github.com/unidoc/unipdf/v3/model";);
// GetNumPages will try to get actual document page count by converting the document to a PDF first
// and then get the actual page count from the PDF result.
//
// WARNING: This method is currently in experimental state as the PDF result might have incorrect page count.
func GetNumPages (d *_aa .Document )(int ,error ){var _c _g .Buffer ;_ag :=_d .ConvertToPdf (d );if _b :=_ag .Write (&_c );_b !=nil {return 0,_b ;};_ad ,_eb :=_e .NewPdfReader (_g .NewReader (_c .Bytes ()));if _eb !=nil {return 0,_eb ;};_gf ,_eb :=_ad .GetNumPages ();
if _eb !=nil {return 0,_eb ;};return _gf ,nil ;};