• ベストアンサー

C++Builder5で画像の結合

KoHalの回答

  • KoHal
  • ベストアンサー率60% (110/181)
回答No.3

No.2補足のソースコードはNo.1補足のトラブルが発生したソースコードですか? No.2補足のソースコードは取り立てて問題になる点はないようですが。 まぁ、 >map3->Canvas->StretchDraw( >TRect( map1->Width+10, 0, map1->Width + stretched_width, map1->Height ), map2); 2つの画像の間に10ピクセルのマージンをとりながらmap3の幅を補正してない、TRectの第3引数(map1->Width + stretched_width)を補正してない点が気になりますが。 これが原因で文字が崩れるのかな?

Simanohito
質問者

お礼

ご回答ありがとうございます。 No.2補足のソースコードはNo.1補足のトラブルが発生したソースコードですか? ⇒そうです。No2.の補足のソースコードはトラブルが発生したソースコードです。 ご指摘頂いた点を修正して確認しても同様の問題が発生しておりました・・・。 しかし、いろいろ試してみた結果以前は文字が表示された画像の方の幅を画像ファイルの幅に合わせていたのですが、文字が表示されている画像の幅を 固定にして行ったところ問題は解決しました。 とりあえずはこの方法で進めていくつもりです。 ありがとうございました。 いつも助けて頂き感謝しております。

