2012-05-15 6 views
6

Yaklaşık 300 x 150 piksel boyutunda temel bir svg çini oluşturan bir uygulama var. Bu çini çoğaltmalıyım, böylece iki A4 sayfasından güzel bir çıktı veya tek bir A3 sayfası oluşturabilirim. Yani, temelde, sadece sayfa düzeni 101, Photoshop/neyse yerine svg yapıyorum.Yazıcı çıktısı için SVG oluşturma ve ölçekleme

Bunu nasıl başlatacağımı gösteren herhangi bir işaretçi verebilir mi? Şu anda, çok safça yapıyorum:

  1. set geniş bir tuval, yaklaşık 1500 x 1500 piksel
  2. ait
  3. baskı tarayıcısından JavaScript karo 4 x 6 kez yinelenen

Bu, ya daha az ya da daha az anlaşılabilir, ancak iyi görünmüyor. Bir A4 sayfasının fiziksel boyutuna sahip bir tuval kurmaya yardımcı olur mu? Bunu yaparsam, kiremitin şu anda piksel birimleri kullanarak oluşturduğum karmaşık bir grafik olması sorununu çözerim. Bunu yapsam bile, tarayıcı yine de tuval boyutunu göz ardı eder. Yoksa önce pdf'ye dönüştürmeli miyim? Bunu yaparsam, hala pdf'ye dönüşecek bir svg 'sayfasının nasıl ayarlanacağını öğrenmek zorundayım. Ve gerçekten herhangi bir araç svg 1.2 sayfa maddelerini destekliyor musunuz?

svg kodum tamamen JavaScript olduğundan, Inkscape kullanamayacağımı unutmayın.

+0

bazı ekran görüntüleri sağlayabilir iyi görünmediğini göstermek için? Eğer ideal olan bir jsfiddle sağlayabilirseniz, insanlar neyin yanlış gittiğine dair bir fikir edinebilirler. Ayrıca, SVG'den PDF'ye nasıl dönüştürebilirsiniz? Muhtemelen sunucuda bu işi yapıyorsun? – halfer

+0

10pt metninin 14pt olarak çıkarıldığı, sağ kenar boşluğunun kapalı olduğu ve sayfada araların kaybolduğu ve orada olduğunuz bir A4'ü basılı bir Word dokümanı düşünün. Yayınlamadan önce pdf dönüşümünü denemedim, ancak şimdi wkhtmltopdf'yi denedim. Tuvali 297x210mm olarak ayarlıyorum ve wkhtmltopdf'yi akıllı ölçekleme olmadan ve sıfır kenar boşlukları ile çalıştırırsam, çıktı oldukça ortalanmış olmasa bile bir A4 sayfasına sığar. Sorun o zaman mantıksal olan ve piksel olarak tasarlamamı sağlayan görüntü kutusunu ayarlamak için bir şey bulmaktır. Pikselleri bırakmak ve pts ve cm'ye geçmek zorunda kalabilirim. – EML

cevap

1

Bunun için tuval kullanmayın!

SVG noktası ölçeklenebilir grafiklerdir. SVG'yi tarayıcıda kendiniz ölçekleyebilir ve ardından buradan yazdırabilirsiniz.

sonra bir CSS ölçek uygulamak, ya tüm yapmanız gereken SVG ölçeklemek isterseniz:

http://jsfiddle.net/simonsarris/xYZyf/

Veya bir SVG ölçeği:

http://jsfiddle.net/simonsarris/xYZyf/1/

+0

CSS ölçeği, Temmuz 2014 itibariyle web tabanlı tarayıcılarda çalışmıyor gibi görünüyor –