diff options
author | Thomas Felber <felber@student.tugraz.at> | 2015-06-20 18:36:49 -1000 |
---|---|---|
committer | Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> | 2015-07-13 09:50:07 +0200 |
commit | e00c2911bf6b6f14ddfcc399683be8d8c958040f (patch) | |
tree | 21ba9d9a4fa4ef9ecc11234afd85c92eff96a576 /pdf-as-web/src/main/webapp/assets/js/jspdf/jspdf.js | |
parent | cb3c726d400e19fba8a2544e8e1decbd6e8eb368 (diff) | |
download | pdf-as-4-e00c2911bf6b6f14ddfcc399683be8d8c958040f.tar.gz pdf-as-4-e00c2911bf6b6f14ddfcc399683be8d8c958040f.tar.bz2 pdf-as-4-e00c2911bf6b6f14ddfcc399683be8d8c958040f.zip |
removed jspdf references
Diffstat (limited to 'pdf-as-web/src/main/webapp/assets/js/jspdf/jspdf.js')
-rw-r--r-- | pdf-as-web/src/main/webapp/assets/js/jspdf/jspdf.js | 304 |
1 files changed, 0 insertions, 304 deletions
diff --git a/pdf-as-web/src/main/webapp/assets/js/jspdf/jspdf.js b/pdf-as-web/src/main/webapp/assets/js/jspdf/jspdf.js deleted file mode 100644 index e4d2d6fc..00000000 --- a/pdf-as-web/src/main/webapp/assets/js/jspdf/jspdf.js +++ /dev/null @@ -1,304 +0,0 @@ - -/** - * jsPDF - * (c) 2009 James Hall - * - * Some parts based on FPDF. - */ - -var jsPDF = function(){ - - // Private properties - var version = '20090504'; - var buffer = ''; - - var pdfVersion = '1.3'; // PDF Version - var defaultPageFormat = 'a4'; - var pageFormats = { // Size in mm of various paper formats - 'a3': [841.89, 1190.55], - 'a4': [595.28, 841.89], - 'a5': [420.94, 595.28], - 'letter': [612, 792], - 'legal': [612, 1008] - }; - var textColor = '0 g'; - var page = 0; - var objectNumber = 2; // 'n' Current object number - var state = 0; // Current document state - var pages = new Array(); - var offsets = new Array(); // List of offsets - var lineWidth = 0.200025; // 2mm - var pageHeight; - var k; // Scale factor - var unit = 'mm'; // Default to mm for units - var fontNumber; // TODO: This is temp, replace with real font handling - var documentProperties = {}; - var fontSize = 16; // Default font size - var pageFontSize = 16; - - // Initilisation - if (unit == 'pt') { - k = 1; - } else if(unit == 'mm') { - k = 72/25.4; - } else if(unit == 'cm') { - k = 72/2.54; - } else if(unit == 'in') { - k = 72; - } - - // Private functions - var newObject = function() { - //Begin a new object - objectNumber ++; - offsets[objectNumber] = buffer.length; - out(objectNumber + ' 0 obj'); - } - - - var putHeader = function() { - out('%PDF-' + pdfVersion); - } - - var putPages = function() { - - // TODO: Fix, hardcoded to a4 portrait - var wPt = pageWidth * k; - var hPt = pageHeight * k; - - for(n=1; n <= page; n++) { - newObject(); - out('<</Type /Page'); - out('/Parent 1 0 R'); - out('/Resources 2 0 R'); - out('/Contents ' + (objectNumber + 1) + ' 0 R>>'); - out('endobj'); - - //Page content - p = pages[n]; - newObject(); - out('<</Length ' + p.length + '>>'); - putStream(p); - out('endobj'); - } - offsets[1] = buffer.length; - out('1 0 obj'); - out('<</Type /Pages'); - var kids='/Kids ['; - for (i = 0; i < page; i++) { - kids += (3 + 2 * i) + ' 0 R '; - } - out(kids + ']'); - out('/Count ' + page); - out(sprintf('/MediaBox [0 0 %.2f %.2f]', wPt, hPt)); - out('>>'); - out('endobj'); - } - - var putStream = function(str) { - out('stream'); - out(str); - out('endstream'); - } - - var putResources = function() { - putFonts(); - putImages(); - - //Resource dictionary - offsets[2] = buffer.length; - out('2 0 obj'); - out('<<'); - putResourceDictionary(); - out('>>'); - out('endobj'); - } - - var putFonts = function() { - // TODO: Only supports core font hardcoded to Helvetica - newObject(); - fontNumber = objectNumber; - name = 'Helvetica'; - out('<</Type /Font'); - out('/BaseFont /' + name); - out('/Subtype /Type1'); - out('/Encoding /WinAnsiEncoding'); - out('>>'); - out('endobj'); - } - - var putImages = function() { - // TODO - } - - var putResourceDictionary = function() { - out('/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]'); - out('/Font <<'); - // Do this for each font, the '1' bit is the index of the font - // fontNumber is currently the object number related to 'putFonts' - out('/F1 ' + fontNumber + ' 0 R'); - out('>>'); - out('/XObject <<'); - putXobjectDict(); - out('>>'); - } - - var putXobjectDict = function() { - // TODO - // Loop through images - } - - - var putInfo = function() { - out('/Producer (jsPDF ' + version + ')'); - if(documentProperties.title != undefined) { - out('/Title (' + pdfEscape(documentProperties.title) + ')'); - } - if(documentProperties.subject != undefined) { - out('/Subject (' + pdfEscape(documentProperties.subject) + ')'); - } - if(documentProperties.author != undefined) { - out('/Author (' + pdfEscape(documentProperties.author) + ')'); - } - if(documentProperties.keywords != undefined) { - out('/Keywords (' + pdfEscape(documentProperties.keywords) + ')'); - } - if(documentProperties.creator != undefined) { - out('/Creator (' + pdfEscape(documentProperties.creator) + ')'); - } - var created = new Date(); - var year = created.getFullYear(); - var month = (created.getMonth() + 1); - var day = created.getDate(); - var hour = created.getHours(); - var minute = created.getMinutes(); - var second = created.getSeconds(); - out('/CreationDate (D:' + sprintf('%02d%02d%02d%02d%02d%02d', year, month, day, hour, minute, second) + ')'); - } - - var putCatalog = function () { - out('/Type /Catalog'); - out('/Pages 1 0 R'); - // TODO: Add zoom and layout modes - out('/OpenAction [3 0 R /FitH null]'); - out('/PageLayout /OneColumn'); - } - - function putTrailer() { - out('/Size ' + (objectNumber + 1)); - out('/Root ' + objectNumber + ' 0 R'); - out('/Info ' + (objectNumber - 1) + ' 0 R'); - } - - var endDocument = function() { - state = 1; - putHeader(); - putPages(); - - putResources(); - //Info - newObject(); - out('<<'); - putInfo(); - out('>>'); - out('endobj'); - - //Catalog - newObject(); - out('<<'); - putCatalog(); - out('>>'); - out('endobj'); - - //Cross-ref - var o = buffer.length; - out('xref'); - out('0 ' + (objectNumber + 1)); - out('0000000000 65535 f '); - for (var i=1; i <= objectNumber; i++) { - out(sprintf('%010d 00000 n ', offsets[i])); - } - //Trailer - out('trailer'); - out('<<'); - putTrailer(); - out('>>'); - out('startxref'); - out(o); - out('%%EOF'); - state = 3; - } - - var beginPage = function() { - page ++; - // Do dimension stuff - state = 2; - pages[page] = ''; - - // TODO: Hardcoded at A4 and portrait - pageHeight = pageFormats['a4'][1] / k; - pageWidth = pageFormats['a4'][0] / k; - } - - var out = function(string) { - if(state == 2) { - pages[page] += string + '\n'; - } else { - buffer += string + '\n'; - } - } - - var _addPage = function() { - beginPage(); - // Set line width - out(sprintf('%.2f w', (lineWidth * k))); - - // Set font - TODO - // 16 is the font size - pageFontSize = fontSize; - out('BT /F1 ' + parseInt(fontSize) + '.00 Tf ET'); - } - - // Add the first page automatically - _addPage(); - - // Escape text - var pdfEscape = function(text) { - return text.replace(/\\/g, '\\\\').replace(/\(/g, '\\(').replace(/\)/g, '\\)'); - } - - return { - addPage: function() { - _addPage(); - }, - text: function(x, y, text) { - // need page height - if(pageFontSize != fontSize) { - out('BT /F1 ' + parseInt(fontSize) + '.00 Tf ET'); - pageFontSize = fontSize; - } - var str = sprintf('BT %.2f %.2f Td (%s) Tj ET', x * k, (pageHeight - y) * k, pdfEscape(text)); - out(str); - }, - setProperties: function(properties) { - documentProperties = properties; - }, - addImage: function(imageData, format, x, y, w, h) { - - }, - output: function(type, options) { - endDocument(); - if(type == undefined) { - return buffer; - } - if(type == 'datauri') { - document.location.href = 'data:application/pdf;base64,' + Base64.encode(buffer); - } - // @TODO: Add different output options - }, - setFontSize: function(size) { - fontSize = size; - } - } - -};
\ No newline at end of file |