PHPでPDF
■ このスレッドは過去ログ倉庫に格納されています
0001外付けMO
NGNG+ libjpeg-6b + freetype-1.3.1 + GD1.8.3をインストールした
環境で、pdflib3.0.2を使ってPDF形式でファイルを出力させたい
んですけど、うまくいきません。
どなたか正攻法を教えてください。
(もしかして、TrueType使うのにX window関係もインストールしなきゃ
だめですか?)
0083nobodyさん
04/02/08 17:16ID:???CIDフォントの文字幅は全角と半角の2種類しかないと考えて
自分で文字列幅計算する関数を作ってやる。
どうせ日本語英数混在の文字列を表示する場合は、文字種ごとに
フォントを変更する処理が実質必要だし、一度作っておけばあとは
汎用的に使えるし。
0084森の妖精さん
04/02/15 17:34ID:hYQYfjkg0085nobodyさん
04/03/04 04:30ID:???0086nobodyさん
04/03/07 10:03ID:???0087nobodyさん
04/04/08 13:43ID:YbUNc2+o日本語はSJISでなら利用できるとのことですが、UTF-8を利用する
方法はないですかね。
>>86
PDFlibが使えない案件でUTF-8を使おうと思ったら、TeXでPDF作るのが
一番現実的な方法ですよ。
0088nobodyさん
04/04/10 12:00ID:???つまりPDFlibが使えるんならそっちの方が現実的ってことだよね。
んで、PDFlibが使えない場合に本当にTeXが現実的かっていうと、
PHPあきらめてJava+iTextの方が現実的のように思えるな。
自分サーバー使うにしてもレンタルサーバー使うにしても。
008987
04/04/10 20:06ID:???> >>87
> つまりPDFlibが使えるんならそっちの方が現実的ってことだよね。
ですね。
> んで、PDFlibが使えない場合に本当にTeXが現実的かっていうと、
> PHPあきらめてJava+iTextの方が現実的のように思えるな。
個人的にTeXやXML、HTML、SVG、Postscriptなんかのマーク
アップ言語に全く抵抗が無いし、ノウハウの蓄積もあるので、
そういう面の好みもある。
だから一番現実的というのは言い過ぎでした。
正直にいうと、iTextは使ったこと無いので調べてみます。
0090nobodyさん
04/05/27 15:52ID:???UTF-8はOlivierが対応しないって明言してるね
本家のjapanese.zipはSJISのみ対応だが、MBFPDFだとEUC-JPもOK
0091nobodyさん
04/05/27 16:06ID:???せっかくPDFがUnicodeをサポートしてるのにもったいないよね。
ていうか、Unicodeに対応すれば個別にローカライズする必要は無いんじゃないの?
と思う漏れは文字コードについてよく分かってませんです。はい。
0092nobodyさん
04/07/05 19:35ID:fxnV4X54それが使えればかなりいいんだけどなー
0093nobodyさん
04/07/05 21:02ID:???0095nobodyさん
04/07/09 23:22ID:???もし「ゴシックフォント」の意味を取り違えていたらごめん。
0096nobodyさん
04/07/10 00:50ID:JNqXTFjYそれってMSゴシックですよね。
Linuxなどでやろうとすると
ライセンス違反になってしまいますよね。
Windowsでやるならいいんでしょうけど。。。
0097nobodyさん
04/07/10 08:24ID:???FPDFを用いたPDF生成をLinux上でやる場合、のことだよね?
FPDFはフォント埋め込み機能を持たないのでメトリクス情報だけを使う。
だからMSゴシックのフォントそのものをLinuxに持ってく必要はないよ。
メトリクス情報はMBFPDFに添付されている。
MSゴシックを使ったPDFをLinux上で表示する場合、のことなら、
単に、代替フォントをリーダー側で指定しろという話だよね。
0098nobodyさん
04/07/10 14:41ID:???なるほどーーー
ではMBFPDFでMSゴシック指定で出力して
あとはそれを表示するクライアントに
MSゴシックがあればちゃんと表示されると。
試してみますーー
よくよく考えたらPに対応できないってことでしたっけ?
0100nobodyさん
04/07/11 23:11ID:???横からすみません
MBFPDFって使ったことないんだけど
本家にあるjapanese.zipとは違うんだよね?
日本語はそっちが主流なんですかね?
0101nobodyさん
04/07/12 11:23ID:???0102nobodyさん
04/07/12 15:09ID:???本家のjapanese.zipができる前に日本人がchinese.zipを元に作ったもの。
japanese.zipは何かあったら英語やフランス語での交渉になると思うと打つ。
010398
04/07/12 22:37ID:???でもMultiCellが思うようにいきません
指定した高さで均等割りになってしまうようで
上詰めで表示するにはどうしたらいいんでしょう?
japanese.zipでは
$pdf->MultiCell(50,5, "あいうえおあいうえおあいうえお", 0, 'L', 0);
とすると指定した幅でちゃんと折り返して表示されます。
(枠は別に書くようにしてました。)
MBFPDFで何行になるか分からないテキストの場合
どうやって表示してますか?
0104nobodyさん
04/07/13 10:14ID:???0105nobodyさん
04/07/13 11:40ID:???MultiCell で次ページに行くと Y が 0 からはじまるのですが、
何ページ目にいるか分かる方法はありますか?
010698
04/07/13 19:17ID:???ありがとうございます
GetStringWidthで地道にやってなんとかできそうです。
Pフォントでも全角文字だと固定幅になっちゃうんですね。
もうちょっと汎用的に使えるようにするためには
自分用に関数で覆わないと使い勝手がイマイチですね。
もちろんフリーなのはたいへんありがたいという前提ですが。
>>105
PageNoで取得できそうですけど。
0110nobodyさん
04/07/20 14:19ID:???前のページに遡るのって、帳票の先頭に合計値を書くとかってこと?
そういうのは先に全部計算しておいてから出力するのがセオリー。
0111nobodyさん
04/07/20 16:25ID:???105じゃないけど
MultiCellでページまたがると
カレントページが次のページにいってしまうので
ページまたがるMultiCellを横に2つ並べるようなのはできない
ってことかな?
※試してないので予想です
しかし本家(日本)はもりあがらないですね
0112nobodyさん
04/08/17 19:33ID:ETPrvogz印刷位置を調整することってできないのでしょうか?
プリンタに合わせて印刷位置を微調整するためには
PDFファイルを作るときにプリンタ印刷時のことを考えて
出力位置を調整するしかないですかね?
0113nobodyさん
04/08/19 19:44ID:???たぶんできないと思う
おれはアプリ(PHP)側で
印刷位置調整できる画面をつくってクッキーに書き込んで
その値をPDF作成時にオフセット値として使ってる。
でもそのPDFをクライアントで保存して
別のプリンタで印刷したいときとかズレちゃうんだよね。
白紙への印刷ならいいんだけど
汎用の請求書とかに印刷するときとか困る。
0114nobodyさん
04/10/17 18:01:02ID:ssVFckhAプレビュー(画面)の時は表示されるけど、
プリンターには印刷されないような線とか
文字って書く事はできますか?
0115nobodyさん
04/11/08 02:50:21ID:???PDFより軽い
0116nobodyさん
04/11/08 13:53:09ID:???0118nobodyさん
04/11/29 14:22:45ID:???http://pdf.sytes.net/Fpdf/FPDI.htm
PDFLibは個人向けには無料っつてもPDFLib Liteなんて機能少なすぎて
着手する気になれないっす。
0119nobodyさん
04/12/06 23:11:45ID:???0120nobodyさん
04/12/08 00:07:16ID:???サイズが大きくなるのとコンパイルに時間がかかるので、
大量生産には向かない。
>>118
低機能でも1postscript単位でミリミリに制御できるのがPDFlibの長所。
レイアウトや精度によってはFPDFも使い物になると思うよ。
0121nobodyさん
04/12/10 15:42:13ID:/dQOXU2xAcrobatで編集しようとすると
フォントがないって言われるのですが
どなたか回避方法をご存知ないでしょうか?
0122nobodyさん
04/12/13 13:33:31ID:???ごめん、わからん・・・
日本のユーザサイトも閑古鳥がないてるし
FPDFって廃れつつあるのかな?
他にいいツールがあればいいんだけど
0123nobodyさん
04/12/13 19:01:03ID:???0124nobodyさん
05/02/28 13:38:50ID:TxdrCB/rアクロバットで編集できないの?
FPDFのフォーラムでも回答がないみたいですね。
他のPDFLibとはは編集できるのでしょうか?
0125nobodyさん
05/03/16 14:05:51ID:???0126テスト ◆SQ2Wyjdi7M
2005/04/17(日) 13:51:07ID:???0127nobodyさん
2005/05/15(日) 20:30:55ID:???0128nobodyさん
2005/09/26(月) 11:07:42ID:???+ PHP4.2.4 + PDFlib5.0.0 という環境で
ローマ数字をPDFで表示させるためには
フォントの追加をすればいいのでしょうか?
0129nobodyさん
2006/03/01(水) 16:59:02ID:8+5yR/Ocってことでage
0131nobodyさん
2006/05/11(木) 22:58:38ID:5tgsOA9fフォントにArial Unicode MSを使用してみたのですが、出来上がった
PDFファイルのサイズが15M程になってしまいました。。
おそらく不要なフォントまで埋め込まれているためだと思うのですが、
埋め込むフォントを最小限に抑える方法はありませんか?
0132nobodyさん
2006/06/10(土) 23:42:29ID:FA8uMv8H0133nobodyさん
2006/07/31(月) 18:34:08ID:cfYgpsStUFPDFを改造するしかないのかな?
0134nobodyさん
2006/10/09(月) 12:22:49ID:ihs+diV50135nobodyさん
2006/11/27(月) 17:17:29ID:OoGgWVey0136nobodyさん
2006/12/22(金) 22:38:17ID:???まあ、つけると固まる制約とか色々な糞仕様は相変わらずだったけど・・・
0137nobodyさん
2006/12/23(土) 16:39:08ID:???0138nobodyさん
2006/12/23(土) 21:19:54ID:???最大行数を設定して(デフォルトはオート)、もしオーバーした場合処理が固まって帰ってこない。など。
日本語環境のみなのかはわからんけど、越したらエラー出すとか切るとかしてくれよとか思う
0139sage
2006/12/28(木) 17:15:28ID:???オプション指定しろや
0140nobodyさん
2006/12/31(日) 15:20:31ID:???0141nobodyさん
2006/12/31(日) 17:03:40ID:???ということが良く判る事例ですね
0142nobodyさん
2006/12/31(日) 20:25:15ID:???0143nobodyさん
2007/02/24(土) 21:14:21ID:???0144nobodyさん
2007/03/30(金) 23:20:55ID:LXJS9GGi0145nobodyさん
2007/04/14(土) 22:38:23ID:???0147nobodyさん
2007/04/19(木) 01:25:51ID:???nslookup で japansite.net 調べてもIP引けないし。
0148nobodyさん
2007/04/25(水) 01:05:04ID:???繋がらなかったのはなんだったんだろう?
0149nobodyさん
2007/04/27(金) 01:44:58ID:???Adobe Reader に
Resource/CIDFont/KozGoStd-Medium-Sub.otf
というフォントがついているのでそれを使いたいけど、
otf ファイルからフォントの設定を作る方法がわからん!
おしえてエロイひと
0150nobodyさん
2007/09/01(土) 23:20:07ID:???0151hoge
2007/12/11(火) 10:01:30ID:UKLpRyTV可能でしょうか?
背景の上に描画して背景もテキストも見えるのが目的です。
0153nobodyさん
2008/02/29(金) 20:34:41ID:???結構まだ、可能性があるはずなのに不便きわまりないんだがな。> PDF作成
で、最近お仕事が入るかも知れないので勉強中だが、UFPDFとTCPDFって物凄く似てない?
というかどっちかがパクリ?
いや、まだTCPDFの方は見てないんだけどな。これから見て同じなら物凄くがっくりだ。
0154nobodyさん
2008/03/24(月) 13:54:31ID:???何がありますか?なるべく安い(無料)が良いですが・・・
0155nobodyさん
2008/03/25(火) 18:38:18ID:???ソフトっていうのはよくわからんけど・・・
まず、データが圧縮されていないと大きくなるね
でスレ的に、PHP等で作るっていう前提で、フォント埋め込みがある場合、サブセット埋め込みに
対応しているかどうかが(当たり前だけど)一番大きい
逆に言うと、フォントの埋め込みがある場合は他の要素は無視していいレベルかもw
で、PHPのライブラリで無償でフォントのサブセット埋め込みに対応しているライブラリは実は俺が
欲しいんだが、誰か知らないかな・・・。
HALはサブセット埋め込み出来るんだけど、既存PDFの読み込みが出来ない・・・
結局、有料のPDFlib一択になりそうなのがすこーーーし寂しいんだ
Javaを使えるなら、iTextで良いんだけどね
0157nobodyさん
2008/05/13(火) 01:40:13ID:???TCPDF(http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf)
sfTCPDFPlugin(symfonyのプラグイン)
IPAのフリーフォント(http://ossipedia.ipa.go.jp/ipafont)
で試してみたけど、異常にファイルサイズが大きくて使い物にならない。
うまい方法ないかネェ…。
0158nobodyさん
2009/04/23(木) 23:03:03ID:OHxmLGc9という作業を行うページを作成したく思っています。
そのために必要なのは、基本的なPHPの知識と、FPDFでいいんですよね?
こういったPDF作成に関する初学者のための勉強書、勉強サイトはないものでしょうか?
0159158
2009/04/27(月) 22:42:43ID:rKa6RPjkどうもクラスの受け渡しがうまくいっていないようです。
http://wp.myopensrc.com/2009/01/fpdf/ を参考に、
MBFPDFを
11: require('fpdf.php'); // Original Class
12: require('rotation.php'); // ★追加
41: class MBFPDF extends PDF_Rotate // ★修正
rotation.phpを、
2: require('fpdf.php'); // ★修正
4: class PDF_Rotate extends FPDF //そのまま
としても、 Fatal error: Cannot redeclare class FPDF in C:\〜〜〜\fpdf.php on line 13
となってしまいます。 一体、どこが誤っているのでしょうか?
0160nobodyさん
2009/05/23(土) 16:40:43ID:???「使用ユーザーが多いイントラサイトの印字要望が多すぎる。何とかしろ。
予算はないし、金はかけない方向で、できればクライアントPCへの印字クライアントとかではない方向で。」
と言ったのでFPDFでPDF出力機能を付加した。A4一枚に収まるのようにデザインもある程度工夫した。
ユーザーテストではまぁ、好評だった。しかし、上司は
「俺が言ったのはそういうことじゃないんだよ。しょうがねぇ。俺が作る」
で、出来上がったのは 単にHTMLの<table>タグで幅を指定したファイルを別ウインドウで開くだけのPHPファイル。
フォントサイズの指定もなければスタイルシートも使用していない。つまり、ブラウザの機能で文字の大きさや表示
のパーセンテージを変えればA41枚には収まらないこともあり使い物にならないもの。
私は何か間違った事をしたのでしょうか?
0161nobodyさん
2009/05/24(日) 11:10:20ID:???間違ってるかどうかはお客さんに判断してもらったらいいじゃないかと。
せっかく作ったんだから、両方見せてさ。
んでお客さんが上司の方を選んだら、やっぱり何かあんたが間違ってたんだよ。
0162nobodyさん
2009/05/24(日) 11:28:15ID:???0163nobodyさん
2009/05/24(日) 11:52:02ID:???いろいろ作って見せるってのは、お客さんにも依るけど結構喜ばれるよね。
もちろん、ちゃんとそれぞれわかりやすく説明するのが大前提だけど。
で、こんな過疎スレでやるネタではないな
この板、愚痴スレとかなかったっけ。
>>158-159
たまたま来たのでレスしておくけど、エラーメッセージ自体は、
「同じ名前のクラスが2回以上定義されてます」ってくらいの意味だから、
その辺を確認してみては。
この場合は「FPDF」ってクラスが、2回(以上)宣言されちゃってるはず。
require しか使っていないのなら、require_once について調べてみて。
0164wfRtbBOuY
2009/10/23(金) 09:34:51ID:???0165nobodyさん
2009/12/17(木) 23:43:44ID:???0166nobodyさん
2010/11/01(月) 20:27:25ID:VGPQSaa/0167nobodyさん
2010/12/21(火) 09:27:46ID:???0168nobodyさん
2011/12/25(日) 08:31:58.74ID:kwh/UMP10169nobodyさん
2012/05/01(火) 09:06:59.67ID:3U5tZuFZhttp://www.pdflib.com/pdflib-cookbook/text-output/image-as-text-fill-color/
if (resx > 0) {
imagewidth = imagewidth * 72 / resx;
imageheight = imageheight * 72 / resy;
}
の72というのがどこから来るのか分からなくて困ってます。
教えてください。
0170nobodyさん
2012/05/01(火) 18:41:25.47ID:???/* Calculate the image dimensions for 72 dpi */
って書いてるが?
0172nobodyさん
2013/12/20(金) 20:24:15.96ID:???0173nobodyさん
2014/03/12(水) 19:34:59.57ID:???0174nobodyさん
2014/06/28(土) 12:38:27.57ID:???■ このスレッドは過去ログ倉庫に格納されています