- PR -

バーコードの縦書き

1
投稿者投稿内容
未記入
大ベテラン
会議室デビュー日: 2008/07/11
投稿数: 182
投稿日時: 2009-03-07 21:37
こんにちは。

VS2005-C#で開発してます。

PDFLib7を使って、PDFに印字しているのですが、バーコードを縦印字する修正がはいりました。
今までは、CODE39.tiffのフォントを使って横に印字してただけなのですが、どのように修正すればよいのでしょうか?

PDFlib pdf = new PDFlib();
pdf.show_xy("*" + BARCODE + "*", X, Y);

WEBで検索すると縦印字用のフォントを使い、印字するような事が書かれてましたが、できれば印字した箇所を座標xyで回転させたいのですが・・。パラメータでrotateと言うのがあり期待しているのですが(バーコードの下にも番号を記述している為)。

お分かりになりましたら、よろしくお願いします。
ぽぴ王子
ぬし
会議室デビュー日: 2006/03/24
投稿数: 475
お住まい・勤務地: お住まい:城・勤務地:城
投稿日時: 2009-03-08 10:44
引用:

未記入さんの書き込み (2009-03-07 21:37) より:

WEBで検索すると縦印字用のフォントを使い、印字するような事が書かれてましたが、できれば印字した箇所を座標xyで回転させたいのですが・・。パラメータでrotateと言うのがあり期待しているのですが(バーコードの下にも番号を記述している為)。


どの辺がわかりませんか?
rotate がわかっているのであれば、それについて調べてみるといいんじゃないでしょうか。
「pdflib rotate show_xy」で Google 検索してみたところ、以下のページが見つかりました(PHP ですけど)。

PHP: PDF_rotate - Manual
http://php.off.co.il/manual/ja/function.pdf-rotate.php

コード:
    pdf_rotate($pdf, 90); /* rotate coordinates */
    pdf_show_xy($pdf,"vertical text",300, -400);

    pdf_rotate($pdf, -90); /* rotate coordinates */;
    pdf_show_xy($pdf, "This is horizontal text",50, 400);


こんな感じで、一度座標系を回転して、縦書きをしてから元に戻せばいいんじゃないでしょうかねえ。
_________________
ぽぴ王子@わんくま同盟
ぽぴ王子の人生プログラミング中 / ぽぴンち。
未記入
大ベテラン
会議室デビュー日: 2008/07/11
投稿数: 182
投稿日時: 2009-03-08 22:13
ありがとうございます。

APIを見ていて、rotateがoption定義として存在していたので、show_xy()では、できないと、他のやり方があるのかと思ってしまいました。
rotate()メソッドありました。

C#の場合、
pdf.rotate(90);
pdf.show_xy();
//戻す
pdf.rotate(-90);

でできました。ありがとうございます。
1

スキルアップ/キャリアアップ(JOB@IT)