Pdf formatlama ile ilgili bir sorunum var. Zaten pdf dosyasına metin ekliyorum ama sorun var - pdf nasıl görüneceğini bilmiyorum. Demek istediğim, bir şablondan çok fazla ve bir pdf üzerinde iyi bir yer ekliyorum, ancak başka bir metin üzerinde bazı önemli bilgileri kapsıyorum.Pdf'de pdf biçimlendirme
/**
* metoda dodaje podpis do pdf
* @param fileDokument
* @throws DocumentException
* @throws IOException
* @throws SQLException
*/
private void addSignatureToPdf(FileDokument fileDokument) throws DocumentException, IOException, SQLException {
java.util.Date dateToFind = Calendar.getInstance().getTime();
DecimalFormat df = new DecimalFormat("00");
DateTime dt = new DateTime();
int year = dt.getYear();
int month = dt.getMonthOfYear();
int day = dt.getDayOfMonth();
File f = new File(fileDokument.getFileNazwa());
String operator = produkt.getOperatorProwadzacyForRolaAndDate(dateToFind, 5).toString();
operator = operator.replaceAll("\\(.*\\)", "").trim();
PdfReader reader = new PdfReader(""+fileDokument.getFileNazwaFile());
int height = (int) reader.getPageSize(1).getHeight();
int width = (int) reader.getPageSize(1).getWidth();
int fontSize = getFontSizeAdjustingToScreenSize(height);
int marginCompatibility = getMarginCompatibilityAdjustingToScreenSize(width);
int heightBelow = getHeightBelowAdjustingToScreenSize(width);
File outFile = File.createTempFile("pismo_", ".pdf", MainApp.tmpDir);
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(outFile));
BaseFont bf = BaseFont.createFont(BaseFont.TIMES_ITALIC, codingType, false);
PdfContentByte over;
int total = reader.getNumberOfPages() + 1;
for (int a = 1; a < total; a++) {
stamper.setRotateContents(false);
over = stamper.getOverContent(a);
over.beginText();
over.setFontAndSize(bf,fontSize);
over.setTextMatrix(marginCompatibility, heightBelow);
over.showText("Za zgodność z oryginałem Radca Prawny " + operator + ", Wrocław, dnia " + df.format(day) + "-" + df.format(month) + "-" + year + "r. .................. (podpis)");
over.endText();
}
stamper.close();
MainApp.openFile(outFile);
}
Benim fikrim biraz daha küçük yapmak ve her zaman boş olacak ve herhangi bir metin kapsamaz TextField eklemek için pdf ölçek etmektir. Başka fikirlere yardımcı olabilir misiniz, lütfen?
bir sayfada boş alan bulmak için ölçeklendirilmeden denemek isterseniz, [Bu cevap] (http onu aramak nasıl: // stackoverflow.com/a/26503289/1729265) ilginizi çekebilir. – mkl
Sadece sayfanın altına metin eklemek istiyorum. Bu kodu, yalnızca metnin altındaki boş alanları bulmaya çalışacak şekilde değiştirebilirdim ancak ilk fikrimce daha karmaşık görünüyor. Yine de teşekkürler! – Michu93
Bu durumda lütfen [bu yanıt] 'a bakın (http://stackoverflow.com/a/34419296/1729265). ITextSharp ve C# içindir, ancak tercüme edilmesi kolay olmalıdır. Çeviri konusunda yardıma ihtiyacınız varsa, lütfen söyleyin. – mkl