UNPKG

4.22 kBTypeScriptView Raw
1import { RendererFactory2 } from '@angular/core';
2import { Subject } from 'rxjs';
3import { EditorAnnotation } from './options/editor-annotations';
4import { PdfLayer } from './options/optional_content_config';
5import { PDFPrintRange } from './options/pdf-print-range';
6import * as i0 from "@angular/core";
7export interface FindOptions {
8 highlightAll?: boolean;
9 matchCase?: boolean;
10 wholeWords?: boolean;
11 matchDiacritics?: boolean;
12}
13export interface PDFExportScaleFactor {
14 width?: number;
15 height?: number;
16 scale?: number;
17}
18type DirectionType = 'ltr' | 'rtl' | 'both' | undefined;
19export interface PdfImageParameters {
20 urlOrDataUrl: string;
21 page?: number;
22 left?: number | string;
23 bottom?: number | string;
24 right?: number | string;
25 top?: number | string;
26 rotation?: 0 | 90 | 180 | 270;
27}
28export interface Line {
29 x: number;
30 y: number;
31 width: number;
32 height: number;
33 direction: DirectionType;
34 text: string;
35}
36export interface Section {
37 x: number;
38 y: number;
39 width: number;
40 height: number;
41 direction: DirectionType;
42 lines: Array<Line>;
43}
44export declare class NgxExtendedPdfViewerService {
45 private rendererFactory;
46 ngxExtendedPdfViewerInitialized: boolean;
47 recalculateSize$: Subject<void>;
48 secondaryMenuIsEmpty: boolean;
49 private renderer;
50 constructor(rendererFactory: RendererFactory2);
51 find(text: string, options?: FindOptions): boolean;
52 findNext(): boolean;
53 findPrevious(): boolean;
54 print(printRange?: PDFPrintRange): void;
55 removePrintRange(): void;
56 setPrintRange(printRange: PDFPrintRange): void;
57 filteredPageCount(pageCount: number, range: PDFPrintRange): number;
58 isInPDFPrintRange(pageIndex: number, printRange: PDFPrintRange): boolean;
59 getPageAsLines(pageNumber: number): Promise<Array<Line>>;
60 getPageAsText(pageNumber: number): Promise<string>;
61 private convertTextInfoToText;
62 getPageAsImage(pageNumber: number, scale: PDFExportScaleFactor, background?: string, backgroundColorToReplace?: string): Promise<any>;
63 private draw;
64 private getPageDrawContext;
65 getCurrentDocumentAsBlob(): Promise<Blob>;
66 getFormData(currentFormValues?: boolean): Promise<Array<Object>>;
67 /**
68 * Adds a page to the rendering queue
69 * @param {number} pageIndex Index of the page to render
70 * @returns {boolean} false, if the page has already been rendered
71 * or if it's out of range
72 */
73 addPageToRenderQueue(pageIndex: number): boolean;
74 isRenderQueueEmpty(): boolean;
75 hasPageBeenRendered(pageIndex: number): boolean;
76 private sleep;
77 renderPage(pageIndex: number): Promise<void>;
78 currentlyRenderedPages(): Array<number>;
79 numberOfPages(): number;
80 getCurrentlyVisiblePageNumbers(): Array<number>;
81 recalculateSize(): void;
82 listLayers(): Promise<Array<PdfLayer> | undefined>;
83 toggleLayer(layerId: string): Promise<void>;
84 scrollPageIntoView(pageNumber: number, pageSpot?: {
85 top?: number | string;
86 left?: number | string;
87 }): void;
88 getSerializedAnnotations(): EditorAnnotation[] | null;
89 addEditorAnnotation(serializedAnnotation: string | EditorAnnotation): void;
90 removeEditorAnnotations(filter?: (serialized: object) => boolean): void;
91 private loadImageAsDataURL;
92 addImageToAnnotationLayer({ urlOrDataUrl, page, left, bottom, right, top, rotation }: PdfImageParameters): Promise<void>;
93 currentPageIndex(): number;
94 private convertToPDFCoordinates;
95 switchAnnotationEdtorMode(mode: number): void;
96 set editorFontSize(size: number);
97 set editorFontColor(color: string);
98 set editorInkColor(color: string);
99 set editorInkOpacity(opacity: number);
100 set editorInkThickness(thickness: number);
101 set editorHighlightColor(color: string);
102 set editorHighlightDefaultColor(color: string);
103 set editorHighlightShowAll(showAll: boolean);
104 set editorHighlightThickness(thickness: number);
105 setEditorProperty(editorPropertyType: number, value: any): void;
106 static ɵfac: i0.ɵɵFactoryDeclaration<NgxExtendedPdfViewerService, never>;
107 static ɵprov: i0.ɵɵInjectableDeclaration<NgxExtendedPdfViewerService>;
108}
109export {};