関連するQ&A

  • C++Builderで

    C++Builderで画像処理をしたいと思っています。 画像の拡大・縮小を連続的に行いたいのですが、利用できるライブラリとかあるのでしょうか?それともライブラリとか使わなくても出来るのでしょうか? サンプルプログラムのあるところのURLでも、何でもいいので、教えて下さい。

  • C++ Builderについて

    以前から、C言語、C++などをやっていて、最近になって、C++Builder(Version 5.0)を使ってみようと思いました。すこしいじってみたのですが、さまざまなことを簡単にできそうな気がしました。しかしながら、正直なところ分からないことだらけです。ネット上で初心者向けの本を購入したのですが、内容は薄く、自分が目的とするものに達するには十分ではありませんでした。探し方が悪いのか、本もさほど見つかりませんでした・・・・。 また、様々なサイトも見てみたのですが、やはりC++Builderの初歩的な使い方もいまいち分かっていないせいか、わけがわかりません。一応、購入した本で勉強しているのですが・・・・。 できることなら、初歩的なことから、詳しく様々なことが分かり易く載っている本等は無いでしょうか?C言語のときは、ぶ厚い本で勉強しました。そのような本もたくさんあったように思われます。C++Builderには無いのでしょうか?それともCやC++などをみっちりやらなければ、使えないって事なのでしょうか?

  • C++ Builder6 をふたたび動かしたい

    数年前まで C++ Builder6を使ってコマンドラインプログラムを作っていました。 久しぶりに使おうとすると、以下のエラーメッセージがでて新規プログラムが作れません。再インストールをしても同じです。 C++ 5.5 がフリーで出ているようなんですが、元のプログラムが複数あって、Builderの環境で使いたいと思うのです。 すでにボーランド社はありません。 どのようにすれば解決できるのかわかれば教えてください。よろしくお願いします。 C:\Program Files\Borland\CBuilder6\bin\bcb.$$$ から C:\Program Files\Borland\CBuilder6\bin\bcb.droに変更できません。

  • C++Builderでの文字化け

    C++BuilderのRichEditを使ってその内容をテキスト形式で保存したいのですが、 実際に保存されたファイルをメモ帳で見ると改行が■になって表示されてしまいます。 そのデータの内容はプログラムで RichEdit1->Text = "ほにゃらか\n"; と書くと'\n'のところがだめです。

  • C++Builder

    卒業研究で昨日からC++Builderを使うようになったのですが、まったくわかりません。 「慣れれば普通にプログラム作るより簡単だ」と教官はいいいますが… それで昨日課題が出ました。 C++Builderでサイコロを作成し、クリックすれば数字が変わる用にしろ との事。 ずっとやってるのですが…ランダムに数字を表示するのってどうゆうの使うんですか? …もぅ初歩的な質問ですいません… 穴があったら入りたい…

  • 個人でC++Builderを始めるには?

    質問に答えていたただいた方々、本当にありがとうございました。いろいろ考えてみたところ、C++Builderをやってみようかと思っています。 そこで、C++BuilderはPC屋さんに売ってあるのかという事と(昨日行ったらなかったもので…)、いくらくらいするものかということをお聞きしたく質問させてもらってます。またよろしくお願いします。

  • C++Builderの選択

     いつも勉強させていただいています。どうぞよろしくお願いします。  今手元にあるアプリ(C++Builder5.0のソースコード付き)をいじりたく、 これを機会に初めてC++の勉強をしたいのですが(経験のある言語は Fortran、VBです)、C++Builderのどれを購入するかで迷っております。  ポイントとしましては、 ・上のC++Builder5.0のコードがコンパイル可能なもの  (先日、無料のBorland C++Compiler5.5をダウンロードしてコンパイルを試みても  できませんでしたorz (vcl.hというファイルが足りないようです)が、  C++Builderであればバージョン違いでもコンパイルできるのでしょうか?) ・書籍が比較的多いもの。(調べているとC++Builder6は比較的多そうな?気がしたのですが。。。) ・今後も暫く使えそうなもの。(C++Builder5 Personalとかかなり安いようなのですが、  皆さんもっと新しいもので開発なされているという事でしょうか。。。?) ・¥は7~8万くらいまで?  PersonalとProfessionalの違いや制限もよく分からないので、 もしお詳しい方がいらっしゃいましたら、ぜひ教えていただければと思います。  どうぞよろしくお願いします。

  • C# 画像ファイルの更新

    C#を始めて2ヶ月余りの者です。 環境はW.7 C#.NET 2013です。 現在、以前C-Builderで作成したプログラムをC#に変換して居ます。 画像マスターを変更する所で、コンパイル出来なく成り、困って居ます。 やりたい事は、画像マスターがあり、これを表示して、マスターを変更したければカメラから読み込んだ画像を画像マスターに書き込むと言うものです。 C-Builderの時はBMPの読み書きは自分で作成しましたが、C#では関数があるので今回はこれを利用しました。 内容を簡略的に下に記述しました。AAAが画像マスターでBBBがカメラからの画像の代わりです。 ここで bmpSource1.Save(sCurDir + "\\BBB.bmp"); を実行すると、「別のプロセスで使用されているため、プロセスは ファイル~にアクセスできません。」とのエラーが表示されます。 良く考えてみれば、Readでオープンしている所に書き込もうとして居るのでエラーに成って当たり前ですので、bmpSource1 = new Bitmap(sCurDir + "\\AAA.bmp");の後に画像を別の場所に保存し、bmpSource1.Dispose();としてみた所、上手く行きませんでした。これもDisposeするのはバッファーであり、ファイルでは無いから当たり前かも知れません。 ネットで色々探して居る時に、何かのパラメーターでReadWriteモードの所を見つけましたが、bmpSource1 = new Bitmap(sCurDir + "\\AAA.bmp");には指定するパラメーターが見当たりませんでした。 何方か、画像ファイルの更新方法がお分かりに成る方、ご教授下さい。 よろしくお願い致します。 String sCurDir = System.IO.Directory.GetCurrentDirectory(); Bitmap bmpSource1; Bitmap bmpSource2; public Form1() { InitializeComponent(); pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; bmpSource1 = new Bitmap(sCurDir + "\\AAA.bmp"); bmpSource2 = new Bitmap(sCurDir + "\\BBB.bmp"); pictureBox1.Image = bmpSource1; bmpSource2.Save(sCurDir + "\\AAA.bmp"); <-ここで実行時エラー }

  • C++ Builder XE

    C++ Builder XEでBitmapの上に文字を書こうとしていますが例えば bmp->Canvas->FillText(rect, "Are you?", false, 100, TFillTextFlags() << TFillTextFlag::RightToLeft, TTextAlign::Center, TTextAlign::Center); と書くと「Are you?」と表示されて欲しいのに「?Are you」と表示されてしまいます。 解決方法を知っているかたがいましたら教えてください。

  • C++ Builder6について

    c++ builder6でMemo1 などに入力した値をポインタに格納したいんですが、やり方がうまくいかず、いろいろ試してみても出来ません。どなたか方法を教えてくださいませんか?