Pdf.js Nasıl Kullanılır [kapalı]


92

Kullandığım düşünüyorum pdf.js (bir web sayfasındaki bir pdf nedeniyle yerleştirme sağlayan bir açık kaynak aracı). Nasıl kullanılacağına dair herhangi bir belge yok.

Yaptığım şeyin, başlıkta referans verilen komut dosyasıyla bir html sayfası yapmak olduğunu varsayıyorum ve sonra gövdeye, dosya adı ve konum dizisiyle bir tür işlev çağrısı koyuyorum. Biri bana yardım edebilir mi?


1
### Github Makalesi GitHub'daki proje wiki'sindeki bir web sitesinde PDF.js kurulumu makalesine başladım . ### Tamamlama İsteği Biraz deneyiminiz varsa lütfen makaleyi tamamlayın.
Édouard Lopez

Viewerjs.org gibi daha üst düzey bir şey muhtemelen istediğiniz şeydir.
en fazla

Gömülü xml dosyasını PDF'den çıkarmak istiyorum, bunu yapmanın bir yolu var mı?
Ananta Prasad

Yanıtlar:


33

Google'ı deneyin pdf.js documentation

/* create the PDF document */

var doc = new pdf();
doc.text(20, 20, 'hello, I am PDF.');
doc.text(20, 30, 'i was created in the browser using javascript.');
doc.text(20, 40, 'i can also be created from node.js');

/* Optional - set properties on the document */
doc.setProperties({
  title: 'A sample document created by pdf.js',
  subject: 'PDFs are kinda cool, i guess',        
  author: 'Marak Squires',
  keywords: 'pdf.js, javascript, Marak, Marak Squires',
  creator: 'pdf.js'
});

doc.addPage();
doc.setFontSize(22);
doc.text(20, 20, 'This is a title');
doc.setFontSize(16); 
doc.text(20, 30, 'This is some normal sized text underneath.');

var fileName = "testFile"+new Date().getSeconds()+".pdf";
var pdfAsDataURI = doc.output('datauri', {"fileName":fileName});

NOT: Burada bahsedilen "pdf.js" projesi https://github.com/Marak/pdf.js'dir ve bu yanıtın gönderilmesinden bu yana kullanımdan kaldırılmıştır. @ Treffynnon'un yanıtı, çoğu araştırmacının arayacağı hala aktif olan Mozilla projesi ( https://github.com/mozilla/pdf.js ) hakkındadır.


Bunu gördüm ama var = dosya isminin yukarısındaki şeyler konusunda kafam karıştı. Bu doc.addPage () 'den herhangi birine doc.text'e ve bunun üzerinde triple doc.texts'e ihtiyacım var mı?
Chris

Başka bir soru neyi değiştirmek zorunda olduğum olacaktır. Son satırın ilk "dosya adını" değiştirmem gerektiğini ve doc özelliklerini varsayıyorum. Öyle mi?
Chris

25
Bu farklı bir pdf.js değil mi?
İsviçre

@Swiss, bu Şubat ayından, olumlu oylarla ve yanıt olarak işaretlendi. OP'nin aradığı şeyin bu olduğunu söyleyebilirim.
James Hill

14
Evet bu yüzden çok kafa karıştırıcıydı. Operasyon, görünüşe göre pdf'leri html olarak görüntülemek için mozilla projesine atıfta bulunuyor, ancak bağlantı kurduğunuz blogda atıfta bulunulan proje, javascript kullanarak pdf dosyaları oluşturmak için farklı bir proje.
İsviçre

50

Github benioku dosyasında mevcut belgeler vardır . Onlar alıntı Aşağıdaki örnek kod :

/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */

//
// See README for overview
//

'use strict';

//
// Fetch the PDF document from the URL using promises
//
PDFJS.getDocument('helloworld.pdf').then(function(pdf) {
  // Using promise to fetch the page
  pdf.getPage(1).then(function(page) {
    var scale = 1.5;
    var viewport = page.getViewport(scale);

    //
    // Prepare canvas using PDF page dimensions
    //
    var canvas = document.getElementById('the-canvas');
    var context = canvas.getContext('2d');
    canvas.height = viewport.height;
    canvas.width = viewport.width;

    //
    // Render PDF page into canvas context
    //
    var renderContext = {
      canvasContext: context,
      viewport: viewport
    };
    page.render(renderContext);
  });
});

19
Belgelenmemiş ancak pdf.js zip dosyasını çıkartıp dizin yapısını olduğu gibi bırakıyorsunuz. Daha sonra bir pdf görüntülemek için, dosyanın sonuna eklenmiş olarak viewer.html dosyasına (tarayıcı aracılığıyla) gidin. Ex yoursite.com/directory_that_viewer_._html_is_in/viewer.html?file=somepdfthatyouhave.pdf pdf konumu, viewer.html dosyasına bir GET değişkeni olarak aktarılır.
Craig Lafferty

4
Gönderen github wiki : "Kendi siteniz gömmek izleyiciye planlıyorsanız Ancak, bu sadece değiştirilmemiş bir sürüm olmayabilir ki sorma lütfen yeniden cilt it veya yapı bunun üzerine.". - korkunç bir şekilde var olmayan api belgeleri göz önüne alındığında, bu proje
formunuzu korumak
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.