Güvenli bir web sayfasının tam bir kopyasını vektör grafik formuna kaydedin


9

Bir web sayfasının tam bir kopyasını vektör grafik formunda kaydetmek istiyorum, bu yüzden bir ekran görüntüsü tekniği kullanamıyorum (çünkü görüntüyü rastor-grafik formunda saklıyor).

Safari, Chrome ve Firefox aracılığıyla 'pdf'ye yazdır' ve 'pdf olarak kaydet' seçeneklerini denedim. Bu çoğu zaman işe yarar. Ancak, kaydedilen pdf tüm web sayfaları için tam bir kopya değildir. Örneğin, bu web sayfasını pdf olarak kaydetmeyi deneyin ve upvote / downvote simgelerinin kaydedilen pdf'ye nasıl dahil edilmediğini not edin.

Ayrıca Safari ile bir WebArchive olarak kaydetmeyi denedim. Sorun burada ortaya çıkan dosyayı kırpmak gerekir ve nasıl bir WebArchive kırpmak bilmiyorum, çünkü önizleme onu açamıyor ve sadece Safari'de (kare bir) geri açılır.

Ayrıca web sayfasını pdf (vektör-grafik formu) olarak kaydetmek için tek tıklamayla çözüm sağlayan web tarayıcısı eklentilerini denedim. Bu daha iyi çalışır (tam sayfa kaydedilir) ve neredeyse bu sorunu çözer, ancak bu programlar sayfa URL'sini sorgulamak ve sonra sayfayı kaydetmek için bulut tabanlı bir programa göndererek çalışır. Bu, bu tekniğin oturum açmak için kimlik bilgilerime ihtiyaç duyan https siteleri için çalışmayacağı anlamına gelir.

Bu yüzden bir köşedeyim. Görüntülemek için giriş bilgilerimi gerektiren bir web sayfasının tam vektör-grafik kopyasını kaydetmeye çalışıyorum. Bunu nasıl yapabilirim?


1
Sanırım kafan karıştı - PDF bir vektör biçimi değil.
Kevin Panko

Karışık değil; sadece bir pdf vektör grafik şeyler saklayabilirsiniz bir kap olduğunu detay hakkında çok endişe değil, çünkü sorudaki ana nokta aktarılıyor olduğunu düşünüyorum
Clayton Stanley

Sorunuz "Bir web sayfasını tam olarak ekranda göründüğü gibi PDF dosyası olarak nasıl kaydedebilirim ve oturum açmak için şifre gerektiren bir sayfa ile nasıl çalışabilirim?"
Kevin Panko

Pdf olmak zorunda değildir; metnin vektör grafik biçiminde olduğu bir web sayfasını kaydetmenin tek yolu budur. Bu biçime bağlı kalmak zorunda değilim. Yine de ikinci notun başlığına güvenli ekleyeceğim, böylece daha iyi vurgulanacak.
Clayton Stanley

Yanıtlar:


6

Sayfayı PDF olarak yazdırırken, sayfayı ekranda görüntülerken gördüğünüzden farklı sonuçlar alıyorsunuz.

Bunun nedeni, web sayfasının yazdırılırken sayfayı değiştiren bir CSS stil sayfası içermesidir.

Bu soru bu sorunu önlemenize yardımcı olacaktır: Ekran stil sayfasıyla nasıl yazdırabilirim?

Ekrandaki stil sayfasıyla sayfayı yazdırmak için oradaki talimatları izleyin.

Sonra PDF'ye yazdırabilmeli ve ekranda gördüğünüzle aynı sonucu alabilmelisiniz.


1
Tam dokümantasyon için Chrome Web Geliştirici eklentisini kullandım ve bu eklenti aracılığıyla css'yi düzenledim. Google Chrome'un yerleşik Geliştirici Araçları'nı kullanarak css'yi düzenledikten sonra yazdırma sayfasını güncelleyemedim, ancak bunun nedeni büyük olasılıkla bu aracı bilmiyorum.
Clayton Stanley

4

Biraz komut dosyasından korkmuyorsanız, http://phantomjs.org/ adresinden OSX için phantomjs uygulamasını kullanmayı deneyebilirsiniz.

Daha sonra rasterize.js komut dosyasını kullanarak dahil edilen ikili dosyayı aşağıdaki gibi bir komutla çalıştırın:

phantomjs.exe rasterize.js http://www.example.com/sitepage 8.5in*11in outfile.pdf

Birkaç not:

  • Buna 'rasterize.js' denir ancak metnin kendisi PDF'ye gerçek metin olarak kaydedilir.

  • Windows kimlik doğrulaması kullanarak güvenli bir siteye kimlik doğrulama, sayfa nesnesini başlattıktan sonra rasterize.js komut dosyasına birkaç satır ekleyerek gerçekleştirilebilir:

var page = zorunlu ('web sayfası'). create (),
    system = zorunlu ('sistem'),
    adres, çıktı, boyut;
    page.settings.userName = "serviceUserName"; // bunları ekledim
    page.settings.password = "servicePassword"; // 2 satır burada

if (system.args.length 5) {

phantomjs kayalar!
Matthew Lock
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.