• 締切済み

JSP: テキストからPDF作成

以前も質問してJSPでテキストファイルから、PDFを作成できるようになったのですが。 HTMLタグ(主にテーブルタグです。)が書いてあるテキストファイルを読み込み、PDFファイルにブラウザでの表示と同じようにテーブルを出力したいのです。 現在、1行ごとに判定して<tr>や<td>がでたらcell.setRowspan();とかで作り直す方法を考えていますが、この場合、その他のタグに対応しきれないと思います。 何か良い方法をご存知の方教えてください。よろしくお願いします。

  • Java
  • 回答数1
  • ありがとう数0

みんなの回答

noname#45950
noname#45950
回答No.1

HTMLを一種のXMLととらえ、DOMで処理しては、どうですか?

関連するQ&A

  • JSPでデータ一覧表示

    JSP+Bean+Servletで作っています。 BeanでDB接続、データを取得して、 それをJSPで一覧表示として表示させたいのですが、 どのタグを使えばいいのでしょうか。 また、その場合、タグは、Servletとか Beanでかく必要がありますか。 たとえば、今、DBに30個データがある場合、 JSPでそれをTABLEタグを使って 一覧表示させますよね。 でもJSP側では、<TR><TD></TD></TR>の データをいくつセットできるか、っていう 数がきまってますよね。てことは、 ServletとかBeanでHTMLのタグをうって 表示させないといけないんですか??? やりたいことは、BeanとかServletで タグは書かずに、JSPでパラメータだけ 受け取って、その数だけデータを 表示させたいんです。 (JSPだけでタグをかいて、パラメータで わたってきたデータを表示させたい。) そういうことってできますか?? ・・・説明がうまく出来てないかとは思うのですが よろしくお願いします。

    • ベストアンサー
    • Java
  • scriptとJSPについて質問です。

    scriptとJSPについて質問です。 現在は下記のソースのように追加ボタンを押すことで、 テキストボックスがどんどん追加されていきます。最上行削除ボタンで一番上のテキストボックスは消せます。 最下行削除ボタンで一番下のテキストボックスは消せます。 この削除の仕様が悪くて、 追加された全てのテキストボックスの前にチェックボックスを入れて、 チェックしたもののみを削除ボタンで消すようにしたいです。 どのようにソースを書くのかをご教示いただきたいです。 「現在のscriptソース」 function AddTableRows1(){ var counter = 0; counter++; var table1 = document.getElementById("table1"); var row1 = table1.insertRow(counter); var cell1 = row1.insertCell(0); var cell2 = row1.insertCell(1); var cell3 = row1.insertCell(2); cell1.setAttribute("class","name"); cell2.setAttribute("class","naiyo"); cell3.setAttribute("class","zyoukyou"); var HTML1 = '<input name="gyoumuname" ID="gyoumuname" type="text" name="width:100em;height:10em">'; var HTML2 = '<textarea name="gyoumunaiyo" ID="gyoumunaiyo" Style="width:50em;height:5em"></textarea>'; var HTML3 = '<input name="gyoumuzyoukyou" ID="gyoumuzyoukyou" type="text" name="width:100em;height:10em">'; cell1.innerHTML = HTML1; cell2.innerHTML = HTML2; cell3.innerHTML = HTML3; } function DelTalbeFirstRow1(){ var table1 = document.getElementById("table1"); if(table1.rows.length > 1){ table1.deleteRow(1); } } function DelTalbeLastRow1(){ var table1 = document.getElementById("table1"); if(table1.rows.length > 1){ table1.deleteRow(table1.rows.length-1); } } 「JSPソース」 <tr> <th>タイトル</th><th>内容</th><th>状況</th> </tr> </table> <input type="button" value="追加" onClick="AddTableRows1();" /> <input type="button" value="最上行削除" onclick="DelTalbeFirstRow1();" /> <input class="btn1" type="button" value="最下行削除" onclick="DelTalbeLastRow1();" />

  • JSPとjavaの問題

    ResultSet rs = db.getResultSet("SELECT * FROM SHAINLIST "); ArrayList list = new ArrayList(); while(rs.next()) { int state = rs.getInt("attendance"); list.add(new Integer(state)); } int[] in = new int[list.size()]; for (int i = 0; i < list.size(); i++) { in[i] = ((Integer)list.get(i)).intValue(); } %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>JSPでDB接続</title> </head> <body> <table> <tr><td>欠席</td><td>><%= countNum(-1, in) %></td></tr> <tr><td>未定</td><td><%= countNum(-1, in) %></td></tr> <tr><td>出席</td><td><%= countNum(-1, in) %></td></tr> </table> 以下のエラーがでてきますが、どういう意味でしょうか。 org.apache.jasper.JasperException: JSPのクラスをコンパイルできません: JSPファイル: /jsp/tokei.jsp の中の26行目でエラーが発生しました The method countNum(int, int[]) is undefined for the type tokei_jsp 23: </head> 24: <body> 25: <table> 26: <tr><td>キ鄲ハ</td><td>><%= countNum(-1, in) %></td></tr> 27: <tr><td>フ、ト�</td><td>3</td></tr> 28: <tr><td>スミタハ</td><td>3</td></tr> 29: </table> よろしくおねがいします。

    • ベストアンサー
    • Java
  • JSPの実行結果をHTMLに変換

    全然知らないので的外れの質問だったらゴメンなさい。 JSPやCGIの実行結果のHPに表が表示されているとします。 その場合、そのHPのソースを[表示]→[ソース]で表示しても、 HTML形式のように[TR][TD]等のタグって見れないし、もちろん その内容のデータも見れないですよね。 [ファイル]→[名前を付けて保存]を行なってもやはりソースは 確認できませんでした。 何がしたいかと言うと、JSPの実行結果で表示されるHPの表を HTML形式のようにデータ(タグ付)をソースで取得したいのです。 そんな事は可能なのでしょうか? 何やら、JSPの結果で表示されているHPをHTMLに変換して取得 するツールがあると聞いた事があるのですが、どこを探しても 該当するツールは見付かりませんでした。 上記の機能を実現する方法、またはツールがあれば教えて下さい。

    • ベストアンサー
    • HTML
  • JSPファイルに書いたの各タグ情報を拾うには?

    JSPファイルの中に書いたHTMLやカスタムタグの情報を拾って テキストファイルに書き込みたいと思っています。 実際にやりたいことは、<INPUT>タグや、カスタムタグ<hoge>に付与した、 name属性の値を列挙したいという様な内容です。 例)JSPファイルに以下の様な入力項目を記述   <INPUT type="text" name="hoge1" value="10">   <INPUT type="text" name="hoge2" value="10">    :     ↓   テキストファイルに   hoge1   hoge2    : テキストファイルに書き出すという部分は分かりますが、JSPファイルから 各タグを判別し、その中のname属性の値を取得する・・・という部分が どうやってやろうかと困っています。 XMLのパーサを利用して・・・と考えたりもしましたが、HTMLの各タグは エンドタグが決まって記述されている訳ではないため、利用出来ないかも? と思っています。 何か良いものがあればと思っていますが、見つけられず、通常にファイルを オープンして入力項目タグがあるかどうか、ひとつずつ調べるという方法しか 思い付いていません。 もし何か良い方法があれば是非教えて下さい。

    • ベストアンサー
    • Java
  • HTMLページに外部テキストファイルを取り込むには?

    HTMLのページに、一部だけ外部ファイルのデータを取り込もうとしています。 <HTML> <BODY> <P><TABLE WIDTH="450" > <TR> <TD><IMG SRC="picture1.jpg"></TD> <TD >ここにJavascriptで自由更新文(1)を入れる</TD> </TR> </TABLE><BR> <TABLE WIDTH="450"> <TR> <TD><IMG SRC="picture2" ></TD> <TD>ここにJavascriptで自由更新文(2)を入れる</TD> </TR> </TABLE> </BODY> </HTML> 上のような、写真と説明文がセットになったテーブルがいくつか配置されているページがあるとします。 その説明文を、HTMLを見たこともない人物に自由に更新してもらわねばなりません。 そこで、例えば「1つめの写真の説明文は1.dat、2つめの写真の説明文は2.dat …と、単純にテキストだけを打った.datとか.txtファイルをサーバにアップロードしてもらい、htmlページはJavascriptでその.datファイルをテーブル内に読み込むようにして使いたいのですが、そのJavascriptはどんな書き方をすればよいでしょうか? <script type="text/javascript" src="1.js"></script>といったように読み込む場合、1.jsの内容は単純なテキストでなく document.write("これは例文です。"); // End といったように、ソースになっていなければダメですよね? これでは間違って「"」等を消されたらファイルが壊れてしまいます。このため、こういう内容でなく、「document.write("」や「");」や「// End 」も無い、単純なテキストだけを外部ファイルにすることはできないでしょうか?

  • 表の作成をスタイルシートで

    皆さんはHTMLで表を作成する際、どのように作成していますか? 私はTableタグとスタイルシートを使っているのですが、これをスタイルシートのみで 作成できないでしょうか。 例えば以下のような表で、■部分は他のセルと背景色を変えます。    ■□□    ■□□    ■□□ 通常私がやっている方法は、tableタグに下記スタイル「tb01」を、タイトル部分には 「td.title」を設定を設定しています。 -----------------HTML-------------------------- <table width="100%" border="0" cellspacing="1" cellpadding="0">  <tr>   <td class="title">6月7日</td>   <td>text</td> <td>text</td> <td>text</td>  </tr>  <tr>   <td class="title">6月8日</td>   <td>text</td> <td>text</td> <td>text</td>  </tr> </table> ---------------------------------------------------------- -----------------スタイルシート-------------------------- .tb01 {FONT-SIZE: 12px; border-collapse : collapse ;     border-width : 1px 0 0 1px ; border-style : solid ;     border-color : #CDCDCD ; ; width:350px; background-color:#FFFFFF;     } table.tb01 td {border-width : 0 1px 1px 0 ; border-style : solid ; padding : 7px ;         line-height:120%; border-color : #CDCDCD ; } td.title {background-color:#ECECEC;      } ---------------------------------------------------------- スタイルシートのみでは無理でも、もっと良い方法があれば 是非教えてください。

    • ベストアンサー
    • HTML
  • 今、HTMLメルマガを作成し、テスト配信等々をいろいろと試しているので

    今、HTMLメルマガを作成し、テスト配信等々をいろいろと試しているのですが、どうもoutlook2007だけエラーが発生します。どなたか解決策が分かる方いらっしゃいましたら、ご教授願えないでしょうか? ■発生するエラー HTML内の一部のテキストリンクがクリックできない。 画像に貼ったリンクはクリックできる。 全て同じレイアウトで記載しているため、エラーが発生していない箇所(正常にクリックできる)のHTMLソースをエラーが発生しているHTMLのソースに上書きしてもテキストリンクはクリック出来ない。 ■エラー発生の原因 いろいろと調べていくと、HTMLソースは全て、TABLEコーディングを使用しており、TABLEの中にTABLEを記載しているような状態です。その、階層が深くないとテキストリンクは正常にクリックでき、階層が深いとクリックできなくなります。 階層を浅くすると正常になるのですが、背景色などの関係で、これ以上、浅くは出来ない状態です。 ------------------------------------------ (例)階層が浅い例 <table> <tr> <td><table> <tr> <td>あああ</td> </tr> </table></td> </tr> </table> (例)階層が深い例 <table> <tr> <td><table> <tr> <td><table> <tr> <td><table> <tr> <td><table> <tr> <td>あああ</td> </tr> </table></td> </tr> </table></td> </tr> </table></td> </tr> </table></td> </tr> </table> ------------------------------------------ 以上が発生をしているエラーですが、どなたか、階層が深い状態でも 全てのテキストリンクがクリックできる方法はないでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • IE7でinputタグのtextがはみ出る

    いつもお世話になります。 以下のソースのように、テーブルのtdの中にinputタグのtextを、widthを100%にして配置しています。 IE7でこれを表示すると、はみ出るというか突き抜けるというか、、、 という状態になっています。 これがIE8以上からだと、box-sizingを使用すればうまくいくのですが、IE7以下ではこのCSSは使えません。 IE7において、tdの中にうまく収めるためには、どのようにすればよいのでしょうか。 --------------------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> </head> <body> <table border="1"> <tr> <th>テキスト</th> <td style="width: 100px;"> <input type="text" style="width: 100%;" /> </td> </tr> </table> </body> </html> --------------------------------------------- 宜しくお願いします。

    • ベストアンサー
    • CSS
  • ACCESSのテーブルをHTMLファイルで出力したい

    ACCESSのテーブルをHTMLファイルで出力したいと考えています。 VBAでプログラムを作成すればいいのでしょうか。 ACCESSははじめたばかりでよくわかりません。 丸投げのようで恐縮ですが、宜しくお願い致します。 *************************************** テーブル1 *************************************** ID 名前 住所 1 伊藤 愛知 2 加藤 大阪 3 稲垣 東京 … *************************************** 2.html *************************************** <html> <body> <table> <tr> <td>ID</td> <td>名前</td> <td>住所</td> </tr> <tr> <td> … ここにテーブル1のデータを出力したい … </table> </body> </html> *************************************** 2.htmlのファイルを出力するようなことをしたいと考えています。 宜しくお願いします。