none
ReportingService2005で作成したPDFのテキスト検索 RRS feed

  • 質問

  • はじめまして 初めて質問させて頂きます。

    環境
     VisualStudio2005
     ReportingService2005(SP3)

    早速質問ですが、現在VisualStudio2005でWebアプリ(VB)を作成しています。
    その中でReportingServiceで作成したPDF内のテキスト検索をする必要が出てきました。

    テキスト検索はABCpdfというソフトを使い、参照設定することでコーディング出来るのですが、
    作成されたPDFのテキストをコードで読み込んだときデバッグでみてみると、日本語と一部の
    英文字が文字化けしておりうまく検索できません。
    (PDFを開き、テキストをコピーしてメモ帳にペーストしても文字化けする)

    これを文字化けしない様にReportingService側で出来るのでしょうか?
    もしくは読み込み側で変換可能?

    MSゴシック、明朝のバージョンの違いはSP3をあてる事でクリアされておりますが、エンコー
    ディングの問題でしょうか?

    なにか解決策がありましたらよろしくお願いいたします。
    2009年4月8日 3:19

回答

  • 結局、英数字ならなんとか検索出来るので、検索したい文字を英数字にしてレポートに入れるようにしました。

    運用でカバーみたいな感じになりあまり満足はしていませんが、なんとか望みは実現できています。

    2009年5月4日 9:31

すべての返信

  • kamevalueさん、はじめまして。中川俊輔です。

    Acrobat Readerなどで開いたときには正常に表示されるけれど、文字列をコピー&ペーストすると文字化けするということでしょうか?
    だとするとPDFに埋め込まれたフォントがクライアントマシンにインストールされていないのではないでしょうか?
    PDF 出力のデザイン
    http://msdn.microsoft.com/ja-jp/library/ms159713(SQL.90).aspx

    SP3で埋め込みフォントがサポートされましたが、リーダーで表示できてもコピーした場合はクライアントに同じフォントが必要になると思います。
    SQL Server 2005 または SQL Server 2000 の Reporting Services で日本語レポートを PDF で出力すると文字化けする
    http://support.microsoft.com/kb/941074/ja


    使用しているソフトにフォントを変換する何らかの仕組みがないようでしたら、思いつく解決策はレポートで使用しているフォントをクライアントと共通にするか、
    クライアントに該当フォントをインストールするくらいでしょうか。
    はっきりしない回答でごめんなさい。。。それでは。

    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。
    コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。
    詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。

    マイクロソフト株式会社 フォーラム オペレータ 中川 俊輔
    2009年4月15日 10:18
  • 中川俊輔さん

    返信ありがとうございます。

    フォントはどう見てもサーバとクライアント一緒なんですよね。。 (MSゴシックでレビジョン同じ)
    試しにSP2のマシンで試してみたら、クライアント側でリーダーの表示は文字化けしないのに、
    (=サーバとクライアントのフォントが同じ)
    やはり文字列をコピー&ペーストすると文字化けしてしまいます。

    ReportExecutionServiceのRenderメソッドでPDF化しているのですが、今はそのあたりで
    エンコード指定して何か変化が無いか試しています。


    普通はコピー&ペーストでも文字化けしないものなんでしょうか?
    2009年4月20日 12:40
  • こんにちは。中川俊輔です。

    ちょっと試してみたのですが、確かにレポート作ったサーバーで開いてもコピー&ペーストで文字化けしますね。
    調べてみたら米国のフォーラムに下記のようなスレッドがありました。
    Reporting Services 2005 now rendering PDFs differently!
    http://social.msdn.microsoft.com/Forums/de-DE/sqlreportingservices/thread/eb867e23-726a-4dd5-b522-c69e562d6dc6

    どうやらSSRSのPDFレンダラーが、コピー&ペーストをうまくサポートできないPDFを生成するようです。
    このスレッドによるとバージョンをCU9より前に戻すことで解決したようですが、おそらくkamevalueさんに有用な解決策ではないですよね。。

    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。
    コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。
    詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。

    マイクロソフト株式会社 フォーラム オペレータ 中川 俊輔
    2009年4月23日 9:44
  • ReportingServiceを使っていないので化け具合がわかりませんが、
    Office 2007でサポートされたPDF出力機能においてもテキストをコピー&ペーストすると化けます。
    Microsoft社製品の出力するPDFは総じてそういうものなのかもしれません。

    ついでにフォントを埋め込まないPDFを作れないものかしらん。
    2009年4月23日 10:04
  • 結局、英数字ならなんとか検索出来るので、検索したい文字を英数字にしてレポートに入れるようにしました。

    運用でカバーみたいな感じになりあまり満足はしていませんが、なんとか望みは実現できています。

    2009年5月4日 9:31
  • 佐祐理さん、いつもお世話になっております。

    kamevalueさん、はじめまして、
    MSDNフォーラムのご利用ありがとうございます。

    完全な解決策ではなかったですが
    中川が投稿した内容が、多少なりとも参考になったと思うので、
    身内の投稿で恐縮ですが、回答候補を付けさせてもらいました。

    この問題に関しては、運用でカバーすることが出来るのであれば
    それが一番いいと私も思います。
    現段階ではその解決策が最善の策と思いましたので、
    kamevalueさんの投稿に回答マークを付けさせてもらいました。

    不適切な場合は回答マークを削除することも可能です。

    今後ともMSDNフォーラムをよろしくお願いします。


    マイクロソフト株式会社 フォーラム オペレータ 高橋春樹
    2009年6月9日 6:13