2014-10-05 21 views
5

Java'da, yerel ortama göre varsayılan kağıt boyutuna karar vermek için kullanabileceğim bir şey var mı?Yerel ayara göre varsayılan kağıt boyutuna karar vermek için herhangi bir şey var mı?

Bir web uygulaması oluşturuyorum ve bir PDF belgesi oluşturmamız gerekiyor. Boyutu yerel olarak bağlı olarak, mektup, yasal, A4, vb olabilir. Web uygulamasından, ziyaretçinin ülke gibi bilgilerini alabilirim.

+0

Harf ve A3 çok çok farklı boyutları vardır. – NPE

+0

Seni inandığını biliyorum. Letter' vs A4'. –

+0

Boris, teşekkürler. A3'ü A4 olarak değiştirdim. – curious1

cevap

2

java.awt.PageAttributes sadece setMediaToDefault() adlı bir yönteme sahiptir. Amerika Birleşik Devletleri ve Kanada'da yerel ayarlar için

varsayılan boyut MediaType.NA_LETTER şudur: onun javadoc inanıyorsanız

. Diğer tüm yerel ayarlar için varsayılan boyut, MediaType.ISO_A4. Eğer istiyorsanız

Yani, uygulanmasını ödünç çalmak:

public void setMediaToDefault(){ 
    String defaultCountry = Locale.getDefault().getCountry(); 
    if (defaultCountry != null && 
     (defaultCountry.equals(Locale.US.getCountry()) || 
     defaultCountry.equals(Locale.CANADA.getCountry()))) { 
     setMedia(MediaType.NA_LETTER); 
    } else { 
     setMedia(MediaType.ISO_A4); 
    } 
} 
+0

Mureinik, bilgileriniz için teşekkürler. Tüm dünya ya LETTER (ABD ve Kanada) ya da A4 (gerisini) kullanıyorsa. O zaman yeterince basit olmalı. Şerefe. – curious1

İlgili konular