import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.util.Calendar; import wkc.pdf.Info; import wkc.pdf.PdfException; import wkc.pdf.tool.Field; import wkc.pdf.tool.Quadding; import wkc.pdf.tool.Report; import wkc.pdf.tool.ReportException; /* * Tips1 : 文字間ピッチを調整する。 */ public class Tips1 { //WPRLのホームディレクトリを設定 static { System.getProperties().setProperty("wkc.pdf.lib.home", "C:\\Program Files\\wkc-pdflib");//適宜修正してください } private static File FORM_DIRECTORY_ROOT = new File("./form"); private static File OUTPUT_DIRECTORY_ROOT = new File("."); private static String leftFieldNamePrefix = "xCode"; public static void main(String[] args) throws IOException, ReportException, PdfException { System.getProperties().setProperty("wkc.pdf.lib.home", "C:\\Program Files\\wkc-pdflib"); File outPdfFile = new File(OUTPUT_DIRECTORY_ROOT, "Tips1.pdf"); File formFile = new File(FORM_DIRECTORY_ROOT, "Tips1.pdf"); File datFile = new File(FORM_DIRECTORY_ROOT, "Tips1.dat"); FileOutputStream fout = new FileOutputStream(outPdfFile); Report report = null; try { report = new Report(formFile, datFile, fout); report.setDefaultFontSize(14.0f); //*********** 文字間ピッチを調整しない場合************************* report.createPage(1); report.putFieldData("xSyozoku", "XX事業所 YY部"); report.putFieldData("xName", "川鉄 太郎"); report.putFieldData("xTel", "内線:2411"); report.putFieldData("xGinkouNm1", "東西銀行"); report.putFieldData("xShitenmei1", "栄"); Field field = report.getField("xKozinCode"); field.setFontSize(16.0f); report.putFieldData(field, "000000"); field = report.getField("xKouzaNum1"); field.setFontSize(20.0f); report.putFieldData(field, "2345678"); field = report.getField("xYubin2-1"); field.setFontSize(20.0f); report.putFieldData(field, "234"); field = report.getField("xYubin2-2"); field.setFontSize(20.0f); report.putFieldData(field, "5678910"); field = report.getField("xGetsugaku1"); field.setFontSize(20.0f); report.putFieldData(field, "30"); field = report.getField("xShouyo1"); field.setFontSize(20.0f); report.putFieldData(field, "500"); //*********** 文字間ピッチを設定した場合************************* report.createPage(1); report.putFieldData("xSyozoku", "XX事業所 YY部"); report.putFieldData("xName", "川鉄 太郎"); report.putFieldData("xTel", "内線:2411"); report.putFieldData("xGinkouNm1", "東西銀行"); report.putFieldData("xShitenmei1", "栄"); field = report.getField("xKozinCode"); field.setFontSize(16.0f); field.setTextCharacterSpace(16.0f); report.putFieldData(field, "000000"); field = report.getField("xKouzaNum1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); report.putFieldData(field, "2345678"); field = report.getField("xYubin2-1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); report.putFieldData(field, "234"); field = report.getField("xYubin2-2"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); report.putFieldData(field, "5678910"); field = report.getField("xGetsugaku1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); field.setQuadding(Quadding.RIGHT); report.putFieldData(field, "30"); field = report.getField("xShouyo1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); field.setQuadding(Quadding.RIGHT); report.putFieldData(field, "500"); //*********** フィールド内余白を設定した場合************************* report.createPage(1); report.putFieldData("xSyozoku", "XX事業所 YY部"); report.putFieldData("xName", "川鉄 太郎"); report.putFieldData("xTel", "内線:2411"); report.putFieldData("xGinkouNm1", "東西銀行"); report.putFieldData("xShitenmei1", "栄"); field = report.getField("xKozinCode"); field.setFontSize(16.0f); field.setTextCharacterSpace(16.0f); field.setInternalPadding(new float[] { 0.0f, 0.0f, 4.0f, 0.0f }); report.putFieldData(field, "000000"); field = report.getField("xKouzaNum1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); field.setInternalPadding(new float[] { 0.0f, 0.0f, 5.0f, 0.0f }); report.putFieldData(field, "2345678"); field = report.getField("xYubin2-1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); field.setInternalPadding(new float[] { 0.0f, 0.0f, 5.0f, 0.0f }); report.putFieldData(field, "234"); field = report.getField("xYubin2-2"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); field.setInternalPadding(new float[] { 0.0f, 0.0f, 4.6f, 0.0f }); report.putFieldData(field, "5678910"); field = report.getField("xGetsugaku1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); field.setInternalPadding(new float[] { 0.0f, 0.0f, 6.5f, 0.0f }); field.setQuadding(Quadding.RIGHT); report.putFieldData(field, "30"); field = report.getField("xShouyo1"); field.setFontSize(20.0f); field.setTextCharacterSpace(13.8f); field.setInternalPadding(new float[] { 0.0f, 0.0f, 6.5f, 0.0f }); field.setQuadding(Quadding.RIGHT); report.putFieldData(field, "500"); //***********文書情報の設定************************* Info info = report.getDocument().getInfo(); info.setAuthor("川鉄情報システム Web/OO部 川鉄太郎"); info.setTitle("[Tips1]文字間ピッチを調整する"); info.setCreationDate(Calendar.getInstance()); info.setModDate(Calendar.getInstance()); report.close(); report = null; } finally { fout.close(); if (report != null) { try { //必ずclose()を呼びます。 report.close(); } catch (ReportException e) { //例外処理 } } } } }