@@ -21,312 +21,5 @@ public IndexModel(Microsoft.AspNetCore.Hosting.IHostingEnvironment hostingEnviro
21
21
_hostingEnvironment = hostingEnvironment ;
22
22
_cache = cache ;
23
23
}
24
-
25
- public IActionResult OnPostLoad ( [ FromBody ] jsonObjects responseData )
26
- {
27
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
28
- MemoryStream stream = new MemoryStream ( ) ;
29
- var jsonObject = JsonConverterstring ( responseData ) ;
30
- object jsonResult = new object ( ) ;
31
- if ( jsonObject != null && jsonObject . ContainsKey ( "document" ) )
32
- {
33
- if ( bool . Parse ( jsonObject [ "isFileName" ] ) )
34
- {
35
- string documentPath = GetDocumentPath ( jsonObject [ "document" ] ) ;
36
- if ( ! string . IsNullOrEmpty ( documentPath ) )
37
- {
38
- byte [ ] bytes = System . IO . File . ReadAllBytes ( documentPath ) ;
39
- stream = new MemoryStream ( bytes ) ;
40
- }
41
- else
42
- {
43
- string fileName = jsonObject [ "document" ] . Split ( new string [ ] { "://" } , StringSplitOptions . None ) [ 0 ] ;
44
- if ( fileName == "http" || fileName == "https" )
45
- {
46
- WebClient WebClient = new WebClient ( ) ;
47
- byte [ ] pdfDoc = WebClient . DownloadData ( jsonObject [ "document" ] ) ;
48
- stream = new MemoryStream ( pdfDoc ) ;
49
- }
50
- else
51
- return this . Content ( jsonObject [ "document" ] + " is not found" ) ;
52
- }
53
- }
54
- else
55
- {
56
- byte [ ] bytes = Convert . FromBase64String ( jsonObject [ "document" ] ) ;
57
- stream = new MemoryStream ( bytes ) ;
58
- }
59
- }
60
- jsonResult = pdfviewer . Load ( stream , jsonObject ) ;
61
- return Content ( JsonConvert . SerializeObject ( jsonResult ) ) ;
62
- }
63
-
64
- public Dictionary < string , string > JsonConverterstring ( jsonObjects results )
65
- {
66
- Dictionary < string , object > resultObjects = new Dictionary < string , object > ( ) ;
67
- resultObjects = results . GetType ( ) . GetProperties ( BindingFlags . Instance | BindingFlags . Public )
68
- . ToDictionary ( prop => prop . Name , prop => prop . GetValue ( results , null ) ) ;
69
- var emptyObjects = ( from kv in resultObjects
70
- where kv . Value != null
71
- select kv ) . ToDictionary ( kv => kv . Key , kv => kv . Value ) ;
72
- Dictionary < string , string > jsonResult = emptyObjects . ToDictionary ( k => k . Key , k => k . Value . ToString ( ) ) ;
73
- return jsonResult ;
74
- }
75
-
76
- //Post action for processing the PDF documents.
77
- public IActionResult OnPostRenderPdfPages ( [ FromBody ] jsonObjects responseData )
78
- {
79
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
80
- var jsonObject = JsonConverterstring ( responseData ) ;
81
- object jsonResult = pdfviewer . GetPage ( jsonObject ) ;
82
- return Content ( JsonConvert . SerializeObject ( jsonResult ) ) ;
83
- }
84
-
85
- //Post action for unloading and disposing the PDF document resources
86
- public IActionResult OnPostUnload ( [ FromBody ] jsonObjects responseData )
87
- {
88
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
89
- var jsonObject = JsonConverterstring ( responseData ) ;
90
- pdfviewer . ClearCache ( jsonObject ) ;
91
- return this . Content ( "Document cache is cleared" ) ;
92
- }
93
-
94
- //Post action for rendering the ThumbnailImages
95
- public IActionResult OnPostRenderThumbnailImages ( [ FromBody ] jsonObjects responseData )
96
- {
97
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
98
- var jsonObject = JsonConverterstring ( responseData ) ;
99
- object result = pdfviewer . GetThumbnailImages ( jsonObject ) ;
100
- return Content ( JsonConvert . SerializeObject ( result ) ) ;
101
- }
102
-
103
- //Post action for processing the bookmarks from the PDF documents
104
- public IActionResult OnPostBookmarks ( [ FromBody ] jsonObjects responseData )
105
- {
106
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
107
- var jsonObject = JsonConverterstring ( responseData ) ;
108
- object jsonResult = pdfviewer . GetBookmarks ( jsonObject ) ;
109
- return Content ( JsonConvert . SerializeObject ( jsonResult ) ) ;
110
- }
111
-
112
- //Post action for rendering the annotation comments
113
- public IActionResult OnPostRenderAnnotationComments ( [ FromBody ] jsonObjects responseData )
114
- {
115
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
116
- var jsonObject = JsonConverterstring ( responseData ) ;
117
- object jsonResult = pdfviewer . GetAnnotationComments ( jsonObject ) ;
118
- return Content ( JsonConvert . SerializeObject ( jsonResult ) ) ;
119
- }
120
-
121
- //Post action for exporting the annotations
122
- public IActionResult OnPostExportAnnotations ( [ FromBody ] jsonObjects responseData )
123
- {
124
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
125
- var jsonObject = JsonConverterstring ( responseData ) ;
126
- string jsonResult = pdfviewer . ExportAnnotation ( jsonObject ) ;
127
- return Content ( jsonResult ) ;
128
- }
129
-
130
- //Post action for importing the annotations
131
- public IActionResult OnPostImportAnnotations ( [ FromBody ] jsonObjects responseData )
132
- {
133
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
134
- var jsonObject = JsonConverterstring ( responseData ) ;
135
- string jsonResult = string . Empty ;
136
- object JsonResult ;
137
- if ( jsonObject != null && jsonObject . ContainsKey ( "fileName" ) )
138
- {
139
- string documentPath = GetDocumentPath ( jsonObject [ "fileName" ] ) ;
140
- if ( ! string . IsNullOrEmpty ( documentPath ) )
141
- {
142
- jsonResult = System . IO . File . ReadAllText ( documentPath ) ;
143
- }
144
- else
145
- {
146
- return this . Content ( jsonObject [ "document" ] + " is not found" ) ;
147
- }
148
- }
149
- else
150
- {
151
- string extension = Path . GetExtension ( jsonObject [ "importedData" ] ) ;
152
- if ( extension != ".xfdf" )
153
- {
154
- JsonResult = pdfviewer . ImportAnnotation ( jsonObject ) ;
155
- return Content ( JsonConvert . SerializeObject ( JsonResult ) ) ;
156
- }
157
- else
158
- {
159
- string documentPath = GetDocumentPath ( jsonObject [ "importedData" ] ) ;
160
- if ( ! string . IsNullOrEmpty ( documentPath ) )
161
- {
162
- byte [ ] bytes = System . IO . File . ReadAllBytes ( documentPath ) ;
163
- jsonObject [ "importedData" ] = Convert . ToBase64String ( bytes ) ;
164
- JsonResult = pdfviewer . ImportAnnotation ( jsonObject ) ;
165
- return Content ( JsonConvert . SerializeObject ( JsonResult ) ) ;
166
- }
167
- else
168
- {
169
- return this . Content ( jsonObject [ "document" ] + " is not found" ) ;
170
- }
171
- }
172
- }
173
- return Content ( jsonResult ) ;
174
- }
175
-
176
- //Post action for downloading the PDF documents
177
- public IActionResult OnPostDownload ( [ FromBody ] jsonObjects responseData )
178
- {
179
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
180
- var jsonObject = JsonConverterstring ( responseData ) ;
181
- string documentBase = pdfviewer . GetDocumentAsBase64 ( jsonObject ) ;
182
- return Content ( documentBase ) ;
183
- }
184
-
185
- //Post action for printing the PDF documents
186
- public IActionResult OnPostPrintImages ( [ FromBody ] jsonObjects responseData )
187
- {
188
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
189
- var jsonObject = JsonConverterstring ( responseData ) ;
190
- object pageImage = pdfviewer . GetPrintImage ( jsonObject ) ;
191
- return Content ( JsonConvert . SerializeObject ( pageImage ) ) ;
192
- }
193
-
194
- public IActionResult OnPostExportFormFields ( [ FromBody ] jsonObjects responseData )
195
-
196
- {
197
- PdfRenderer pdfviewer = new PdfRenderer ( _cache ) ;
198
- var jsonObject = JsonConverterstring ( responseData ) ;
199
- string jsonResult = pdfviewer . ExportFormFields ( jsonObject ) ;
200
- return Content ( jsonResult ) ;
201
- }
202
-
203
- //Gets the path of the PDF document
204
- private string GetDocumentPath ( string document )
205
- {
206
- string documentPath = string . Empty ;
207
- if ( ! System . IO . File . Exists ( document ) )
208
- {
209
- string basePath = _hostingEnvironment . WebRootPath ;
210
- string dataPath = string . Empty ;
211
- dataPath = basePath + "/" ;
212
- if ( System . IO . File . Exists ( dataPath + ( document ) ) )
213
- documentPath = dataPath + document ;
214
- }
215
- else
216
- {
217
- documentPath = document ;
218
- }
219
- return documentPath ;
220
- }
221
- }
222
-
223
- public class jsonObjects
224
- {
225
-
226
- public string document { get ; set ; }
227
-
228
- public string password { get ; set ; }
229
-
230
- public bool isClientsideLoading { get ; set ; }
231
-
232
- public string organizePages { get ; set ; }
233
-
234
- public string zoomFactor { get ; set ; }
235
-
236
- public string isFileName { get ; set ; }
237
-
238
- public string xCoordinate { get ; set ; }
239
-
240
- public string yCoordinate { get ; set ; }
241
-
242
- public string pageNumber { get ; set ; }
243
-
244
- public string documentId { get ; set ; }
245
-
246
- public string hashId { get ; set ; }
247
-
248
- public string sizeX { get ; set ; }
249
-
250
- public string sizeY { get ; set ; }
251
-
252
- public string startPage { get ; set ; }
253
-
254
- public string endPage { get ; set ; }
255
-
256
- public string stampAnnotations { get ; set ; }
257
-
258
- public string textMarkupAnnotations { get ; set ; }
259
-
260
- public string stickyNotesAnnotation { get ; set ; }
261
-
262
- public string shapeAnnotations { get ; set ; }
263
-
264
- public string measureShapeAnnotations { get ; set ; }
265
-
266
- public string action { get ; set ; }
267
-
268
- public string pageStartIndex { get ; set ; }
269
-
270
- public string pageEndIndex { get ; set ; }
271
-
272
- public string fileName { get ; set ; }
273
-
274
- public string elementId { get ; set ; }
275
-
276
- public string pdfAnnotation { get ; set ; }
277
-
278
- public string importPageList { get ; set ; }
279
-
280
- public string uniqueId { get ; set ; }
281
-
282
- public string data { get ; set ; }
283
-
284
- public string viewPortWidth { get ; set ; }
285
-
286
- public string viewportHeight { get ; set ; }
287
-
288
- public string tilecount { get ; set ; }
289
-
290
- public bool isCompletePageSizeNotReceived { get ; set ; }
291
-
292
- public string freeTextAnnotation { get ; set ; }
293
-
294
- public string signatureData { get ; set ; }
295
-
296
- public string fieldsData { get ; set ; }
297
-
298
- public string formDesigner { get ; set ; }
299
-
300
- public bool isSignatureEdited { get ; set ; }
301
-
302
- public string inkSignatureData { get ; set ; }
303
-
304
- public bool hideEmptyDigitalSignatureFields { get ; set ; }
305
-
306
- public bool showDigitalSignatureAppearance { get ; set ; }
307
-
308
- public bool digitalSignaturePresent { get ; set ; }
309
-
310
- public string tileXCount { get ; set ; }
311
-
312
- public string tileYCount { get ; set ; }
313
-
314
- public string digitalSignaturePageList { get ; set ; }
315
-
316
- public string annotationCollection { get ; set ; }
317
-
318
- public string annotationsPageList { get ; set ; }
319
-
320
- public string formFieldsPageList { get ; set ; }
321
-
322
- public bool isAnnotationsExist { get ; set ; }
323
-
324
- public bool isFormFieldAnnotationsExist { get ; set ; }
325
-
326
- public string documentLiveCount { get ; set ; }
327
-
328
- public string annotationDataFormat { get ; set ; }
329
-
330
- public string importedData { get ; set ; }
331
24
}
332
25
}
0 commit comments